[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20221114124053.1873316-7-waynec@nvidia.com>
Date: Mon, 14 Nov 2022 20:40:46 +0800
From: Wayne Chang <waynec@...dia.com>
To: <gregkh@...uxfoundation.org>, <robh+dt@...nel.org>,
<krzysztof.kozlowski+dt@...aro.org>, <treding@...dia.com>,
<jonathanh@...dia.com>, <thierry.reding@...il.com>,
<heikki.krogerus@...ux.intel.com>, <ajayg@...dia.com>,
<vkoul@...nel.org>, <p.zabel@...gutronix.de>, <balbi@...nel.org>,
<mathias.nyman@...el.com>, <jckuo@...dia.com>
CC: <waynec@...dia.com>, <linux-usb@...r.kernel.org>,
<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<singhanc@...dia.com>, <linux-i2c@...r.kernel.org>,
<linux-phy@...ts.infradead.org>, <linux-tegra@...r.kernel.org>
Subject: [PATCH v3 06/13] usb: typec: ucsi_ccg: Add cypress,firmware-build as a well-known regex
ccgx is refer to the cypress cypd4226 typec controller.
add cypress,firmware-build as a well-known regex.
16-bit value is not sufficient for descriptiva names.
Using string instead of u16 to make it more descriptive.
Signed-off-by: Wayne Chang <waynec@...dia.com>
---
V2 -> V3:nothing has changed
V1 -> V2:new change added for adding cypress,firmware-build
drivers/usb/typec/ucsi/ucsi_ccg.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/usb/typec/ucsi/ucsi_ccg.c b/drivers/usb/typec/ucsi/ucsi_ccg.c
index 139707a2f3d6..e412a457bbfc 100644
--- a/drivers/usb/typec/ucsi/ucsi_ccg.c
+++ b/drivers/usb/typec/ucsi/ucsi_ccg.c
@@ -1343,6 +1343,7 @@ static int ucsi_ccg_probe(struct i2c_client *client,
{
struct device *dev = &client->dev;
struct ucsi_ccg *uc;
+ const char *of_fw_build;
int status;
uc = devm_kzalloc(dev, sizeof(*uc), GFP_KERNEL);
@@ -1363,6 +1364,17 @@ static int ucsi_ccg_probe(struct i2c_client *client,
if (status)
dev_err(uc->dev, "failed to get FW build information\n");
+ status = device_property_read_string(dev, "cypress,firmware-build",
+ &of_fw_build);
+ if (!status) {
+ if (!strcmp(of_fw_build, "nvidia,jetson-agx-xavier"))
+ uc->fw_build = CCG_FW_BUILD_NVIDIA_TEGRA;
+ else if (!strcmp(of_fw_build, "nvidia,gpu"))
+ uc->fw_build = CCG_FW_BUILD_NVIDIA;
+ } else {
+ dev_err(uc->dev, "failed to get FW build information\n");
+ }
+
/* reset ccg device and initialize ucsi */
status = ucsi_ccg_init(uc);
if (status < 0) {
--
2.25.1
Powered by blists - more mailing lists