linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* arm64 defconfig breakage (gpio) in next-20130218
@ 2013-02-18 11:14 Mark Rutland
  2013-02-21  9:31 ` Shawn Guo
  0 siblings, 1 reply; 10+ messages in thread
From: Mark Rutland @ 2013-02-18 11:14 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

When I attempt to build a defconfig arm64 kernel from next-20130218, it fails
with the following complaints from gcc:

In file included from include/linux/gpio.h:48:0,
                 from drivers/gpio/devres.c:18:
include/asm-generic/gpio.h: In function ?gpio_get_value_cansleep?:
include/asm-generic/gpio.h:270:2: error: implicit declaration of function ?__gpio_get_value? [-Werror=implicit-function-declaration]
include/asm-generic/gpio.h: In function ?gpio_set_value_cansleep?:
include/asm-generic/gpio.h:276:2: error: implicit declaration of function ?__gpio_set_value? [-Werror=implicit-function-declaration]
In file included from drivers/gpio/devres.c:18:0:
include/linux/gpio.h: At top level:
include/linux/gpio.h:60:19: error: redefinition of ?gpio_cansleep?
In file included from include/linux/gpio.h:48:0,
                 from drivers/gpio/devres.c:18:
include/asm-generic/gpio.h:262:19: note: previous definition of ?gpio_cansleep? was here
In file included from drivers/gpio/devres.c:18:0:
include/linux/gpio.h: In function ?gpio_cansleep?:
include/linux/gpio.h:62:2: error: implicit declaration of function ?__gpio_cansleep? [-Werror=implicit-function-declaration]
include/linux/gpio.h: In function ?gpio_to_irq?:
include/linux/gpio.h:67:2: error: implicit declaration of function ?__gpio_to_irq? [-Werror=implicit-function-declaration]
drivers/gpio/devres.c: In function ?devm_gpio_release?:
drivers/gpio/devres.c:26:2: error: implicit declaration of function ?gpio_free? [-Werror=implicit-function-declaration]
drivers/gpio/devres.c: In function ?devm_gpio_request?:
drivers/gpio/devres.c:60:2: error: implicit declaration of function ?gpio_request? [-Werror=implicit-function-declaration]
drivers/gpio/devres.c: In function ?devm_gpio_request_one?:
drivers/gpio/devres.c:90:2: error: implicit declaration of function ?gpio_request_one? [-Werror=implicit-function-declaration]
cc1: some warnings being treated as errors
make[2]: *** [drivers/gpio/devres.o] Error 1
make[1]: *** [drivers/gpio] Error 2

I've bisected this down to 0fa2fd9a0d: "Merge branch 'linusw/devel' of
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git into
gpio/next". Both parent commits build fine.

I've played around a bit, and selecting ARCH_REQUIRE_GPIOLIB in the arm64
Kconfig fixes the issue, but I'm unfamilar with gpio{,lib} and I'm not sure
that's the best/correct way of solving this.

Thoughts?

Thanks,
Mark.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* arm64 defconfig breakage (gpio) in next-20130218
  2013-02-18 11:14 arm64 defconfig breakage (gpio) in next-20130218 Mark Rutland
@ 2013-02-21  9:31 ` Shawn Guo
  2013-02-21 10:02   ` Arnd Bergmann
  0 siblings, 1 reply; 10+ messages in thread
From: Shawn Guo @ 2013-02-21  9:31 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Feb 18, 2013 at 11:14:10AM +0000, Mark Rutland wrote:
> Hello,
> 
> When I attempt to build a defconfig arm64 kernel from next-20130218, it fails
> with the following complaints from gcc:
> 
> In file included from include/linux/gpio.h:48:0,
>                  from drivers/gpio/devres.c:18:
> include/asm-generic/gpio.h: In function ?gpio_get_value_cansleep?:
> include/asm-generic/gpio.h:270:2: error: implicit declaration of function ?__gpio_get_value? [-Werror=implicit-function-declaration]
> include/asm-generic/gpio.h: In function ?gpio_set_value_cansleep?:
> include/asm-generic/gpio.h:276:2: error: implicit declaration of function ?__gpio_set_value? [-Werror=implicit-function-declaration]
> In file included from drivers/gpio/devres.c:18:0:
> include/linux/gpio.h: At top level:
> include/linux/gpio.h:60:19: error: redefinition of ?gpio_cansleep?
> In file included from include/linux/gpio.h:48:0,
>                  from drivers/gpio/devres.c:18:
> include/asm-generic/gpio.h:262:19: note: previous definition of ?gpio_cansleep? was here
> In file included from drivers/gpio/devres.c:18:0:
> include/linux/gpio.h: In function ?gpio_cansleep?:
> include/linux/gpio.h:62:2: error: implicit declaration of function ?__gpio_cansleep? [-Werror=implicit-function-declaration]
> include/linux/gpio.h: In function ?gpio_to_irq?:
> include/linux/gpio.h:67:2: error: implicit declaration of function ?__gpio_to_irq? [-Werror=implicit-function-declaration]
> drivers/gpio/devres.c: In function ?devm_gpio_release?:
> drivers/gpio/devres.c:26:2: error: implicit declaration of function ?gpio_free? [-Werror=implicit-function-declaration]
> drivers/gpio/devres.c: In function ?devm_gpio_request?:
> drivers/gpio/devres.c:60:2: error: implicit declaration of function ?gpio_request? [-Werror=implicit-function-declaration]
> drivers/gpio/devres.c: In function ?devm_gpio_request_one?:
> drivers/gpio/devres.c:90:2: error: implicit declaration of function ?gpio_request_one? [-Werror=implicit-function-declaration]
> cc1: some warnings being treated as errors
> make[2]: *** [drivers/gpio/devres.o] Error 1
> make[1]: *** [drivers/gpio] Error 2
> 
> I've bisected this down to 0fa2fd9a0d: "Merge branch 'linusw/devel' of
> git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git into
> gpio/next". Both parent commits build fine.
> 
> I've played around a bit, and selecting ARCH_REQUIRE_GPIOLIB in the arm64
> Kconfig fixes the issue, but I'm unfamilar with gpio{,lib} and I'm not sure
> that's the best/correct way of solving this.

Kconfig GENERIC_GPIO is designed as an option defined at architecture
level and select by platform who knows how gpio driver/API is
implemented.  The following change should fix the error.

Shawn

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index f532ce5..aca4a25 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -93,7 +93,7 @@ config IOMMU_HELPER
        def_bool SWIOTLB

 config GENERIC_GPIO
-       def_bool y
+       bool

 source "init/Kconfig"

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* arm64 defconfig breakage (gpio) in next-20130218
  2013-02-21  9:31 ` Shawn Guo
@ 2013-02-21 10:02   ` Arnd Bergmann
  2013-02-21 10:36     ` Grant Likely
  2013-02-21 10:37     ` arm64 defconfig breakage (gpio) in next-20130218 Catalin Marinas
  0 siblings, 2 replies; 10+ messages in thread
From: Arnd Bergmann @ 2013-02-21 10:02 UTC (permalink / raw)
  To: linux-arm-kernel

On Thursday 21 February 2013 17:31:07 Shawn Guo wrote:
> > 
> > I've bisected this down to 0fa2fd9a0d: "Merge branch 'linusw/devel' of
> > git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git into
> > gpio/next". Both parent commits build fine.
> > 
> > I've played around a bit, and selecting ARCH_REQUIRE_GPIOLIB in the arm64
> > Kconfig fixes the issue, but I'm unfamilar with gpio{,lib} and I'm not sure
> > that's the best/correct way of solving this.
> 
> Kconfig GENERIC_GPIO is designed as an option defined at architecture
> level and select by platform who knows how gpio driver/API is
> implemented.  The following change should fix the error.
> 
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index f532ce5..aca4a25 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -93,7 +93,7 @@ config IOMMU_HELPER
>         def_bool SWIOTLB
> 
>  config GENERIC_GPIO
> -       def_bool y
> +       bool
> 
>  source "init/Kconfig"

But we have no arm64 platforms that would pick GENERIC_GPIO, it's expected
to come from GPIOLIB anyway. I think the right fix is this:

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index ab4aa54..3fab0db 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -3,6 +3,7 @@ config ARM64
 	select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
 	select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
 	select ARCH_WANT_FRAME_POINTERS
+	select ARCH_WANT_OPTIONAL_GPIOLIB
 	select ARM_AMBA
 	select ARM_ARCH_TIMER
 	select CLONE_BACKWARDS
@@ -92,9 +93,6 @@ config SWIOTLB
 config IOMMU_HELPER
 	def_bool SWIOTLB
 
-config GENERIC_GPIO
-	def_bool y
-
 source "init/Kconfig"
 
 source "kernel/Kconfig.freezer"


	Arnd

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* arm64 defconfig breakage (gpio) in next-20130218
  2013-02-21 10:02   ` Arnd Bergmann
@ 2013-02-21 10:36     ` Grant Likely
  2013-02-21 10:44       ` [PATCH] arm64: select ARCH_WANT_OPTIONAL_GPIOLIB Arnd Bergmann
       [not found]       ` <1636745.vSza8MrtIn@wuerfel>
  2013-02-21 10:37     ` arm64 defconfig breakage (gpio) in next-20130218 Catalin Marinas
  1 sibling, 2 replies; 10+ messages in thread
From: Grant Likely @ 2013-02-21 10:36 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 21, 2013 at 10:02 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Thursday 21 February 2013 17:31:07 Shawn Guo wrote:
>> >
>> > I've bisected this down to 0fa2fd9a0d: "Merge branch 'linusw/devel' of
>> > git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git into
>> > gpio/next". Both parent commits build fine.
>> >
>> > I've played around a bit, and selecting ARCH_REQUIRE_GPIOLIB in the arm64
>> > Kconfig fixes the issue, but I'm unfamilar with gpio{,lib} and I'm not sure
>> > that's the best/correct way of solving this.
>>
>> Kconfig GENERIC_GPIO is designed as an option defined at architecture
>> level and select by platform who knows how gpio driver/API is
>> implemented.  The following change should fix the error.
>>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index f532ce5..aca4a25 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -93,7 +93,7 @@ config IOMMU_HELPER
>>         def_bool SWIOTLB
>>
>>  config GENERIC_GPIO
>> -       def_bool y
>> +       bool
>>
>>  source "init/Kconfig"
>
> But we have no arm64 platforms that would pick GENERIC_GPIO, it's expected
> to come from GPIOLIB anyway. I think the right fix is this:
>
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index ab4aa54..3fab0db 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -3,6 +3,7 @@ config ARM64
>         select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
>         select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
>         select ARCH_WANT_FRAME_POINTERS
> +       select ARCH_WANT_OPTIONAL_GPIOLIB
>         select ARM_AMBA
>         select ARM_ARCH_TIMER
>         select CLONE_BACKWARDS
> @@ -92,9 +93,6 @@ config SWIOTLB
>  config IOMMU_HELPER
>         def_bool SWIOTLB
>
> -config GENERIC_GPIO
> -       def_bool y
> -
>  source "init/Kconfig"
>
>  source "kernel/Kconfig.freezer"

I've not asked Linus to pull the GPIO tree yet because of this issue.
Can someone please test this on aarch64 and send me a properly
formatted patch?

g.

-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* arm64 defconfig breakage (gpio) in next-20130218
  2013-02-21 10:02   ` Arnd Bergmann
  2013-02-21 10:36     ` Grant Likely
@ 2013-02-21 10:37     ` Catalin Marinas
  1 sibling, 0 replies; 10+ messages in thread
From: Catalin Marinas @ 2013-02-21 10:37 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 21, 2013 at 10:02:15AM +0000, Arnd Bergmann wrote:
> On Thursday 21 February 2013 17:31:07 Shawn Guo wrote:
> > > 
> > > I've bisected this down to 0fa2fd9a0d: "Merge branch 'linusw/devel' of
> > > git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git into
> > > gpio/next". Both parent commits build fine.
> > > 
> > > I've played around a bit, and selecting ARCH_REQUIRE_GPIOLIB in the arm64
> > > Kconfig fixes the issue, but I'm unfamilar with gpio{,lib} and I'm not sure
> > > that's the best/correct way of solving this.
> > 
> > Kconfig GENERIC_GPIO is designed as an option defined at architecture
> > level and select by platform who knows how gpio driver/API is
> > implemented.  The following change should fix the error.
> > 
> > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> > index f532ce5..aca4a25 100644
> > --- a/arch/arm64/Kconfig
> > +++ b/arch/arm64/Kconfig
> > @@ -93,7 +93,7 @@ config IOMMU_HELPER
> >         def_bool SWIOTLB
> > 
> >  config GENERIC_GPIO
> > -       def_bool y
> > +       bool
> > 
> >  source "init/Kconfig"
> 
> But we have no arm64 platforms that would pick GENERIC_GPIO, it's expected
> to come from GPIOLIB anyway. I think the right fix is this:
> 
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index ab4aa54..3fab0db 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -3,6 +3,7 @@ config ARM64
>  	select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
>  	select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
>  	select ARCH_WANT_FRAME_POINTERS
> +	select ARCH_WANT_OPTIONAL_GPIOLIB
>  	select ARM_AMBA
>  	select ARM_ARCH_TIMER
>  	select CLONE_BACKWARDS
> @@ -92,9 +93,6 @@ config SWIOTLB
>  config IOMMU_HELPER
>  	def_bool SWIOTLB
>  
> -config GENERIC_GPIO
> -	def_bool y
> -

In my soc-armv8-model branch, the ARCH_VEXPRESS selects
ARCH_REQUIRE_GPIOLIB which in turn selects GENERIC_GPIO but this seems
to be defined in the arch Kconfig.

-- 
Catalin

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH] arm64: select ARCH_WANT_OPTIONAL_GPIOLIB
  2013-02-21 10:36     ` Grant Likely
@ 2013-02-21 10:44       ` Arnd Bergmann
  2013-02-21 21:35         ` Linus Walleij
       [not found]       ` <1636745.vSza8MrtIn@wuerfel>
  1 sibling, 1 reply; 10+ messages in thread
From: Arnd Bergmann @ 2013-02-21 10:44 UTC (permalink / raw)
  To: linux-arm-kernel

An architecture should not unconditionally enable 'GENERIC_GPIO'
without providing an implementation. In case of arm64, selecting
ARCH_WANT_OPTIONAL_GPIOLIB is the right solution, because it
lets us enable GPIOLIB when configuring the kernel, and that
implicitly turns on GENERIC_GPIO.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
----
On Thursday 21 February 2013 10:36:41 Grant Likely wrote:
> > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> > index ab4aa54..3fab0db 100644
> > --- a/arch/arm64/Kconfig
> > +++ b/arch/arm64/Kconfig
> > @@ -3,6 +3,7 @@ config ARM64
> >         select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
> >         select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
> >         select ARCH_WANT_FRAME_POINTERS
> > +       select ARCH_WANT_OPTIONAL_GPIOLIB
> >         select ARM_AMBA
> >         select ARM_ARCH_TIMER
> >         select CLONE_BACKWARDS
> > @@ -92,9 +93,6 @@ config SWIOTLB
> >  config IOMMU_HELPER
> >         def_bool SWIOTLB
> >
> > -config GENERIC_GPIO
> > -       def_bool y
> > -
> >  source "init/Kconfig"
> >
> >  source "kernel/Kconfig.freezer"
> 
> I've not asked Linus to pull the GPIO tree yet because of this issue.
> Can someone please test this on aarch64 and send me a properly
> formatted patch?

It was wrong, the new version below is good though. Tested with defconfig
and allyesconfig on arm64. I found a few more trivial issues with arm64
allyesconfig that I fixed up as well. I'll send separate patches
for those.

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index ab4aa54..38d3f34 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -3,6 +3,7 @@ config ARM64
 	select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
 	select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
 	select ARCH_WANT_FRAME_POINTERS
+	select ARCH_WANT_OPTIONAL_GPIOLIB
 	select ARM_AMBA
 	select ARM_ARCH_TIMER
 	select CLONE_BACKWARDS
@@ -93,7 +94,7 @@ config IOMMU_HELPER
 	def_bool SWIOTLB
 
 config GENERIC_GPIO
-	def_bool y
+	bool
 
 source "init/Kconfig"
 

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* arm64: select ARCH_WANT_OPTIONAL_GPIOLIB
       [not found]       ` <1636745.vSza8MrtIn@wuerfel>
@ 2013-02-21 10:46         ` Catalin Marinas
  2013-02-22  9:39           ` Mark Rutland
  0 siblings, 1 reply; 10+ messages in thread
From: Catalin Marinas @ 2013-02-21 10:46 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 21, 2013 at 10:42:57AM +0000, Arnd Bergmann wrote:
> An architecture should not unconditionally enable 'GENERIC_GPIO'
> without providing an implementation. In case of arm64, selecting
> ARCH_WANT_OPTIONAL_GPIOLIB is the right solution, because it
> lets us enable GPIOLIB when configuring the kernel, and that
> implicitly turns on GENERIC_GPIO.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ----
> On Thursday 21 February 2013 10:36:41 Grant Likely wrote:
> > > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> > > index ab4aa54..3fab0db 100644
> > > --- a/arch/arm64/Kconfig
> > > +++ b/arch/arm64/Kconfig
> > > @@ -3,6 +3,7 @@ config ARM64
> > >         select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
> > >         select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
> > >         select ARCH_WANT_FRAME_POINTERS
> > > +       select ARCH_WANT_OPTIONAL_GPIOLIB
> > >         select ARM_AMBA
> > >         select ARM_ARCH_TIMER
> > >         select CLONE_BACKWARDS
> > > @@ -92,9 +93,6 @@ config SWIOTLB
> > >  config IOMMU_HELPER
> > >         def_bool SWIOTLB
> > >
> > > -config GENERIC_GPIO
> > > -       def_bool y
> > > -
> > >  source "init/Kconfig"
> > >
> > >  source "kernel/Kconfig.freezer"
> > 
> > I've not asked Linus to pull the GPIO tree yet because of this issue.
> > Can someone please test this on aarch64 and send me a properly
> > formatted patch?
> 
> It was wrong, the new version below is good though. Tested with defconfig
> and allyesconfig on arm64. I found a few more trivial issues with arm64
> allyesconfig that I fixed up as well. I'll send separate patches
> for those.

That's what I just tried, it looks ok to me:

Acked-by: Catalin Marinas <catalin.marinas@arm.com>

Maybe Mark can try it with -next (I only tested with 3.8).

Thanks.

-- 
Catalin

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH] arm64: select ARCH_WANT_OPTIONAL_GPIOLIB
  2013-02-21 10:44       ` [PATCH] arm64: select ARCH_WANT_OPTIONAL_GPIOLIB Arnd Bergmann
@ 2013-02-21 21:35         ` Linus Walleij
  2013-02-22 14:29           ` Grant Likely
  0 siblings, 1 reply; 10+ messages in thread
From: Linus Walleij @ 2013-02-21 21:35 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 21, 2013 at 11:44 AM, Arnd Bergmann <arnd@arndb.de> wrote:

> An architecture should not unconditionally enable 'GENERIC_GPIO'
> without providing an implementation. In case of arm64, selecting
> ARCH_WANT_OPTIONAL_GPIOLIB is the right solution, because it
> lets us enable GPIOLIB when configuring the kernel, and that
> implicitly turns on GENERIC_GPIO.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Acked-by: Linus Walleij <linus.walleij@linaro.org>

GENERIC_GPIO must die, it's just causing trouble like
this all the time :-(

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 10+ messages in thread

* arm64: select ARCH_WANT_OPTIONAL_GPIOLIB
  2013-02-21 10:46         ` Catalin Marinas
@ 2013-02-22  9:39           ` Mark Rutland
  0 siblings, 0 replies; 10+ messages in thread
From: Mark Rutland @ 2013-02-22  9:39 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 21, 2013 at 10:46:44AM +0000, Catalin Marinas wrote:
> On Thu, Feb 21, 2013 at 10:42:57AM +0000, Arnd Bergmann wrote:
> > An architecture should not unconditionally enable 'GENERIC_GPIO'
> > without providing an implementation. In case of arm64, selecting
> > ARCH_WANT_OPTIONAL_GPIOLIB is the right solution, because it
> > lets us enable GPIOLIB when configuring the kernel, and that
> > implicitly turns on GENERIC_GPIO.
> > 
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > ----
> > On Thursday 21 February 2013 10:36:41 Grant Likely wrote:
> > > > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> > > > index ab4aa54..3fab0db 100644
> > > > --- a/arch/arm64/Kconfig
> > > > +++ b/arch/arm64/Kconfig
> > > > @@ -3,6 +3,7 @@ config ARM64
> > > >         select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
> > > >         select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
> > > >         select ARCH_WANT_FRAME_POINTERS
> > > > +       select ARCH_WANT_OPTIONAL_GPIOLIB
> > > >         select ARM_AMBA
> > > >         select ARM_ARCH_TIMER
> > > >         select CLONE_BACKWARDS
> > > > @@ -92,9 +93,6 @@ config SWIOTLB
> > > >  config IOMMU_HELPER
> > > >         def_bool SWIOTLB
> > > >
> > > > -config GENERIC_GPIO
> > > > -       def_bool y
> > > > -
> > > >  source "init/Kconfig"
> > > >
> > > >  source "kernel/Kconfig.freezer"
> > > 
> > > I've not asked Linus to pull the GPIO tree yet because of this issue.
> > > Can someone please test this on aarch64 and send me a properly
> > > formatted patch?
> > 
> > It was wrong, the new version below is good though. Tested with defconfig
> > and allyesconfig on arm64. I found a few more trivial issues with arm64
> > allyesconfig that I fixed up as well. I'll send separate patches
> > for those.
> 
> That's what I just tried, it looks ok to me:
> 
> Acked-by: Catalin Marinas <catalin.marinas@arm.com>
> 
> Maybe Mark can try it with -next (I only tested with 3.8).

I've just tried the updated patch on next-20130222; arm64 defconfig builds
successfully.

Thanks,
Mark.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH] arm64: select ARCH_WANT_OPTIONAL_GPIOLIB
  2013-02-21 21:35         ` Linus Walleij
@ 2013-02-22 14:29           ` Grant Likely
  0 siblings, 0 replies; 10+ messages in thread
From: Grant Likely @ 2013-02-22 14:29 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, 21 Feb 2013 22:35:49 +0100, Linus Walleij <linus.walleij@linaro.org> wrote:
> On Thu, Feb 21, 2013 at 11:44 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> 
> > An architecture should not unconditionally enable 'GENERIC_GPIO'
> > without providing an implementation. In case of arm64, selecting
> > ARCH_WANT_OPTIONAL_GPIOLIB is the right solution, because it
> > lets us enable GPIOLIB when configuring the kernel, and that
> > implicitly turns on GENERIC_GPIO.
> >
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
> Acked-by: Linus Walleij <linus.walleij@linaro.org>

Okay, I've put this into my gpio/next branch and I'll ask Linus to pull
shortly. Thanks everyone.

g.

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2013-02-22 14:29 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-18 11:14 arm64 defconfig breakage (gpio) in next-20130218 Mark Rutland
2013-02-21  9:31 ` Shawn Guo
2013-02-21 10:02   ` Arnd Bergmann
2013-02-21 10:36     ` Grant Likely
2013-02-21 10:44       ` [PATCH] arm64: select ARCH_WANT_OPTIONAL_GPIOLIB Arnd Bergmann
2013-02-21 21:35         ` Linus Walleij
2013-02-22 14:29           ` Grant Likely
     [not found]       ` <1636745.vSza8MrtIn@wuerfel>
2013-02-21 10:46         ` Catalin Marinas
2013-02-22  9:39           ` Mark Rutland
2013-02-21 10:37     ` arm64 defconfig breakage (gpio) in next-20130218 Catalin Marinas

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).