diff mbox

net: cadence: Add architecture dependencies

Message ID 20140414141151.5ee5434d@endymion.delvare
State Superseded, archived
Delegated to: David Miller
Headers show

Commit Message

Jean Delvare April 14, 2014, 12:11 p.m. UTC
The Cadence ethernet chipsets are only used on specific ARM
architectures. Add Kconfig dependencies so that drivers for these
chipsets are only buildable on the relevant architectures.

Signed-off-by: Jean Delvare <jdelvare@suse.de>
Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
---
I'm not 100% certain I got the dependencies for MACB right, please let
me know if I forgot something (or it can always be added later.)

 drivers/net/ethernet/cadence/Kconfig |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Nicolas Ferre April 14, 2014, 12:59 p.m. UTC | #1
On 14/04/2014 14:11, Jean Delvare :
> The Cadence ethernet chipsets are only used on specific ARM
> architectures. Add Kconfig dependencies so that drivers for these
> chipsets are only buildable on the relevant architectures.
> 
> Signed-off-by: Jean Delvare <jdelvare@suse.de>
> Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
> ---
> I'm not 100% certain I got the dependencies for MACB right, please let
> me know if I forgot something (or it can always be added later.)
> 
>  drivers/net/ethernet/cadence/Kconfig |    6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> --- linux-3.15-rc1.orig/drivers/net/ethernet/cadence/Kconfig	2014-03-31 05:40:15.000000000 +0200
> +++ linux-3.15-rc1/drivers/net/ethernet/cadence/Kconfig	2014-04-14 13:38:09.308168512 +0200
> @@ -4,7 +4,7 @@
>  
>  config NET_CADENCE
>  	bool "Cadence devices"
> -	depends on HAS_IOMEM
> +	depends on HAS_IOMEM && (ARM || COMPILE_TEST)

This one is wrong: PLATFORM_AT32AP is not an ARM platform but an AVR32 one.

>  	default y
>  	---help---
>  	  If you have a network (Ethernet) card belonging to this class, say Y.
> @@ -22,7 +22,7 @@ if NET_CADENCE
>  
>  config ARM_AT91_ETHER
>  	tristate "AT91RM9200 Ethernet support"
> -	depends on HAS_DMA
> +	depends on HAS_DMA && (ARCH_AT91RM9200 || COMPILE_TEST)
>  	select MACB
>  	---help---
>  	  If you wish to compile a kernel for the AT91RM9200 and enable
> @@ -30,7 +30,7 @@ config ARM_AT91_ETHER
>  
>  config MACB
>  	tristate "Cadence MACB/GEM support"
> -	depends on HAS_DMA
> +	depends on HAS_DMA && (PLATFORM_AT32AP || ARCH_AT91 || ARCH_PICOXCELL || ARCH_ZYNQ || COMPILE_TEST)
>  	select PHYLIB
>  	---help---
>  	  The Cadence MACB ethernet interface is found on many Atmel AT32 and
> 
> 

Well, do we really need the adding of these dependencies? I though that
we were moving toward the decreasing of dependency checks in Kconfig...

Bye,
Jean Delvare April 14, 2014, 1:25 p.m. UTC | #2
Hi Nicolas,

Thanks for the quick reply.

Le Monday 14 April 2014 à 14:59 +0200, Nicolas Ferre a écrit :
> On 14/04/2014 14:11, Jean Delvare :
> > The Cadence ethernet chipsets are only used on specific ARM
> > architectures. Add Kconfig dependencies so that drivers for these
> > chipsets are only buildable on the relevant architectures.
> > 
> > Signed-off-by: Jean Delvare <jdelvare@suse.de>
> > Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
> > ---
> > I'm not 100% certain I got the dependencies for MACB right, please let
> > me know if I forgot something (or it can always be added later.)
> > 
> >  drivers/net/ethernet/cadence/Kconfig |    6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> > 
> > --- linux-3.15-rc1.orig/drivers/net/ethernet/cadence/Kconfig	2014-03-31 05:40:15.000000000 +0200
> > +++ linux-3.15-rc1/drivers/net/ethernet/cadence/Kconfig	2014-04-14 13:38:09.308168512 +0200
> > @@ -4,7 +4,7 @@
> >  
> >  config NET_CADENCE
> >  	bool "Cadence devices"
> > -	depends on HAS_IOMEM
> > +	depends on HAS_IOMEM && (ARM || COMPILE_TEST)
> 
> This one is wrong: PLATFORM_AT32AP is not an ARM platform but an AVR32 one.

Doh, I thought AVR32 was a subset of ARM. See how little I know about
embedded stuff :( I'll fix and resubmit.

> >  	default y
> >  	---help---
> >  	  If you have a network (Ethernet) card belonging to this class, say Y.
> > @@ -22,7 +22,7 @@ if NET_CADENCE
> >  
> >  config ARM_AT91_ETHER
> >  	tristate "AT91RM9200 Ethernet support"
> > -	depends on HAS_DMA
> > +	depends on HAS_DMA && (ARCH_AT91RM9200 || COMPILE_TEST)
> >  	select MACB
> >  	---help---
> >  	  If you wish to compile a kernel for the AT91RM9200 and enable
> > @@ -30,7 +30,7 @@ config ARM_AT91_ETHER
> >  
> >  config MACB
> >  	tristate "Cadence MACB/GEM support"
> > -	depends on HAS_DMA
> > +	depends on HAS_DMA && (PLATFORM_AT32AP || ARCH_AT91 || ARCH_PICOXCELL || ARCH_ZYNQ || COMPILE_TEST)
> >  	select PHYLIB
> >  	---help---
> >  	  The Cadence MACB ethernet interface is found on many Atmel AT32 and
> > 
> > 
> 
> Well, do we really need the adding of these dependencies? I though that
> we were moving toward the decreasing of dependency checks in Kconfig...

I realize we may not all be on the same track regarding this, and just
started a discussion thread on LKML. Sorry for not including you. Here's
a pointer if you want to read and/or participate:
  https://lkml.org/lkml/2014/4/14/280

My understanding is that there was resistance to non-strictly-necessary
hardware-based dependencies because it lowered the build test coverage.
Now that COMPILE_TEST was introduced, this is no longer an issue. So I
personally would like to see more dependencies, not fewer, so as to ease
kernel configuration. Well, see the thread for the details, there's
little point in repeating myself here.

Thanks,
David Miller April 14, 2014, 4:54 p.m. UTC | #3
From: Nicolas Ferre <nicolas.ferre@atmel.com>
Date: Mon, 14 Apr 2014 14:59:53 +0200

> Well, do we really need the adding of these dependencies? I though that
> we were moving toward the decreasing of dependency checks in Kconfig...

Yeah I really don't want to apply this, I like that this driver gets enabled
and compile tested when I do my standard allmodconfig/allyesconfig builds.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Jean Delvare April 14, 2014, 5:14 p.m. UTC | #4
Hi David,

On Mon, 14 Apr 2014 12:54:39 -0400 (EDT), David Miller wrote:
> From: Nicolas Ferre <nicolas.ferre@atmel.com>
> Date: Mon, 14 Apr 2014 14:59:53 +0200
> 
> > Well, do we really need the adding of these dependencies? I though that
> > we were moving toward the decreasing of dependency checks in Kconfig...
> 
> Yeah I really don't want to apply this, I like that this driver gets enabled
> and compile tested when I do my standard allmodconfig/allyesconfig builds.

They will still be. allmodconfig/allyesconfig enables COMPILE_TEST. Is
the world not wonderful? :)
David Miller April 14, 2014, 5:34 p.m. UTC | #5
From: Jean Delvare <jdelvare@suse.de>
Date: Mon, 14 Apr 2014 19:14:38 +0200

> Hi David,
> 
> On Mon, 14 Apr 2014 12:54:39 -0400 (EDT), David Miller wrote:
>> From: Nicolas Ferre <nicolas.ferre@atmel.com>
>> Date: Mon, 14 Apr 2014 14:59:53 +0200
>> 
>> > Well, do we really need the adding of these dependencies? I though that
>> > we were moving toward the decreasing of dependency checks in Kconfig...
>> 
>> Yeah I really don't want to apply this, I like that this driver gets enabled
>> and compile tested when I do my standard allmodconfig/allyesconfig builds.
> 
> They will still be. allmodconfig/allyesconfig enables COMPILE_TEST. Is
> the world not wonderful? :)

Ok I'm not so against this then :)
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

--- linux-3.15-rc1.orig/drivers/net/ethernet/cadence/Kconfig	2014-03-31 05:40:15.000000000 +0200
+++ linux-3.15-rc1/drivers/net/ethernet/cadence/Kconfig	2014-04-14 13:38:09.308168512 +0200
@@ -4,7 +4,7 @@ 
 
 config NET_CADENCE
 	bool "Cadence devices"
-	depends on HAS_IOMEM
+	depends on HAS_IOMEM && (ARM || COMPILE_TEST)
 	default y
 	---help---
 	  If you have a network (Ethernet) card belonging to this class, say Y.
@@ -22,7 +22,7 @@  if NET_CADENCE
 
 config ARM_AT91_ETHER
 	tristate "AT91RM9200 Ethernet support"
-	depends on HAS_DMA
+	depends on HAS_DMA && (ARCH_AT91RM9200 || COMPILE_TEST)
 	select MACB
 	---help---
 	  If you wish to compile a kernel for the AT91RM9200 and enable
@@ -30,7 +30,7 @@  config ARM_AT91_ETHER
 
 config MACB
 	tristate "Cadence MACB/GEM support"
-	depends on HAS_DMA
+	depends on HAS_DMA && (PLATFORM_AT32AP || ARCH_AT91 || ARCH_PICOXCELL || ARCH_ZYNQ || COMPILE_TEST)
 	select PHYLIB
 	---help---
 	  The Cadence MACB ethernet interface is found on many Atmel AT32 and