Re: [PATCH v4] gpiolib: Bind gpio_device to a driver to enable fw_devlink=on by default

From: Linus Walleij
Date: Fri Jan 22 2021 - 08:10:00 EST


On Fri, Jan 22, 2021 at 10:55 AM Andy Shevchenko
<andy.shevchenko@xxxxxxxxx> wrote:
> On Fri, Jan 22, 2021 at 12:40 AM Saravana Kannan <saravanak@xxxxxxxxxx> wrote:

> > @@ -596,6 +596,7 @@ int gpiochip_add_data_with_key(struct gpio_chip *gc, void *data,
> > gdev->dev.of_node = gc->of_node;
> > else
> > gc->of_node = gdev->dev.of_node;
> > + gdev->dev.fwnode = of_fwnode_handle(gdev->dev.of_node);
>
> This looks like a complete breakage on ACPI enabled systems.

This looks broken to me too, if OF functions are compiled out
this happens:

include/linux/of.h:#define of_fwnode_handle(node) NULL

And if there is a valid fwnode in the device it gets overwritten
with NULL.

This is partly why I want the DT code to be in its own file.

Yours,
Linus Walleij