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

From: Arnd Bergmann <[email-masked]>
Date: Mon, 27 Jun 2016 23:36:29 +0200

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 <[email-masked]>)
> 
> 
> ../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