lkml.org 
[lkml]   [2024]   [Feb]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] net: ethernet: adi: requires PHYLIB support
From
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

\
 
 \ /
  Last update: 2024-05-27 15:21    [W:0.034 / U:0.436 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site