[xlnx:master 197/407] drivers/net/ethernet/xilinx/xilinx_tsn_ep.c:370:4: error: 'struct axienet_local' has no member named 'qbv_regs'
kernel test robot
lkp at intel.com
Thu Apr 29 15:36:09 BST 2021
Hi Pranavi,
FYI, the error/warning still remains.
tree: https://github.com/Xilinx/linux-xlnx master
head: 959c29b000f2d8576c7b56b53e559db140ee3952
commit: 1a67745a47fc9601447f7d8aff40ddb1023848d5 [197/407] net: xilinx: Access qdv address and associated properties separately
config: parisc-randconfig-r023-20210429 (attached as .config)
compiler: hppa-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/Xilinx/linux-xlnx/commit/1a67745a47fc9601447f7d8aff40ddb1023848d5
git remote add xlnx https://github.com/Xilinx/linux-xlnx
git fetch --no-tags xlnx master
git checkout 1a67745a47fc9601447f7d8aff40ddb1023848d5
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=parisc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>
All errors (new ones prefixed by >>):
In file included from include/linux/mm.h:99,
from include/linux/bvec.h:13,
from include/linux/skbuff.h:17,
from include/linux/if_ether.h:19,
from include/linux/etherdevice.h:20,
from drivers/net/ethernet/xilinx/xilinx_tsn_ep.c:18:
include/asm-generic/pgtable.h: In function 'pte_clear_not_present_full':
arch/parisc/include/asm/pgtable.h:91:9: warning: variable 'old_pte' set but not used [-Wunused-but-set-variable]
91 | pte_t old_pte; \
| ^~~~~~~
arch/parisc/include/asm/pgtable.h:316:34: note: in expansion of macro 'set_pte_at'
316 | #define pte_clear(mm, addr, xp) set_pte_at(mm, addr, xp, __pte(0))
| ^~~~~~~~~~
include/asm-generic/pgtable.h:201:2: note: in expansion of macro 'pte_clear'
201 | pte_clear(mm, address, ptep);
| ^~~~~~~~~
include/asm-generic/pgtable.h: In function '__ptep_modify_prot_commit':
arch/parisc/include/asm/pgtable.h:91:9: warning: variable 'old_pte' set but not used [-Wunused-but-set-variable]
91 | pte_t old_pte; \
| ^~~~~~~
include/asm-generic/pgtable.h:629:2: note: in expansion of macro 'set_pte_at'
629 | set_pte_at(vma->vm_mm, addr, ptep, pte);
| ^~~~~~~~~~
drivers/net/ethernet/xilinx/xilinx_tsn_ep.c: In function 'tsn_ep_probe':
>> drivers/net/ethernet/xilinx/xilinx_tsn_ep.c:370:4: error: 'struct axienet_local' has no member named 'qbv_regs'
370 | lp->qbv_regs = lp->regs;
| ^~
>> drivers/net/ethernet/xilinx/xilinx_tsn_ep.c:373:4: error: 'struct axienet_local' has no member named 'qbv_irq'
373 | lp->qbv_irq = platform_get_irq_byname(pdev, irq_name);
| ^~
>> drivers/net/ethernet/xilinx/xilinx_tsn_ep.c:374:2: error: implicit declaration of function 'axienet_qbv_init'; did you mean 'axienet_dma_q_init'? [-Werror=implicit-function-declaration]
374 | axienet_qbv_init(ndev);
| ^~~~~~~~~~~~~~~~
| axienet_dma_q_init
drivers/net/ethernet/xilinx/xilinx_tsn_ep.c: In function 'tsn_ep_remove':
>> drivers/net/ethernet/xilinx/xilinx_tsn_ep.c:392:2: error: implicit declaration of function 'axienet_qbv_remove'; did you mean 'axienet_bd_free'? [-Werror=implicit-function-declaration]
392 | axienet_qbv_remove(ndev);
| ^~~~~~~~~~~~~~~~~~
| axienet_bd_free
cc1: some warnings being treated as errors
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for PTP_1588_CLOCK
Depends on NET && POSIX_TIMERS
Selected by
- XILINX_AXI_EMAC_HWTSTAMP && NETDEVICES && ETHERNET && NET_VENDOR_XILINX && XILINX_AXI_EMAC
vim +370 drivers/net/ethernet/xilinx/xilinx_tsn_ep.c
281
282 /**
283 * tsn_ep_probe - TSN ep pointer probe function.
284 * @pdev: Pointer to platform device structure.
285 *
286 * Return: 0, on success
287 * Non-zero error value on failure.
288 *
289 * This is the probe routine for TSN endpoint driver.
290 */
291 static int tsn_ep_probe(struct platform_device *pdev)
292 {
293 int ret = 0;
294 struct axienet_local *lp;
295 struct net_device *ndev;
296 struct resource *ethres;
297 const void *mac_addr;
298 u16 num_tc = 0;
299 char irq_name[32];
300
301 ndev = alloc_netdev(sizeof(*lp), "ep", NET_NAME_UNKNOWN, ether_setup);
302 if (!ndev)
303 return -ENOMEM;
304
305 platform_set_drvdata(pdev, ndev);
306
307 SET_NETDEV_DEV(ndev, &pdev->dev);
308 ndev->flags &= ~IFF_MULTICAST; /* clear multicast */
309 ndev->features = NETIF_F_SG;
310 ndev->netdev_ops = &ep_netdev_ops;
311
312 /* MTU range: 64 - 9000 */
313 ndev->min_mtu = 64;
314 ndev->max_mtu = XAE_JUMBO_MTU;
315
316 lp = netdev_priv(ndev);
317 lp->ndev = ndev;
318 lp->dev = &pdev->dev;
319 lp->options = XAE_OPTION_DEFAULTS;
320 lp->tx_bd_num = TX_BD_NUM_DEFAULT;
321 lp->rx_bd_num = RX_BD_NUM_DEFAULT;
322
323 /* TODO
324 * there are two temacs or two slaves to ep
325 * get this infor from design?
326 */
327 lp->slaves[0] = NULL;
328 lp->slaves[1] = NULL;
329
330 lp->axienet_config = &tsn_endpoint_cfg;
331
332 lp->max_frm_size = XAE_MAX_VLAN_FRAME_SIZE;
333
334 /* Setup checksum offload, but default to off if not specified */
335 lp->features = 0;
336
337 lp->eth_hasnobuf = of_property_read_bool(pdev->dev.of_node,
338 "xlnx,eth-hasnobuf");
339
340 /* Retrieve the MAC address */
341 mac_addr = of_get_mac_address(pdev->dev.of_node);
342 if (!mac_addr) {
343 dev_err(&pdev->dev, "could not find MAC address\n");
344 goto free_netdev;
345 }
346 if (mac_addr)
347 ether_addr_copy(ndev->dev_addr, mac_addr);
348 if (!is_valid_ether_addr(ndev->dev_addr))
349 eth_hw_addr_random(ndev);
350
351 ret = tsn_mcdma_probe(pdev, lp, ndev);
352 if (ret) {
353 dev_err(&pdev->dev, "Getting MCDMA resource failed\n");
354 goto free_netdev;
355 }
356
357 ret = of_property_read_u16(
358 pdev->dev.of_node, "xlnx,num-tc", &num_tc);
359 if (ret || (num_tc != 2 && num_tc != 3))
360 lp->num_tc = XAE_MAX_TSN_TC;
361 else
362 lp->num_tc = num_tc;
363 /* Map device registers */
364 ethres = platform_get_resource(pdev, IORESOURCE_MEM, 0);
365 lp->regs = devm_ioremap_resource(&pdev->dev, ethres);
366 if (IS_ERR(lp->regs)) {
367 ret = PTR_ERR(lp->regs);
368 goto free_netdev;
369 }
> 370 lp->qbv_regs = lp->regs;
371
372 sprintf(irq_name, "tsn_ep_scheduler_irq");
> 373 lp->qbv_irq = platform_get_irq_byname(pdev, irq_name);
> 374 axienet_qbv_init(ndev);
375
376 ret = register_netdev(lp->ndev);
377 if (ret)
378 dev_err(lp->dev, "register_netdev() error (%i)\n", ret);
379
380 return ret;
381
382 free_netdev:
383 free_netdev(ndev);
384
385 return ret;
386 }
387
388 static int tsn_ep_remove(struct platform_device *pdev)
389 {
390 struct net_device *ndev = platform_get_drvdata(pdev);
391
> 392 axienet_qbv_remove(ndev);
393 unregister_netdev(ndev);
394
395 free_netdev(ndev);
396
397 return 0;
398 }
399
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 21534 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20210429/a73115c8/attachment-0001.gz>
More information about the linux-arm-kernel
mailing list