Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1318979 > unrolled thread

[PATCH 3/9] net: bgmac: clarify CONFIG_BCMA dependency

Started byArnd Bergmann <arnd@arndb.de>
First post2016-01-27 15:10 +0100
Last post2016-01-28 10:00 +0100
Articles 3 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH 3/9] net: bgmac: clarify CONFIG_BCMA dependency Arnd Bergmann <arnd@arndb.de> - 2016-01-27 15:10 +0100
    Re: [PATCH 3/9] net: bgmac: clarify CONFIG_BCMA dependency Paul Gortmaker <paul.gortmaker@windriver.com> - 2016-01-27 17:20 +0100
      Re: [PATCH 3/9] net: bgmac: clarify CONFIG_BCMA dependency Arnd Bergmann <arnd@arndb.de> - 2016-01-28 10:00 +0100

#1318979 — [PATCH 3/9] net: bgmac: clarify CONFIG_BCMA dependency

FromArnd Bergmann <arnd@arndb.de>
Date2016-01-27 15:10 +0100
Subject[PATCH 3/9] net: bgmac: clarify CONFIG_BCMA dependency
Message-ID<qVyXg-4EQ-1@gated-at.bofh.it>
The bgmac driver depends on BCMA_HOST_SOC, which is only used
when CONFIG_BCMA is enabled. However, it is a bool option and can
be set when CONFIG_BCMA=m, and then bgmac can be built-in, leading
to an obvious link error:

drivers/built-in.o: In function `bgmac_init':
:(.init.text+0x7f2c): undefined reference to `__bcma_driver_register'
drivers/built-in.o: In function `bgmac_exit':
:(.exit.text+0x110a): undefined reference to `bcma_driver_unregister'

To avoid this case, we need to depend on both BCMA and BCMA_SOC,
as this patch does. I'm also trying to make the dependency more
readable by splitting it into three lines, and adding a COMPILE_TEST
alternative so we can test-build it in all configurations that
support BCMA.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/net/ethernet/broadcom/Kconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/broadcom/Kconfig b/drivers/net/ethernet/broadcom/Kconfig
index 8550df189ceb..19f7cd02e085 100644
--- a/drivers/net/ethernet/broadcom/Kconfig
+++ b/drivers/net/ethernet/broadcom/Kconfig
@@ -151,8 +151,11 @@ config BNX2X_VXLAN
 
 config BGMAC
 	tristate "BCMA bus GBit core support"
-	depends on BCMA_HOST_SOC && HAS_DMA && (BCM47XX || ARCH_BCM_5301X)
+	depends on BCMA && BCMA_HOST_SOC
+	depends on HAS_DMA
+	depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST
 	select PHYLIB
+	select FIXED_PHY
 	---help---
 	  This driver supports GBit MAC and BCM4706 GBit MAC cores on BCMA bus.
 	  They can be found on BCM47xx SoCs and provide gigabit ethernet.
-- 
2.7.0

[toc] | [next] | [standalone]


#1319134

FromPaul Gortmaker <paul.gortmaker@windriver.com>
Date2016-01-27 17:20 +0100
Message-ID<qVAZ6-6ax-67@gated-at.bofh.it>
In reply to#1318979
[[PATCH 3/9] net: bgmac: clarify CONFIG_BCMA dependency] On 27/01/2016 (Wed 15:04) Arnd Bergmann wrote:

> The bgmac driver depends on BCMA_HOST_SOC, which is only used
> when CONFIG_BCMA is enabled. However, it is a bool option and can
> be set when CONFIG_BCMA=m, and then bgmac can be built-in, leading
> to an obvious link error:
> 
> drivers/built-in.o: In function `bgmac_init':
> :(.init.text+0x7f2c): undefined reference to `__bcma_driver_register'
> drivers/built-in.o: In function `bgmac_exit':
> :(.exit.text+0x110a): undefined reference to `bcma_driver_unregister'
> 
> To avoid this case, we need to depend on both BCMA and BCMA_SOC,
> as this patch does. I'm also trying to make the dependency more
> readable by splitting it into three lines, and adding a COMPILE_TEST
> alternative so we can test-build it in all configurations that
> support BCMA.

It wasn't immediately clear to me from the above why you added the
select on FIXED_PHY.

P.
--

> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  drivers/net/ethernet/broadcom/Kconfig | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/broadcom/Kconfig b/drivers/net/ethernet/broadcom/Kconfig
> index 8550df189ceb..19f7cd02e085 100644
> --- a/drivers/net/ethernet/broadcom/Kconfig
> +++ b/drivers/net/ethernet/broadcom/Kconfig
> @@ -151,8 +151,11 @@ config BNX2X_VXLAN
>  
>  config BGMAC
>  	tristate "BCMA bus GBit core support"
> -	depends on BCMA_HOST_SOC && HAS_DMA && (BCM47XX || ARCH_BCM_5301X)
> +	depends on BCMA && BCMA_HOST_SOC
> +	depends on HAS_DMA
> +	depends on BCM47XX || ARCH_BCM_5301X || COMPILE_TEST
>  	select PHYLIB
> +	select FIXED_PHY
>  	---help---
>  	  This driver supports GBit MAC and BCM4706 GBit MAC cores on BCMA bus.
>  	  They can be found on BCM47xx SoCs and provide gigabit ethernet.
> -- 
> 2.7.0
> 

[toc] | [prev] | [next] | [standalone]


#1320442

FromArnd Bergmann <arnd@arndb.de>
Date2016-01-28 10:00 +0100
Message-ID<qVQAO-Qb-9@gated-at.bofh.it>
In reply to#1319134
On Wednesday 27 January 2016 11:11:10 Paul Gortmaker wrote:
> [[PATCH 3/9] net: bgmac: clarify CONFIG_BCMA dependency] On 27/01/2016 (Wed 15:04) Arnd Bergmann wrote:
> 
> > The bgmac driver depends on BCMA_HOST_SOC, which is only used
> > when CONFIG_BCMA is enabled. However, it is a bool option and can
> > be set when CONFIG_BCMA=m, and then bgmac can be built-in, leading
> > to an obvious link error:
> > 
> > drivers/built-in.o: In function `bgmac_init':
> > :(.init.text+0x7f2c): undefined reference to `__bcma_driver_register'
> > drivers/built-in.o: In function `bgmac_exit':
> > :(.exit.text+0x110a): undefined reference to `bcma_driver_unregister'
> > 
> > To avoid this case, we need to depend on both BCMA and BCMA_SOC,
> > as this patch does. I'm also trying to make the dependency more
> > readable by splitting it into three lines, and adding a COMPILE_TEST
> > alternative so we can test-build it in all configurations that
> > support BCMA.
> 
> It wasn't immediately clear to me from the above why you added the
> select on FIXED_PHY.
> 

Right, I'll resend the patch with improved changelog. This series
is mostly patches for old and rare randconfig bugs, so I had built
thousands of configurations and fixed up everything until new warnings
or errors kept coming up. The FIXED_PHY error came up in the same
driver so I merged the two patches but did not notice how the changelog
failed to explain it.

Thanks,

	Arnd

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web