lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 14 Apr 2022 09:17:22 +0200
From:   Nuno Sá <noname.nuno@...il.com>
To:     Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
        Jonathan Cameron <Jonathan.Cameron@...wei.com>,
        linux-iio@...r.kernel.org, linux-kernel@...r.kernel.org
Cc:     Jonathan Cameron <jic23@...nel.org>,
        Lars-Peter Clausen <lars@...afoo.de>
Subject: Re: [PATCH v1 1/1] iio: core: Convert to use firmware node handle
 instead of OF node

On Wed, 2022-04-13 at 21:02 +0300, Andy Shevchenko wrote:
> Switch the IIO core to use firmware node handle instead of OF node.
> This will allow to get label from firmware on non-OF systems.
> 
> Note, this doesn't change of_iio_*() APIs for now.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
> ---
>  drivers/iio/industrialio-core.c | 16 +++++++++-------
>  1 file changed, 9 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/iio/industrialio-core.c
> b/drivers/iio/industrialio-core.c
> index 2f48e9a97274..ffbe76806e07 100644
> --- a/drivers/iio/industrialio-core.c
> +++ b/drivers/iio/industrialio-core.c
> @@ -1893,20 +1893,22 @@ static const struct iio_buffer_setup_ops
> noop_ring_setup_ops;
>  int __iio_device_register(struct iio_dev *indio_dev, struct module
> *this_mod)
>  {
>         struct iio_dev_opaque *iio_dev_opaque =
> to_iio_dev_opaque(indio_dev);
> -       const char *label;
> +       struct fwnode_handle *fwnode;
>         int ret;
>  
>         if (!indio_dev->info)
>                 return -EINVAL;
>  
>         iio_dev_opaque->driver_module = this_mod;
> -       /* If the calling driver did not initialize of_node, do it
> here */
> -       if (!indio_dev->dev.of_node && indio_dev->dev.parent)
> -               indio_dev->dev.of_node = indio_dev->dev.parent-
> >of_node;
>  
> -       label = of_get_property(indio_dev->dev.of_node, "label",
> NULL);
> -       if (label)
> -               indio_dev->label = label;
> +       /* If the calling driver did not initialize firmware node, do
> it here */
> +       if (dev_fwnode(&indio_dev->dev))
> +               fwnode = dev_fwnode(&indio_dev->dev);
> +       else
> +               fwnode = dev_fwnode(indio_dev->dev.parent);
> +       device_set_node(&indio_dev->dev, fwnode);
> +
> +       fwnode_property_read_string(fwnode, "label", &indio_dev-
> >label);
>  
>         ret = iio_check_unique_scan_index(indio_dev);
>         if (ret < 0)

Hi Andy,

So I was actually planning to send the same patch today or in the next
few days. I do also have the conversion of inkern.c so I guess we can
move in 3 different ways:

1. If you are planning or already have some work with it, I'm more than
fine in just forgetting my patches and let you do it (you are cleaning
all the drivers already)

2. I can send the patch (without this one) already for reviewing... It
won't apply because I think there will be some conflicts with some of
the drivers you changed already. Fun fact, remove of.h from iio.h and
you see some drivers relying on it for property.h and mod_devicetable.h

3. Just wait for your latest patches to be merged and send mine next
week.

Up to you :)

- Nuno Sá


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ