* [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP
@ 2014-04-28 9:07 Arnd Bergmann
2014-04-28 23:59 ` Javier Martinez Canillas
2014-05-09 7:48 ` Linus Walleij
0 siblings, 2 replies; 7+ messages in thread
From: Arnd Bergmann @ 2014-04-28 9:07 UTC (permalink / raw)
To: linux-arm-kernel
Commit 4df42de9d3e "gpio: omap: add a GPIO_OMAP option instead of using
ARCH_OMAP" made it possible to build OMAP kernels without the GPIO driver,
which at least on OMAP2 and OMAP3 causes build errors because of functions
used by the platform power management code:
arch/arm/mach-omap2/built-in.o: In function `omap_sram_idle':
arch/arm/mach-omap2/pm24xx.c:129: undefined reference to `omap2_gpio_prepare_for_idle'
arch/arm/mach-omap2/pm24xx.c:129: undefined reference to `omap2_gpio_resume_after_idle'
We presumably always want the GPIO driver on OMAP, so this adds a slightly
broader dependency and only allows disabling the driver only when no
OMAP2PLUS platform is selected.
However, it seems entirely reasonable to include the driver in build tests
on other platforms, so we should also allow building it for COMPILE_TEST
builds and select the required GENERIC_IRQ_CHIP that may not already be
enabled on other platforms.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index c58b828..c8c42be 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -244,9 +244,10 @@ config GPIO_OCTEON
family of SOCs.
config GPIO_OMAP
- bool "TI OMAP GPIO support"
+ bool "TI OMAP GPIO support" if COMPILE_TEST && !ARCH_OMAP2PLUS
default y if ARCH_OMAP
- depends on ARM && ARCH_OMAP
+ depends on ARM
+ select GENERIC_IRQ_CHIP
select GPIOLIB_IRQCHIP
help
Say yes here to enable GPIO support for TI OMAP SoCs.
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP
2014-04-28 9:07 [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP Arnd Bergmann
@ 2014-04-28 23:59 ` Javier Martinez Canillas
2014-04-29 10:26 ` Arnd Bergmann
2014-05-09 7:48 ` Linus Walleij
1 sibling, 1 reply; 7+ messages in thread
From: Javier Martinez Canillas @ 2014-04-28 23:59 UTC (permalink / raw)
To: linux-arm-kernel
Hello Arnd,
Thanks a lot for the patch.
On 04/28/2014 11:07 AM, Arnd Bergmann wrote:
> Commit 4df42de9d3e "gpio: omap: add a GPIO_OMAP option instead of using
> ARCH_OMAP" made it possible to build OMAP kernels without the GPIO driver,
> which at least on OMAP2 and OMAP3 causes build errors because of functions
> used by the platform power management code:
>
> arch/arm/mach-omap2/built-in.o: In function `omap_sram_idle':
> arch/arm/mach-omap2/pm24xx.c:129: undefined reference to `omap2_gpio_prepare_for_idle'
> arch/arm/mach-omap2/pm24xx.c:129: undefined reference to `omap2_gpio_resume_after_idle'
>
> We presumably always want the GPIO driver on OMAP, so this adds a slightly
> broader dependency and only allows disabling the driver only when no
> OMAP2PLUS platform is selected.
>
This driver is also used by OMAP1. Even when disabling GPIO_OMAP on that
platform doesn't cause a build error since no function defined in the driver is
used directly by platform code, I think that we always want this driver on OMAP1
too.
> However, it seems entirely reasonable to include the driver in build tests
> on other platforms, so we should also allow building it for COMPILE_TEST
> builds and select the required GENERIC_IRQ_CHIP that may not already be
> enabled on other platforms.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>
> diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
> index c58b828..c8c42be 100644
> --- a/drivers/gpio/Kconfig
> +++ b/drivers/gpio/Kconfig
> @@ -244,9 +244,10 @@ config GPIO_OCTEON
> family of SOCs.
>
> config GPIO_OMAP
> - bool "TI OMAP GPIO support"
> + bool "TI OMAP GPIO support" if COMPILE_TEST && !ARCH_OMAP2PLUS
So this should be:
+ bool "TI OMAP GPIO support" if COMPILE_TEST && !ARCH_OMAP2PLUS &&
!ARCH_OMAP1
> default y if ARCH_OMAP
> - depends on ARM && ARCH_OMAP
> + depends on ARM
> + select GENERIC_IRQ_CHIP
> select GPIOLIB_IRQCHIP
> help
> Say yes here to enable GPIO support for TI OMAP SoCs.
>
With that change:
Acked-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Best regards,
Javier
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP
2014-04-28 23:59 ` Javier Martinez Canillas
@ 2014-04-29 10:26 ` Arnd Bergmann
2014-04-29 10:53 ` Javier Martinez Canillas
0 siblings, 1 reply; 7+ messages in thread
From: Arnd Bergmann @ 2014-04-29 10:26 UTC (permalink / raw)
To: linux-arm-kernel
On Tuesday 29 April 2014 01:59:20 Javier Martinez Canillas wrote:
> This driver is also used by OMAP1. Even when disabling GPIO_OMAP on that
> platform doesn't cause a build error since no function defined in the driver is
> used directly by platform code, I think that we always want this driver on OMAP1
> too.
>
> > However, it seems entirely reasonable to include the driver in build tests
> > on other platforms, so we should also allow building it for COMPILE_TEST
> > builds and select the required GENERIC_IRQ_CHIP that may not already be
> > enabled on other platforms.
> >
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> >
> > diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
> > index c58b828..c8c42be 100644
> > --- a/drivers/gpio/Kconfig
> > +++ b/drivers/gpio/Kconfig
> > @@ -244,9 +244,10 @@ config GPIO_OCTEON
> > family of SOCs.
> >
> > config GPIO_OMAP
> > - bool "TI OMAP GPIO support"
> > + bool "TI OMAP GPIO support" if COMPILE_TEST && !ARCH_OMAP2PLUS
>
> So this should be:
>
> + bool "TI OMAP GPIO support" if COMPILE_TEST && !ARCH_OMAP2PLUS &&
> !ARCH_OMAP1
>
Well, if COMPILE_TEST is disabled on OMAP1, the option is already
hidden and enabled in my version. It seems reasonable to me to
allow compile-testing OMAP1 without the GPIO driver, while a kernel
running on OMAP1 should always have COMPILE_TEST disabled.
Arnd
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP
2014-04-29 10:26 ` Arnd Bergmann
@ 2014-04-29 10:53 ` Javier Martinez Canillas
2014-04-29 12:07 ` Arnd Bergmann
0 siblings, 1 reply; 7+ messages in thread
From: Javier Martinez Canillas @ 2014-04-29 10:53 UTC (permalink / raw)
To: linux-arm-kernel
Hello Arnd,
On 04/29/2014 12:26 PM, Arnd Bergmann wrote:
> On Tuesday 29 April 2014 01:59:20 Javier Martinez Canillas wrote:
>> This driver is also used by OMAP1. Even when disabling GPIO_OMAP on that
>> platform doesn't cause a build error since no function defined in the driver is
>> used directly by platform code, I think that we always want this driver on OMAP1
>> too.
>>
>> > However, it seems entirely reasonable to include the driver in build tests
>> > on other platforms, so we should also allow building it for COMPILE_TEST
>> > builds and select the required GENERIC_IRQ_CHIP that may not already be
>> > enabled on other platforms.
>> >
>> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>> >
>> > diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
>> > index c58b828..c8c42be 100644
>> > --- a/drivers/gpio/Kconfig
>> > +++ b/drivers/gpio/Kconfig
>> > @@ -244,9 +244,10 @@ config GPIO_OCTEON
>> > family of SOCs.
>> >
>> > config GPIO_OMAP
>> > - bool "TI OMAP GPIO support"
>> > + bool "TI OMAP GPIO support" if COMPILE_TEST && !ARCH_OMAP2PLUS
>>
>> So this should be:
>>
>> + bool "TI OMAP GPIO support" if COMPILE_TEST && !ARCH_OMAP2PLUS &&
>> !ARCH_OMAP1
>>
>
> Well, if COMPILE_TEST is disabled on OMAP1, the option is already
> hidden and enabled in my version. It seems reasonable to me to
> allow compile-testing OMAP1 without the GPIO driver, while a kernel
> running on OMAP1 should always have COMPILE_TEST disabled.
>
> Arnd
>
I understand your point. I thought you also wanted to be sure that the option
will be hidden in platforms where it make sense to always enable GPIO_OMAP even
if COMPILE_TEST is enabled.
If the idea of this patch is to only avoid build errors when GPIO_OMAP is
disabled and allowing build testing the driver in other platforms, then I'm ok
with your patch and feel free to add my Acked-by tag.
And you are right that COMPILE_TEST is disabled in omap1_defconfig and after all
there are so many drivers needed for a platform to be usable on boot. So one has
to take care of enabling all the needed options as long as there isn't a
combination that cause a build error like the one you are fixing here.
Thanks a lot and best regards,
Javier
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP
2014-04-29 10:53 ` Javier Martinez Canillas
@ 2014-04-29 12:07 ` Arnd Bergmann
0 siblings, 0 replies; 7+ messages in thread
From: Arnd Bergmann @ 2014-04-29 12:07 UTC (permalink / raw)
To: linux-arm-kernel
On Tuesday 29 April 2014 12:53:45 Javier Martinez Canillas wrote:
> Hello Arnd,
>
> On 04/29/2014 12:26 PM, Arnd Bergmann wrote:
> > On Tuesday 29 April 2014 01:59:20 Javier Martinez Canillas wrote:
> >> This driver is also used by OMAP1. Even when disabling GPIO_OMAP on that
> >> platform doesn't cause a build error since no function defined in the driver is
> >> used directly by platform code, I think that we always want this driver on OMAP1
> >> too.
> >>
> >> > However, it seems entirely reasonable to include the driver in build tests
> >> > on other platforms, so we should also allow building it for COMPILE_TEST
> >> > builds and select the required GENERIC_IRQ_CHIP that may not already be
> >> > enabled on other platforms.
> >> >
> >> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> >> >
> >> > diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
> >> > index c58b828..c8c42be 100644
> >> > --- a/drivers/gpio/Kconfig
> >> > +++ b/drivers/gpio/Kconfig
> >> > @@ -244,9 +244,10 @@ config GPIO_OCTEON
> >> > family of SOCs.
> >> >
> >> > config GPIO_OMAP
> >> > - bool "TI OMAP GPIO support"
> >> > + bool "TI OMAP GPIO support" if COMPILE_TEST && !ARCH_OMAP2PLUS
> >>
> >> So this should be:
> >>
> >> + bool "TI OMAP GPIO support" if COMPILE_TEST && !ARCH_OMAP2PLUS &&
> >> !ARCH_OMAP1
> >>
> >
> > Well, if COMPILE_TEST is disabled on OMAP1, the option is already
> > hidden and enabled in my version. It seems reasonable to me to
> > allow compile-testing OMAP1 without the GPIO driver, while a kernel
> > running on OMAP1 should always have COMPILE_TEST disabled.
> >
>
> I understand your point. I thought you also wanted to be sure that the option
> will be hidden in platforms where it make sense to always enable GPIO_OMAP even
> if COMPILE_TEST is enabled.
I thought about that, but didn't want to enforce it without a good reason
when your original patch had just made it possible to disable the option.
> If the idea of this patch is to only avoid build errors when GPIO_OMAP is
> disabled and allowing build testing the driver in other platforms, then I'm ok
> with your patch and feel free to add my Acked-by tag.
Ok, thanks!
> And you are right that COMPILE_TEST is disabled in omap1_defconfig and after all
> there are so many drivers needed for a platform to be usable on boot. So one has
> to take care of enabling all the needed options as long as there isn't a
> combination that cause a build error like the one you are fixing here.
Ok
Arnd
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP
2014-04-28 9:07 [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP Arnd Bergmann
2014-04-28 23:59 ` Javier Martinez Canillas
@ 2014-05-09 7:48 ` Linus Walleij
2014-05-09 8:48 ` Arnd Bergmann
1 sibling, 1 reply; 7+ messages in thread
From: Linus Walleij @ 2014-05-09 7:48 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Apr 28, 2014 at 11:07 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> Commit 4df42de9d3e "gpio: omap: add a GPIO_OMAP option instead of using
> ARCH_OMAP" made it possible to build OMAP kernels without the GPIO driver,
> which at least on OMAP2 and OMAP3 causes build errors because of functions
> used by the platform power management code:
>
> arch/arm/mach-omap2/built-in.o: In function `omap_sram_idle':
> arch/arm/mach-omap2/pm24xx.c:129: undefined reference to `omap2_gpio_prepare_for_idle'
> arch/arm/mach-omap2/pm24xx.c:129: undefined reference to `omap2_gpio_resume_after_idle'
>
> We presumably always want the GPIO driver on OMAP, so this adds a slightly
> broader dependency and only allows disabling the driver only when no
> OMAP2PLUS platform is selected.
>
> However, it seems entirely reasonable to include the driver in build tests
> on other platforms, so we should also allow building it for COMPILE_TEST
> builds and select the required GENERIC_IRQ_CHIP that may not already be
> enabled on other platforms.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Patch applied to my devel branch, this is not a fix to Torvalds HEAD
AFAICT, but a fix to v3.16? Else poke me.
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP
2014-05-09 7:48 ` Linus Walleij
@ 2014-05-09 8:48 ` Arnd Bergmann
0 siblings, 0 replies; 7+ messages in thread
From: Arnd Bergmann @ 2014-05-09 8:48 UTC (permalink / raw)
To: linux-arm-kernel
On Friday 09 May 2014 09:48:00 Linus Walleij wrote:
> On Mon, Apr 28, 2014 at 11:07 AM, Arnd Bergmann <arnd@arndb.de> wrote:
>
> > Commit 4df42de9d3e "gpio: omap: add a GPIO_OMAP option instead of using
> > ARCH_OMAP" made it possible to build OMAP kernels without the GPIO driver,
> > which at least on OMAP2 and OMAP3 causes build errors because of functions
> > used by the platform power management code:
> >
> > arch/arm/mach-omap2/built-in.o: In function `omap_sram_idle':
> > arch/arm/mach-omap2/pm24xx.c:129: undefined reference to `omap2_gpio_prepare_for_idle'
> > arch/arm/mach-omap2/pm24xx.c:129: undefined reference to `omap2_gpio_resume_after_idle'
> >
> > We presumably always want the GPIO driver on OMAP, so this adds a slightly
> > broader dependency and only allows disabling the driver only when no
> > OMAP2PLUS platform is selected.
> >
> > However, it seems entirely reasonable to include the driver in build tests
> > on other platforms, so we should also allow building it for COMPILE_TEST
> > builds and select the required GENERIC_IRQ_CHIP that may not already be
> > enabled on other platforms.
> >
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>
> Patch applied to my devel branch, this is not a fix to Torvalds HEAD
> AFAICT, but a fix to v3.16? Else poke me.
Yes, 3.16 is ok.
Arnd
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-05-09 8:48 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-28 9:07 [PATCH] gpio: always enable GPIO_OMAP on ARCH_OMAP Arnd Bergmann
2014-04-28 23:59 ` Javier Martinez Canillas
2014-04-29 10:26 ` Arnd Bergmann
2014-04-29 10:53 ` Javier Martinez Canillas
2014-04-29 12:07 ` Arnd Bergmann
2014-05-09 7:48 ` Linus Walleij
2014-05-09 8:48 ` Arnd Bergmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).