Re: [PATCH 2/4] iio: adc: ad7768-1: use device_* to iterate over device child nodes
From: Jonathan Cameron
Date: Sat Aug 03 2024 - 07:18:09 EST
On Thu, 01 Aug 2024 09:31:16 +0200
Nuno Sá <noname.nuno@xxxxxxxxx> wrote:
> On Thu, 2024-08-01 at 08:13 +0200, Javier Carrasco wrote:
> > Drop the manual access to the fwnode of the device to iterate over its
> > child nodes. `device_for_each_child_node` macro provides direct access
> > to the child nodes, and given that they are only required within the
> > loop, the scoped variant of the macro can be used.
> >
> > Use the `device_for_each_child_node_scoped` macro to iterate over the
> > direct child nodes of the device.
> >
> > Signed-off-by: Javier Carrasco <javier.carrasco.cruz@xxxxxxxxx>
> > ---
>
> Reviewed-by: Nuno Sa <nuno.sa@xxxxxxxxxx>
Applied
>
> > drivers/iio/adc/ad7768-1.c | 5 +----
> > 1 file changed, 1 insertion(+), 4 deletions(-)
> >
> > diff --git a/drivers/iio/adc/ad7768-1.c b/drivers/iio/adc/ad7768-1.c
> > index 70a25949142c..721672fe84ab 100644
> > --- a/drivers/iio/adc/ad7768-1.c
> > +++ b/drivers/iio/adc/ad7768-1.c
> > @@ -544,13 +544,10 @@ static int ad7768_set_channel_label(struct iio_dev
> > *indio_dev,
> > {
> > struct ad7768_state *st = iio_priv(indio_dev);
> > struct device *device = indio_dev->dev.parent;
> > - struct fwnode_handle *fwnode;
> > - struct fwnode_handle *child;
> > const char *label;
> > int crt_ch = 0;
> >
> > - fwnode = dev_fwnode(device);
> > - fwnode_for_each_child_node(fwnode, child) {
> > + device_for_each_child_node_scoped(device, child) {
> > if (fwnode_property_read_u32(child, "reg", &crt_ch))
> > continue;
> >
> >
>