[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <13b3d55d-29ac-1efa-fcf2-f3b7661ba199@nvidia.com>
Date: Thu, 17 Nov 2022 19:45:44 +0000
From: Jon Hunter <jonathanh@...dia.com>
To: Wayne Chang <waynec@...dia.com>, gregkh@...uxfoundation.org,
robh+dt@...nel.org, krzysztof.kozlowski+dt@...aro.org,
treding@...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: 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: Re: [PATCH v3 06/13] usb: typec: ucsi_ccg: Add cypress,firmware-build
as a well-known regex
On 14/11/2022 12:40, Wayne Chang wrote:
> 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");
> + }
> +
Instead of having the 'else' clause above, we should just ...
if (!uc->fw_build)
dev_err(uc->dev, "failed to get FW build information\n");
It is possible that status == 0, but the fw_build is not
recognised/supported and so 'uc->fw_build' is not set.
Jon
--
nvpublic
Powered by blists - more mailing lists