netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] net: ethernet: adi: requires PHYLIB support
@ 2024-02-15  7:00 Randy Dunlap
  2024-02-15  8:10 ` Nuno Sá
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Randy Dunlap @ 2024-02-15  7:00 UTC (permalink / raw)
  To: linux-kernel
  Cc: Randy Dunlap, kernel test robot, Lennart Franzen,
	Alexandru Tachici, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, netdev

This driver uses functions that are supplied by the Kconfig symbol
PHYLIB, so select it to ensure that they are built as needed.

When CONFIG_ADIN1110=y and CONFIG_PHYLIB=m, there are multiple build
(linker) errors that are resolved by this Kconfig change:

   ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_open':
   drivers/net/ethernet/adi/adin1110.c:933: undefined reference to `phy_start'
   ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_probe_netdevs':
   drivers/net/ethernet/adi/adin1110.c:1603: undefined reference to `get_phy_device'
   ld: drivers/net/ethernet/adi/adin1110.c:1609: undefined reference to `phy_connect'
   ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
   drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to `phy_disconnect'
   ld: drivers/net/ethernet/adi/adin1110.o: in function `devm_mdiobus_alloc':
   include/linux/phy.h:455: undefined reference to `devm_mdiobus_alloc_size'
   ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_register_mdiobus':
   drivers/net/ethernet/adi/adin1110.c:529: undefined reference to `__devm_mdiobus_register'
   ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_stop':
   drivers/net/ethernet/adi/adin1110.c:958: undefined reference to `phy_stop'
   ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
   drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to `phy_disconnect'
   ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_adjust_link':
   drivers/net/ethernet/adi/adin1110.c:1077: undefined reference to `phy_print_status'
   ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_ioctl':
   drivers/net/ethernet/adi/adin1110.c:790: undefined reference to `phy_do_ioctl'
   ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf60): undefined reference to `phy_ethtool_get_link_ksettings'
   ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf68): undefined reference to `phy_ethtool_set_link_ksettings'

Fixes: bc93e19d088b ("net: ethernet: adi: Add ADIN1110 support")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202402070626.eZsfVHG5-lkp@intel.com/
Cc: Lennart Franzen <lennart@lfdomain.com>
Cc: Alexandru Tachici <alexandru.tachici@analog.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Paolo Abeni <pabeni@redhat.com>
Cc: netdev@vger.kernel.org
---
 drivers/net/ethernet/adi/Kconfig |    1 +
 1 file changed, 1 insertion(+)

diff -- a/drivers/net/ethernet/adi/Kconfig b/drivers/net/ethernet/adi/Kconfig
--- a/drivers/net/ethernet/adi/Kconfig
+++ b/drivers/net/ethernet/adi/Kconfig
@@ -7,6 +7,7 @@ config NET_VENDOR_ADI
 	bool "Analog Devices devices"
 	default y
 	depends on SPI
+	select PHYLIB
 	help
 	  If you have a network (Ethernet) card belonging to this class, say Y.
 

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

* Re: [PATCH] net: ethernet: adi: requires PHYLIB support
  2024-02-15  7:00 [PATCH] net: ethernet: adi: requires PHYLIB support Randy Dunlap
@ 2024-02-15  8:10 ` Nuno Sá
  2024-02-16  9:50 ` patchwork-bot+netdevbpf
  2024-02-26  6:44 ` Michal Kubecek
  2 siblings, 0 replies; 5+ messages in thread
From: Nuno Sá @ 2024-02-15  8:10 UTC (permalink / raw)
  To: Randy Dunlap, linux-kernel
  Cc: kernel test robot, Lennart Franzen, Alexandru Tachici,
	David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
	netdev

On Wed, 2024-02-14 at 23:00 -0800, Randy Dunlap wrote:
> This driver uses functions that are supplied by the Kconfig symbol
> PHYLIB, so select it to ensure that they are built as needed.
> 
> When CONFIG_ADIN1110=y and CONFIG_PHYLIB=m, there are multiple build
> (linker) errors that are resolved by this Kconfig change:
> 
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_open':
>    drivers/net/ethernet/adi/adin1110.c:933: undefined reference to `phy_start'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_probe_netdevs':
>    drivers/net/ethernet/adi/adin1110.c:1603: undefined reference to
> `get_phy_device'
>    ld: drivers/net/ethernet/adi/adin1110.c:1609: undefined reference to
> `phy_connect'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
>    drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to
> `phy_disconnect'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `devm_mdiobus_alloc':
>    include/linux/phy.h:455: undefined reference to `devm_mdiobus_alloc_size'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function
> `adin1110_register_mdiobus':
>    drivers/net/ethernet/adi/adin1110.c:529: undefined reference to
> `__devm_mdiobus_register'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_stop':
>    drivers/net/ethernet/adi/adin1110.c:958: undefined reference to `phy_stop'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
>    drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to
> `phy_disconnect'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_adjust_link':
>    drivers/net/ethernet/adi/adin1110.c:1077: undefined reference to
> `phy_print_status'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_ioctl':
>    drivers/net/ethernet/adi/adin1110.c:790: undefined reference to `phy_do_ioctl'
>    ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf60): undefined reference to
> `phy_ethtool_get_link_ksettings'
>    ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf68): undefined reference to
> `phy_ethtool_set_link_ksettings'
> 
> Fixes: bc93e19d088b ("net: ethernet: adi: Add ADIN1110 support")
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> Reported-by: kernel test robot <lkp@intel.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202402070626.eZsfVHG5-lkp@intel.com/
> Cc: Lennart Franzen <lennart@lfdomain.com>
> Cc: Alexandru Tachici <alexandru.tachici@analog.com>
> Cc: "David S. Miller" <davem@davemloft.net>
> Cc: Eric Dumazet <edumazet@google.com>
> Cc: Jakub Kicinski <kuba@kernel.org>
> Cc: Paolo Abeni <pabeni@redhat.com>
> Cc: netdev@vger.kernel.org
> ---

Reviewed-by: Nuno Sa <nuno.sa@analog.com>


>  drivers/net/ethernet/adi/Kconfig |    1 +
>  1 file changed, 1 insertion(+)
> 
> diff -- a/drivers/net/ethernet/adi/Kconfig b/drivers/net/ethernet/adi/Kconfig
> --- a/drivers/net/ethernet/adi/Kconfig
> +++ b/drivers/net/ethernet/adi/Kconfig
> @@ -7,6 +7,7 @@ config NET_VENDOR_ADI
>  	bool "Analog Devices devices"
>  	default y
>  	depends on SPI
> +	select PHYLIB
>  	help
>  	  If you have a network (Ethernet) card belonging to this class, say Y.
>  


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

* Re: [PATCH] net: ethernet: adi: requires PHYLIB support
  2024-02-15  7:00 [PATCH] net: ethernet: adi: requires PHYLIB support Randy Dunlap
  2024-02-15  8:10 ` Nuno Sá
@ 2024-02-16  9:50 ` patchwork-bot+netdevbpf
  2024-02-26  6:44 ` Michal Kubecek
  2 siblings, 0 replies; 5+ messages in thread
From: patchwork-bot+netdevbpf @ 2024-02-16  9:50 UTC (permalink / raw)
  To: Randy Dunlap
  Cc: linux-kernel, lkp, lennart, alexandru.tachici, davem, edumazet,
	kuba, pabeni, netdev

Hello:

This patch was applied to netdev/net.git (main)
by David S. Miller <davem@davemloft.net>:

On Wed, 14 Feb 2024 23:00:50 -0800 you wrote:
> This driver uses functions that are supplied by the Kconfig symbol
> PHYLIB, so select it to ensure that they are built as needed.
> 
> When CONFIG_ADIN1110=y and CONFIG_PHYLIB=m, there are multiple build
> (linker) errors that are resolved by this Kconfig change:
> 
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_open':
>    drivers/net/ethernet/adi/adin1110.c:933: undefined reference to `phy_start'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_probe_netdevs':
>    drivers/net/ethernet/adi/adin1110.c:1603: undefined reference to `get_phy_device'
>    ld: drivers/net/ethernet/adi/adin1110.c:1609: undefined reference to `phy_connect'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
>    drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to `phy_disconnect'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `devm_mdiobus_alloc':
>    include/linux/phy.h:455: undefined reference to `devm_mdiobus_alloc_size'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_register_mdiobus':
>    drivers/net/ethernet/adi/adin1110.c:529: undefined reference to `__devm_mdiobus_register'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_stop':
>    drivers/net/ethernet/adi/adin1110.c:958: undefined reference to `phy_stop'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
>    drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to `phy_disconnect'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_adjust_link':
>    drivers/net/ethernet/adi/adin1110.c:1077: undefined reference to `phy_print_status'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_ioctl':
>    drivers/net/ethernet/adi/adin1110.c:790: undefined reference to `phy_do_ioctl'
>    ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf60): undefined reference to `phy_ethtool_get_link_ksettings'
>    ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf68): undefined reference to `phy_ethtool_set_link_ksettings'
> 
> [...]

Here is the summary with links:
  - net: ethernet: adi: requires PHYLIB support
    https://git.kernel.org/netdev/net/c/a9f80df4f514

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



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

* Re: [PATCH] net: ethernet: adi: requires PHYLIB support
  2024-02-15  7:00 [PATCH] net: ethernet: adi: requires PHYLIB support Randy Dunlap
  2024-02-15  8:10 ` Nuno Sá
  2024-02-16  9:50 ` patchwork-bot+netdevbpf
@ 2024-02-26  6:44 ` Michal Kubecek
  2024-02-26  6:50   ` Randy Dunlap
  2 siblings, 1 reply; 5+ messages in thread
From: Michal Kubecek @ 2024-02-26  6:44 UTC (permalink / raw)
  To: Randy Dunlap
  Cc: linux-kernel, kernel test robot, Lennart Franzen,
	Alexandru Tachici, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, netdev

[-- Attachment #1: Type: text/plain, Size: 3454 bytes --]

On Wed, Feb 14, 2024 at 11:00:50PM -0800, Randy Dunlap wrote:
> This driver uses functions that are supplied by the Kconfig symbol
> PHYLIB, so select it to ensure that they are built as needed.
> 
> When CONFIG_ADIN1110=y and CONFIG_PHYLIB=m, there are multiple build
> (linker) errors that are resolved by this Kconfig change:
> 
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_open':
>    drivers/net/ethernet/adi/adin1110.c:933: undefined reference to `phy_start'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_probe_netdevs':
>    drivers/net/ethernet/adi/adin1110.c:1603: undefined reference to `get_phy_device'
>    ld: drivers/net/ethernet/adi/adin1110.c:1609: undefined reference to `phy_connect'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
>    drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to `phy_disconnect'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `devm_mdiobus_alloc':
>    include/linux/phy.h:455: undefined reference to `devm_mdiobus_alloc_size'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_register_mdiobus':
>    drivers/net/ethernet/adi/adin1110.c:529: undefined reference to `__devm_mdiobus_register'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_stop':
>    drivers/net/ethernet/adi/adin1110.c:958: undefined reference to `phy_stop'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
>    drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to `phy_disconnect'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_adjust_link':
>    drivers/net/ethernet/adi/adin1110.c:1077: undefined reference to `phy_print_status'
>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_ioctl':
>    drivers/net/ethernet/adi/adin1110.c:790: undefined reference to `phy_do_ioctl'
>    ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf60): undefined reference to `phy_ethtool_get_link_ksettings'
>    ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf68): undefined reference to `phy_ethtool_set_link_ksettings'
> 
> Fixes: bc93e19d088b ("net: ethernet: adi: Add ADIN1110 support")
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> Reported-by: kernel test robot <lkp@intel.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202402070626.eZsfVHG5-lkp@intel.com/
> Cc: Lennart Franzen <lennart@lfdomain.com>
> Cc: Alexandru Tachici <alexandru.tachici@analog.com>
> Cc: "David S. Miller" <davem@davemloft.net>
> Cc: Eric Dumazet <edumazet@google.com>
> Cc: Jakub Kicinski <kuba@kernel.org>
> Cc: Paolo Abeni <pabeni@redhat.com>
> Cc: netdev@vger.kernel.org
> ---
>  drivers/net/ethernet/adi/Kconfig |    1 +
>  1 file changed, 1 insertion(+)
> 
> diff -- a/drivers/net/ethernet/adi/Kconfig b/drivers/net/ethernet/adi/Kconfig
> --- a/drivers/net/ethernet/adi/Kconfig
> +++ b/drivers/net/ethernet/adi/Kconfig
> @@ -7,6 +7,7 @@ config NET_VENDOR_ADI
>  	bool "Analog Devices devices"
>  	default y
>  	depends on SPI
> +	select PHYLIB
>  	help
>  	  If you have a network (Ethernet) card belonging to this class, say Y.

Shouldn't the "select PHYLIB" be added to ADIN1110 rather than
NET_VENDOR_ADI? Now with v6.8-rc6, PHYLIB and few other options are
forced to "Y" whenever NET_VENDOR_ADI is enabled (even with ADIN1110
disabled).

Michal

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* Re: [PATCH] net: ethernet: adi: requires PHYLIB support
  2024-02-26  6:44 ` Michal Kubecek
@ 2024-02-26  6:50   ` Randy Dunlap
  0 siblings, 0 replies; 5+ messages in thread
From: Randy Dunlap @ 2024-02-26  6:50 UTC (permalink / raw)
  To: Michal Kubecek
  Cc: linux-kernel, kernel test robot, Lennart Franzen,
	Alexandru Tachici, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, netdev

Hi,

On 2/25/24 22:44, Michal Kubecek wrote:
> On Wed, Feb 14, 2024 at 11:00:50PM -0800, Randy Dunlap wrote:
>> This driver uses functions that are supplied by the Kconfig symbol
>> PHYLIB, so select it to ensure that they are built as needed.
>>
>> When CONFIG_ADIN1110=y and CONFIG_PHYLIB=m, there are multiple build
>> (linker) errors that are resolved by this Kconfig change:
>>
>>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_open':
>>    drivers/net/ethernet/adi/adin1110.c:933: undefined reference to `phy_start'
>>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_probe_netdevs':
>>    drivers/net/ethernet/adi/adin1110.c:1603: undefined reference to `get_phy_device'
>>    ld: drivers/net/ethernet/adi/adin1110.c:1609: undefined reference to `phy_connect'
>>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
>>    drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to `phy_disconnect'
>>    ld: drivers/net/ethernet/adi/adin1110.o: in function `devm_mdiobus_alloc':
>>    include/linux/phy.h:455: undefined reference to `devm_mdiobus_alloc_size'
>>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_register_mdiobus':
>>    drivers/net/ethernet/adi/adin1110.c:529: undefined reference to `__devm_mdiobus_register'
>>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_net_stop':
>>    drivers/net/ethernet/adi/adin1110.c:958: undefined reference to `phy_stop'
>>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_disconnect_phy':
>>    drivers/net/ethernet/adi/adin1110.c:1226: undefined reference to `phy_disconnect'
>>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_adjust_link':
>>    drivers/net/ethernet/adi/adin1110.c:1077: undefined reference to `phy_print_status'
>>    ld: drivers/net/ethernet/adi/adin1110.o: in function `adin1110_ioctl':
>>    drivers/net/ethernet/adi/adin1110.c:790: undefined reference to `phy_do_ioctl'
>>    ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf60): undefined reference to `phy_ethtool_get_link_ksettings'
>>    ld: drivers/net/ethernet/adi/adin1110.o:(.rodata+0xf68): undefined reference to `phy_ethtool_set_link_ksettings'
>>
>> Fixes: bc93e19d088b ("net: ethernet: adi: Add ADIN1110 support")
>> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
>> Reported-by: kernel test robot <lkp@intel.com>
>> Closes: https://lore.kernel.org/oe-kbuild-all/202402070626.eZsfVHG5-lkp@intel.com/
>> Cc: Lennart Franzen <lennart@lfdomain.com>
>> Cc: Alexandru Tachici <alexandru.tachici@analog.com>
>> Cc: "David S. Miller" <davem@davemloft.net>
>> Cc: Eric Dumazet <edumazet@google.com>
>> Cc: Jakub Kicinski <kuba@kernel.org>
>> Cc: Paolo Abeni <pabeni@redhat.com>
>> Cc: netdev@vger.kernel.org
>> ---
>>  drivers/net/ethernet/adi/Kconfig |    1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff -- a/drivers/net/ethernet/adi/Kconfig b/drivers/net/ethernet/adi/Kconfig
>> --- a/drivers/net/ethernet/adi/Kconfig
>> +++ b/drivers/net/ethernet/adi/Kconfig
>> @@ -7,6 +7,7 @@ config NET_VENDOR_ADI
>>  	bool "Analog Devices devices"
>>  	default y
>>  	depends on SPI
>> +	select PHYLIB
>>  	help
>>  	  If you have a network (Ethernet) card belonging to this class, say Y.
> 
> Shouldn't the "select PHYLIB" be added to ADIN1110 rather than
> NET_VENDOR_ADI? Now with v6.8-rc6, PHYLIB and few other options are
> forced to "Y" whenever NET_VENDOR_ADI is enabled (even with ADIN1110
> disabled).

ugh, I believe that you are correct.
I'll send a corrected patch.

Thanks.
-- 
#Randy

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

end of thread, other threads:[~2024-02-26  6:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-15  7:00 [PATCH] net: ethernet: adi: requires PHYLIB support Randy Dunlap
2024-02-15  8:10 ` Nuno Sá
2024-02-16  9:50 ` patchwork-bot+netdevbpf
2024-02-26  6:44 ` Michal Kubecek
2024-02-26  6:50   ` Randy Dunlap

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