Re: linux-next: Tree for Jun 27 (pinctrl && !CONFIG_OF)

From: Arnd Bergmann
Date: Mon Jun 27 2016 - 17:34:33 EST


On Monday, June 27, 2016 11:15:25 AM CEST Randy Dunlap wrote:
> On 06/26/16 23:39, Stephen Rothwell wrote:
> > Hi all,
> >
> > Changes since 20160624:
> >
>
> on i386, when CONFIG_OF is not enabled ...
> but OF_GPIO is enabled due to this in drivers/gpio/Kconfig:
>
> config OF_GPIO
> def_bool y
> depends on OF || COMPILE_TEST
>
> (above from commit 1e4a80640338924b9f9fd7a121ac31d08134410a
> from Alexander Stein <alexanders83@xxxxxx>)
>
>
> ../drivers/pinctrl/bcm/pinctrl-iproc-gpio.c:381:20: error: 'pinconf_generic_dt_node_to_map_pin' undeclared here (not in a function)
> ../drivers/pinctrl/bcm/pinctrl-cygnus-mux.c:739:20: error: 'pinconf_generic_dt_node_to_map_group' undeclared here (not in a function)
> ../drivers/pinctrl/bcm/pinctrl-nsp-gpio.c:365:20: error: 'pinconf_generic_dt_node_to_map_pin' undeclared here (not in a function)
>
> because that function is only present when CONFIG_OF is enabled.
>
>
> Also, why does that commit (1e4a80640338924b9f9fd7a121ac31d08134410a)
> not have any other S-O-B lines in it? like whoever merged it?

(adding Linus Walleij and Alexander Stein to Cc)

Unfortunately, the changelog also doesn't say what triggered that
change. I guess there was a driver that did 'select OF_GPIO'
and had a dependency on COMPILE_TEST, though I don't see any
driver doing that in linux-next.

I think the commit should just be reverted, it clearly breaks
stuff, and whatever needs it can be fixed in a better way.

Specifically, we have three ways that the OF_GPIO symbol
is used:

a) it is implicitly enabled when both GPIOLIB and OF are turned on
b) some drivers 'depends on OF_GPIO'
c) some other drivers 'select OF_GPIO'

The combination of b) and c) can easily lead to circular dependencies,
and is also confusing. It would be better to change all of those
to 'depends on'.

Arnd