2022-11-18 19:26:25

by Andy Shevchenko

[permalink] [raw]
Subject: [PATCH v1 1/4] media: ipu3-cio2: Don't dereference fwnode handle

Use acpi_fwnode_handle() instead of dereferencing an fwnode handle directly,
which is a better coding practice.

Signed-off-by: Andy Shevchenko <[email protected]>
---
drivers/media/pci/intel/ipu3/cio2-bridge.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/media/pci/intel/ipu3/cio2-bridge.c b/drivers/media/pci/intel/ipu3/cio2-bridge.c
index df6c94da2f6a..18974a72e94a 100644
--- a/drivers/media/pci/intel/ipu3/cio2-bridge.c
+++ b/drivers/media/pci/intel/ipu3/cio2-bridge.c
@@ -263,7 +263,7 @@ static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
struct cio2_bridge *bridge,
struct pci_dev *cio2)
{
- struct fwnode_handle *fwnode;
+ struct fwnode_handle *fwnode, *primary;
struct cio2_sensor *sensor;
struct acpi_device *adev;
acpi_status status;
@@ -322,7 +322,9 @@ static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
}

sensor->adev = acpi_dev_get(adev);
- adev->fwnode.secondary = fwnode;
+
+ primary = acpi_fwnode_handle(adev);
+ primary->secondary = fwnode;

cio2_bridge_instantiate_vcm_i2c_client(sensor);

--
2.35.1



2022-11-21 10:09:57

by Heikki Krogerus

[permalink] [raw]
Subject: Re: [PATCH v1 1/4] media: ipu3-cio2: Don't dereference fwnode handle

On Fri, Nov 18, 2022 at 08:56:14PM +0200, Andy Shevchenko wrote:
> Use acpi_fwnode_handle() instead of dereferencing an fwnode handle directly,
> which is a better coding practice.
>
> Signed-off-by: Andy Shevchenko <[email protected]>
> ---
> drivers/media/pci/intel/ipu3/cio2-bridge.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/pci/intel/ipu3/cio2-bridge.c b/drivers/media/pci/intel/ipu3/cio2-bridge.c
> index df6c94da2f6a..18974a72e94a 100644
> --- a/drivers/media/pci/intel/ipu3/cio2-bridge.c
> +++ b/drivers/media/pci/intel/ipu3/cio2-bridge.c
> @@ -263,7 +263,7 @@ static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
> struct cio2_bridge *bridge,
> struct pci_dev *cio2)
> {
> - struct fwnode_handle *fwnode;
> + struct fwnode_handle *fwnode, *primary;
> struct cio2_sensor *sensor;
> struct acpi_device *adev;
> acpi_status status;
> @@ -322,7 +322,9 @@ static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
> }
>
> sensor->adev = acpi_dev_get(adev);
> - adev->fwnode.secondary = fwnode;
> +
> + primary = acpi_fwnode_handle(adev);
> + primary->secondary = fwnode;
>
> cio2_bridge_instantiate_vcm_i2c_client(sensor);
>

This and also the others look good to me. FWIW, for the series:

Acked-by: Heikki Krogerus <[email protected]>

thanks,

--
heikki

2022-11-21 10:14:09

by Dan Scally

[permalink] [raw]
Subject: Re: [PATCH v1 1/4] media: ipu3-cio2: Don't dereference fwnode handle

Hi Andy, sorry for the delay

On 18/11/2022 18:56, Andy Shevchenko wrote:
> Use acpi_fwnode_handle() instead of dereferencing an fwnode handle directly,
> which is a better coding practice.
>
> Signed-off-by: Andy Shevchenko <[email protected]>
> ---
> drivers/media/pci/intel/ipu3/cio2-bridge.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/pci/intel/ipu3/cio2-bridge.c b/drivers/media/pci/intel/ipu3/cio2-bridge.c
> index df6c94da2f6a..18974a72e94a 100644
> --- a/drivers/media/pci/intel/ipu3/cio2-bridge.c
> +++ b/drivers/media/pci/intel/ipu3/cio2-bridge.c
> @@ -263,7 +263,7 @@ static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
> struct cio2_bridge *bridge,
> struct pci_dev *cio2)
> {
> - struct fwnode_handle *fwnode;
> + struct fwnode_handle *fwnode, *primary;
> struct cio2_sensor *sensor;
> struct acpi_device *adev;
> acpi_status status;
> @@ -322,7 +322,9 @@ static int cio2_bridge_connect_sensor(const struct cio2_sensor_config *cfg,
> }
>
> sensor->adev = acpi_dev_get(adev);
> - adev->fwnode.secondary = fwnode;
> +
> + primary = acpi_fwnode_handle(adev);
> + primary->secondary = fwnode;
>
> cio2_bridge_instantiate_vcm_i2c_client(sensor);
>


LGTM: Reviewed-by: Daniel Scally <[email protected]>