From: kernel test robot <lkp@intel.com>
To: Jiawen Wu <jiawenwu@trustnetic.com>
Cc: oe-kbuild-all@lists.linux.dev,
Linux Memory Management List <linux-mm@kvack.org>,
"Russell King (Oracle)" <rmk+kernel@armlinux.org.uk>
Subject: [linux-next:master 11985/13109] drivers/net/ethernet/wangxun/ngbe/ngbe_main.c:339:undefined reference to `phylink_stop'
Date: Thu, 11 Jan 2024 06:56:09 +0800 [thread overview]
Message-ID: <202401110606.hnUEDCxw-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 8cb47d7cd090a690c1785385b2f3d407d4a53ad0
commit: bc2426d74aa35cd8ec9c97a253ef57c2c5cd730c [11985/13109] net: ngbe: convert phylib to phylink
config: arm64-randconfig-r003-20221211 (https://download.01.org/0day-ci/archive/20240111/202401110606.hnUEDCxw-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240111/202401110606.hnUEDCxw-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202401110606.hnUEDCxw-lkp@intel.com/
All errors (new ones prefixed by >>):
aarch64-linux-ld: Unexpected GOT/PLT entries detected!
aarch64-linux-ld: Unexpected run-time procedure linkages detected!
aarch64-linux-ld: drivers/net/ethernet/wangxun/libwx/wx_ethtool.o: in function `wx_nway_reset':
drivers/net/ethernet/wangxun/libwx/wx_ethtool.c:193:(.text+0x560): undefined reference to `phylink_ethtool_nway_reset'
aarch64-linux-ld: drivers/net/ethernet/wangxun/libwx/wx_ethtool.o: in function `wx_get_link_ksettings':
drivers/net/ethernet/wangxun/libwx/wx_ethtool.c:202:(.text+0x5a0): undefined reference to `phylink_ethtool_ksettings_get'
aarch64-linux-ld: drivers/net/ethernet/wangxun/libwx/wx_ethtool.o: in function `wx_set_link_ksettings':
drivers/net/ethernet/wangxun/libwx/wx_ethtool.c:211:(.text+0x5e0): undefined reference to `phylink_ethtool_ksettings_set'
aarch64-linux-ld: drivers/net/ethernet/wangxun/ngbe/ngbe_main.o: in function `ngbe_close':
>> drivers/net/ethernet/wangxun/ngbe/ngbe_main.c:339:(.text+0x26c): undefined reference to `phylink_stop'
>> aarch64-linux-ld: drivers/net/ethernet/wangxun/ngbe/ngbe_main.c:433:(.text+0x29c): undefined reference to `phylink_disconnect_phy'
aarch64-linux-ld: drivers/net/ethernet/wangxun/ngbe/ngbe_main.o: in function `ngbe_remove':
>> drivers/net/ethernet/wangxun/ngbe/ngbe_main.c:714:(.text+0x374): undefined reference to `phylink_destroy'
aarch64-linux-ld: drivers/net/ethernet/wangxun/ngbe/ngbe_main.o: in function `ngbe_probe':
drivers/net/ethernet/wangxun/ngbe/ngbe_main.c:684:(.text+0xe5c): undefined reference to `phylink_destroy'
aarch64-linux-ld: drivers/net/ethernet/wangxun/ngbe/ngbe_main.o: in function `ngbe_open':
>> drivers/net/ethernet/wangxun/ngbe/ngbe_main.c:391:(.text+0x1098): undefined reference to `phylink_connect_phy'
aarch64-linux-ld: drivers/net/ethernet/wangxun/ngbe/ngbe_main.c:362:(.text+0x1250): undefined reference to `phylink_start'
aarch64-linux-ld: drivers/net/ethernet/wangxun/ngbe/ngbe_main.c:407:(.text+0x1260): undefined reference to `phylink_disconnect_phy'
aarch64-linux-ld: drivers/net/ethernet/wangxun/ngbe/ngbe_mdio.o: in function `ngbe_mdio_init':
drivers/net/ethernet/wangxun/ngbe/ngbe_mdio.c:128:(.text+0x4f4): undefined reference to `phylink_create'
vim +339 drivers/net/ethernet/wangxun/ngbe/ngbe_main.c
336
337 static void ngbe_down(struct wx *wx)
338 {
> 339 phylink_stop(wx->phylink);
340 ngbe_disable_device(wx);
341 wx_clean_all_tx_rings(wx);
342 wx_clean_all_rx_rings(wx);
343 }
344
345 static void ngbe_up(struct wx *wx)
346 {
347 wx_configure_vectors(wx);
348
349 /* make sure to complete pre-operations */
350 smp_mb__before_atomic();
351 wx_napi_enable_all(wx);
352 /* enable transmits */
353 netif_tx_start_all_queues(wx->netdev);
354
355 /* clear any pending interrupts, may auto mask */
356 rd32(wx, WX_PX_IC(0));
357 rd32(wx, WX_PX_MISC_IC);
358 ngbe_irq_enable(wx, true);
359 if (wx->gpio_ctrl)
360 ngbe_sfp_modules_txrx_powerctl(wx, true);
361
362 phylink_start(wx->phylink);
363 }
364
365 /**
366 * ngbe_open - Called when a network interface is made active
367 * @netdev: network interface device structure
368 *
369 * Returns 0 on success, negative value on failure
370 *
371 * The open entry point is called when a network interface is made
372 * active by the system (IFF_UP).
373 **/
374 static int ngbe_open(struct net_device *netdev)
375 {
376 struct wx *wx = netdev_priv(netdev);
377 int err;
378
379 wx_control_hw(wx, true);
380
381 err = wx_setup_resources(wx);
382 if (err)
383 return err;
384
385 wx_configure(wx);
386
387 err = ngbe_request_irq(wx);
388 if (err)
389 goto err_free_resources;
390
> 391 err = phylink_connect_phy(wx->phylink, wx->phydev);
392 if (err)
393 goto err_free_irq;
394
395 err = netif_set_real_num_tx_queues(netdev, wx->num_tx_queues);
396 if (err)
397 goto err_dis_phy;
398
399 err = netif_set_real_num_rx_queues(netdev, wx->num_rx_queues);
400 if (err)
401 goto err_dis_phy;
402
403 ngbe_up(wx);
404
405 return 0;
406 err_dis_phy:
407 phylink_disconnect_phy(wx->phylink);
408 err_free_irq:
409 wx_free_irq(wx);
410 err_free_resources:
411 wx_free_resources(wx);
412 return err;
413 }
414
415 /**
416 * ngbe_close - Disables a network interface
417 * @netdev: network interface device structure
418 *
419 * Returns 0, this is not allowed to fail
420 *
421 * The close entry point is called when an interface is de-activated
422 * by the OS. The hardware is still under the drivers control, but
423 * needs to be disabled. A global MAC reset is issued to stop the
424 * hardware, and all transmit and receive resources are freed.
425 **/
426 static int ngbe_close(struct net_device *netdev)
427 {
428 struct wx *wx = netdev_priv(netdev);
429
430 ngbe_down(wx);
431 wx_free_irq(wx);
432 wx_free_resources(wx);
> 433 phylink_disconnect_phy(wx->phylink);
434 wx_control_hw(wx, false);
435
436 return 0;
437 }
438
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2024-01-10 22:57 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202401110606.hnUEDCxw-lkp@intel.com \
--to=lkp@intel.com \
--cc=jiawenwu@trustnetic.com \
--cc=linux-mm@kvack.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=rmk+kernel@armlinux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox