tree: https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-testing.git master head: d17be7f7503bf9492198a242779a68af93fd92de commit: 96c03618031bae5e9068b16f9e437b79f98f6482 [4/5] Merge remote-tracking branch 'mac80211-next/master' config: ia64-allyesconfig (attached as .config) compiler: ia64-linux-gcc (GCC) 6.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout 96c03618031bae5e9068b16f9e437b79f98f6482 # save the attached .config to linux build tree make.cross ARCH=ia64
All errors (new ones prefixed by >>): drivers/net/ethernet/marvell/mvpp2.c: In function 'mvpp2_port_probe': >> drivers/net/ethernet/marvell/mvpp2.c:7618:49: error: passing argument 4 of >> 'mvpp2_port_copy_mac_addr' from incompatible pointer type >> [-Werror=incompatible-pointer-types] mvpp2_port_copy_mac_addr(dev, priv, port_node, &mac_from); ^ drivers/net/ethernet/marvell/mvpp2.c:7468:13: note: expected 'char **' but argument is of type 'const char **' static void mvpp2_port_copy_mac_addr(struct net_device *dev, struct mvpp2 *priv, ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/marvell/mvpp2.c:7509:7: warning: unused variable 'hw_mac_addr' [-Wunused-variable] char hw_mac_addr[ETH_ALEN] = {0}; ^~~~~~~~~~~ drivers/net/ethernet/marvell/mvpp2.c:7507:14: warning: unused variable 'dt_mac_addr' [-Wunused-variable] const char *dt_mac_addr; ^~~~~~~~~~~ cc1: some warnings being treated as errors vim +/mvpp2_port_copy_mac_addr +7618 drivers/net/ethernet/marvell/mvpp2.c 3ba8c81e1 Antoine Tenart 2017-09-02 7495 3f518509d Marcin Wojtas 2014-07-10 7496 /* Ports initialization */ 3f518509d Marcin Wojtas 2014-07-10 7497 static int mvpp2_port_probe(struct platform_device *pdev, 3f518509d Marcin Wojtas 2014-07-10 7498 struct device_node *port_node, 59b9a31ed Thomas Petazzoni 2017-03-07 7499 struct mvpp2 *priv) 3f518509d Marcin Wojtas 2014-07-10 7500 { 3f518509d Marcin Wojtas 2014-07-10 7501 struct device_node *phy_node; 542897d98 Antoine Tenart 2017-08-30 7502 struct phy *comphy; 3f518509d Marcin Wojtas 2014-07-10 7503 struct mvpp2_port *port; edc660fa0 Marcin Wojtas 2015-08-06 7504 struct mvpp2_port_pcpu *port_pcpu; 3f518509d Marcin Wojtas 2014-07-10 7505 struct net_device *dev; 3f518509d Marcin Wojtas 2014-07-10 7506 struct resource *res; 3f518509d Marcin Wojtas 2014-07-10 7507 const char *dt_mac_addr; 96c036180 Bob Copeland 2017-09-04 7508 const char *mac_from = ""; 4c2286826 Antoine Tenart 2017-08-25 7509 char hw_mac_addr[ETH_ALEN] = {0}; 09f839755 Thomas Petazzoni 2017-08-03 7510 unsigned int ntxqs, nrxqs; 213f428f5 Thomas Petazzoni 2017-08-03 7511 bool has_tx_irqs; 3f518509d Marcin Wojtas 2014-07-10 7512 u32 id; 3f518509d Marcin Wojtas 2014-07-10 7513 int features; 3f518509d Marcin Wojtas 2014-07-10 7514 int phy_mode; edc660fa0 Marcin Wojtas 2015-08-06 7515 int err, i, cpu; 3f518509d Marcin Wojtas 2014-07-10 7516 213f428f5 Thomas Petazzoni 2017-08-03 7517 has_tx_irqs = mvpp2_port_has_tx_irqs(priv, port_node); 213f428f5 Thomas Petazzoni 2017-08-03 7518 213f428f5 Thomas Petazzoni 2017-08-03 7519 if (!has_tx_irqs) 213f428f5 Thomas Petazzoni 2017-08-03 7520 queue_mode = MVPP2_QDIST_SINGLE_MODE; 213f428f5 Thomas Petazzoni 2017-08-03 7521 09f839755 Thomas Petazzoni 2017-08-03 7522 ntxqs = MVPP2_MAX_TXQ; 213f428f5 Thomas Petazzoni 2017-08-03 7523 if (priv->hw_version == MVPP22 && queue_mode == MVPP2_QDIST_MULTI_MODE) 213f428f5 Thomas Petazzoni 2017-08-03 7524 nrxqs = MVPP2_DEFAULT_RXQ * num_possible_cpus(); 213f428f5 Thomas Petazzoni 2017-08-03 7525 else 09f839755 Thomas Petazzoni 2017-08-03 7526 nrxqs = MVPP2_DEFAULT_RXQ; 09f839755 Thomas Petazzoni 2017-08-03 7527 09f839755 Thomas Petazzoni 2017-08-03 7528 dev = alloc_etherdev_mqs(sizeof(*port), ntxqs, nrxqs); 3f518509d Marcin Wojtas 2014-07-10 7529 if (!dev) 3f518509d Marcin Wojtas 2014-07-10 7530 return -ENOMEM; 3f518509d Marcin Wojtas 2014-07-10 7531 3f518509d Marcin Wojtas 2014-07-10 7532 phy_node = of_parse_phandle(port_node, "phy", 0); 3f518509d Marcin Wojtas 2014-07-10 7533 phy_mode = of_get_phy_mode(port_node); 3f518509d Marcin Wojtas 2014-07-10 7534 if (phy_mode < 0) { 3f518509d Marcin Wojtas 2014-07-10 7535 dev_err(&pdev->dev, "incorrect phy mode\n"); 3f518509d Marcin Wojtas 2014-07-10 7536 err = phy_mode; 3f518509d Marcin Wojtas 2014-07-10 7537 goto err_free_netdev; 3f518509d Marcin Wojtas 2014-07-10 7538 } 3f518509d Marcin Wojtas 2014-07-10 7539 542897d98 Antoine Tenart 2017-08-30 7540 comphy = devm_of_phy_get(&pdev->dev, port_node, NULL); 542897d98 Antoine Tenart 2017-08-30 7541 if (IS_ERR(comphy)) { 542897d98 Antoine Tenart 2017-08-30 7542 if (PTR_ERR(comphy) == -EPROBE_DEFER) { 542897d98 Antoine Tenart 2017-08-30 7543 err = -EPROBE_DEFER; 542897d98 Antoine Tenart 2017-08-30 7544 goto err_free_netdev; 542897d98 Antoine Tenart 2017-08-30 7545 } 542897d98 Antoine Tenart 2017-08-30 7546 comphy = NULL; 542897d98 Antoine Tenart 2017-08-30 7547 } 542897d98 Antoine Tenart 2017-08-30 7548 3f518509d Marcin Wojtas 2014-07-10 7549 if (of_property_read_u32(port_node, "port-id", &id)) { 3f518509d Marcin Wojtas 2014-07-10 7550 err = -EINVAL; 3f518509d Marcin Wojtas 2014-07-10 7551 dev_err(&pdev->dev, "missing port-id value\n"); 3f518509d Marcin Wojtas 2014-07-10 7552 goto err_free_netdev; 3f518509d Marcin Wojtas 2014-07-10 7553 } 3f518509d Marcin Wojtas 2014-07-10 7554 3f518509d Marcin Wojtas 2014-07-10 7555 dev->tx_queue_len = MVPP2_MAX_TXD; 3f518509d Marcin Wojtas 2014-07-10 7556 dev->watchdog_timeo = 5 * HZ; 3f518509d Marcin Wojtas 2014-07-10 7557 dev->netdev_ops = &mvpp2_netdev_ops; 3f518509d Marcin Wojtas 2014-07-10 7558 dev->ethtool_ops = &mvpp2_eth_tool_ops; 3f518509d Marcin Wojtas 2014-07-10 7559 3f518509d Marcin Wojtas 2014-07-10 7560 port = netdev_priv(dev); 591f4cfab Thomas Petazzoni 2017-08-03 7561 port->dev = dev; 09f839755 Thomas Petazzoni 2017-08-03 7562 port->ntxqs = ntxqs; 09f839755 Thomas Petazzoni 2017-08-03 7563 port->nrxqs = nrxqs; 213f428f5 Thomas Petazzoni 2017-08-03 7564 port->priv = priv; 213f428f5 Thomas Petazzoni 2017-08-03 7565 port->has_tx_irqs = has_tx_irqs; 3f518509d Marcin Wojtas 2014-07-10 7566 591f4cfab Thomas Petazzoni 2017-08-03 7567 err = mvpp2_queue_vectors_init(port, port_node); 591f4cfab Thomas Petazzoni 2017-08-03 7568 if (err) 3f518509d Marcin Wojtas 2014-07-10 7569 goto err_free_netdev; 3f518509d Marcin Wojtas 2014-07-10 7570 fd3651b2a Antoine Tenart 2017-09-01 7571 port->link_irq = of_irq_get_byname(port_node, "link"); fd3651b2a Antoine Tenart 2017-09-01 7572 if (port->link_irq == -EPROBE_DEFER) { fd3651b2a Antoine Tenart 2017-09-01 7573 err = -EPROBE_DEFER; fd3651b2a Antoine Tenart 2017-09-01 7574 goto err_deinit_qvecs; fd3651b2a Antoine Tenart 2017-09-01 7575 } fd3651b2a Antoine Tenart 2017-09-01 7576 if (port->link_irq <= 0) fd3651b2a Antoine Tenart 2017-09-01 7577 /* the link irq is optional */ fd3651b2a Antoine Tenart 2017-09-01 7578 port->link_irq = 0; fd3651b2a Antoine Tenart 2017-09-01 7579 3f518509d Marcin Wojtas 2014-07-10 7580 if (of_property_read_bool(port_node, "marvell,loopback")) 3f518509d Marcin Wojtas 2014-07-10 7581 port->flags |= MVPP2_F_LOOPBACK; 3f518509d Marcin Wojtas 2014-07-10 7582 3f518509d Marcin Wojtas 2014-07-10 7583 port->id = id; 59b9a31ed Thomas Petazzoni 2017-03-07 7584 if (priv->hw_version == MVPP21) 09f839755 Thomas Petazzoni 2017-08-03 7585 port->first_rxq = port->id * port->nrxqs; 59b9a31ed Thomas Petazzoni 2017-03-07 7586 else 59b9a31ed Thomas Petazzoni 2017-03-07 7587 port->first_rxq = port->id * priv->max_port_rxqs; 59b9a31ed Thomas Petazzoni 2017-03-07 7588 3f518509d Marcin Wojtas 2014-07-10 7589 port->phy_node = phy_node; 3f518509d Marcin Wojtas 2014-07-10 7590 port->phy_interface = phy_mode; 542897d98 Antoine Tenart 2017-08-30 7591 port->comphy = comphy; 3f518509d Marcin Wojtas 2014-07-10 7592 a786841df Thomas Petazzoni 2017-03-07 7593 if (priv->hw_version == MVPP21) { a786841df Thomas Petazzoni 2017-03-07 7594 res = platform_get_resource(pdev, IORESOURCE_MEM, 2 + id); 3f518509d Marcin Wojtas 2014-07-10 7595 port->base = devm_ioremap_resource(&pdev->dev, res); 3f518509d Marcin Wojtas 2014-07-10 7596 if (IS_ERR(port->base)) { 3f518509d Marcin Wojtas 2014-07-10 7597 err = PTR_ERR(port->base); fd3651b2a Antoine Tenart 2017-09-01 7598 goto err_free_irq; 3f518509d Marcin Wojtas 2014-07-10 7599 } a786841df Thomas Petazzoni 2017-03-07 7600 } else { a786841df Thomas Petazzoni 2017-03-07 7601 if (of_property_read_u32(port_node, "gop-port-id", a786841df Thomas Petazzoni 2017-03-07 7602 &port->gop_id)) { a786841df Thomas Petazzoni 2017-03-07 7603 err = -EINVAL; a786841df Thomas Petazzoni 2017-03-07 7604 dev_err(&pdev->dev, "missing gop-port-id value\n"); 591f4cfab Thomas Petazzoni 2017-08-03 7605 goto err_deinit_qvecs; a786841df Thomas Petazzoni 2017-03-07 7606 } a786841df Thomas Petazzoni 2017-03-07 7607 a786841df Thomas Petazzoni 2017-03-07 7608 port->base = priv->iface_base + MVPP22_GMAC_BASE(port->gop_id); a786841df Thomas Petazzoni 2017-03-07 7609 } 3f518509d Marcin Wojtas 2014-07-10 7610 3f518509d Marcin Wojtas 2014-07-10 7611 /* Alloc per-cpu stats */ 3f518509d Marcin Wojtas 2014-07-10 7612 port->stats = netdev_alloc_pcpu_stats(struct mvpp2_pcpu_stats); 3f518509d Marcin Wojtas 2014-07-10 7613 if (!port->stats) { 3f518509d Marcin Wojtas 2014-07-10 7614 err = -ENOMEM; fd3651b2a Antoine Tenart 2017-09-01 7615 goto err_free_irq; 3f518509d Marcin Wojtas 2014-07-10 7616 } 3f518509d Marcin Wojtas 2014-07-10 7617 3ba8c81e1 Antoine Tenart 2017-09-02 @7618 mvpp2_port_copy_mac_addr(dev, priv, port_node, &mac_from); 3f518509d Marcin Wojtas 2014-07-10 7619 3f518509d Marcin Wojtas 2014-07-10 7620 port->tx_ring_size = MVPP2_MAX_TXD; 3f518509d Marcin Wojtas 2014-07-10 7621 port->rx_ring_size = MVPP2_MAX_RXD; 3f518509d Marcin Wojtas 2014-07-10 7622 SET_NETDEV_DEV(dev, &pdev->dev); 3f518509d Marcin Wojtas 2014-07-10 7623 3f518509d Marcin Wojtas 2014-07-10 7624 err = mvpp2_port_init(port); 3f518509d Marcin Wojtas 2014-07-10 7625 if (err < 0) { 3f518509d Marcin Wojtas 2014-07-10 7626 dev_err(&pdev->dev, "failed to init port %d\n", id); 3f518509d Marcin Wojtas 2014-07-10 7627 goto err_free_stats; 3f518509d Marcin Wojtas 2014-07-10 7628 } 269758214 Thomas Petazzoni 2017-03-07 7629 269758214 Thomas Petazzoni 2017-03-07 7630 mvpp2_port_periodic_xon_disable(port); 269758214 Thomas Petazzoni 2017-03-07 7631 269758214 Thomas Petazzoni 2017-03-07 7632 if (priv->hw_version == MVPP21) 269758214 Thomas Petazzoni 2017-03-07 7633 mvpp2_port_fc_adv_enable(port); 269758214 Thomas Petazzoni 2017-03-07 7634 269758214 Thomas Petazzoni 2017-03-07 7635 mvpp2_port_reset(port); 3f518509d Marcin Wojtas 2014-07-10 7636 edc660fa0 Marcin Wojtas 2015-08-06 7637 port->pcpu = alloc_percpu(struct mvpp2_port_pcpu); edc660fa0 Marcin Wojtas 2015-08-06 7638 if (!port->pcpu) { edc660fa0 Marcin Wojtas 2015-08-06 7639 err = -ENOMEM; edc660fa0 Marcin Wojtas 2015-08-06 7640 goto err_free_txq_pcpu; edc660fa0 Marcin Wojtas 2015-08-06 7641 } edc660fa0 Marcin Wojtas 2015-08-06 7642 213f428f5 Thomas Petazzoni 2017-08-03 7643 if (!port->has_tx_irqs) { edc660fa0 Marcin Wojtas 2015-08-06 7644 for_each_present_cpu(cpu) { edc660fa0 Marcin Wojtas 2015-08-06 7645 port_pcpu = per_cpu_ptr(port->pcpu, cpu); edc660fa0 Marcin Wojtas 2015-08-06 7646 edc660fa0 Marcin Wojtas 2015-08-06 7647 hrtimer_init(&port_pcpu->tx_done_timer, CLOCK_MONOTONIC, edc660fa0 Marcin Wojtas 2015-08-06 7648 HRTIMER_MODE_REL_PINNED); edc660fa0 Marcin Wojtas 2015-08-06 7649 port_pcpu->tx_done_timer.function = mvpp2_hr_timer_cb; edc660fa0 Marcin Wojtas 2015-08-06 7650 port_pcpu->timer_scheduled = false; edc660fa0 Marcin Wojtas 2015-08-06 7651 213f428f5 Thomas Petazzoni 2017-08-03 7652 tasklet_init(&port_pcpu->tx_done_tasklet, 213f428f5 Thomas Petazzoni 2017-08-03 7653 mvpp2_tx_proc_cb, edc660fa0 Marcin Wojtas 2015-08-06 7654 (unsigned long)dev); edc660fa0 Marcin Wojtas 2015-08-06 7655 } 213f428f5 Thomas Petazzoni 2017-08-03 7656 } edc660fa0 Marcin Wojtas 2015-08-06 7657 186cd4d4e Antoine Tenart 2017-08-23 7658 features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO; 3f518509d Marcin Wojtas 2014-07-10 7659 dev->features = features | NETIF_F_RXCSUM; 3f518509d Marcin Wojtas 2014-07-10 7660 dev->hw_features |= features | NETIF_F_RXCSUM | NETIF_F_GRO; 3f518509d Marcin Wojtas 2014-07-10 7661 dev->vlan_features |= features; 3f518509d Marcin Wojtas 2014-07-10 7662 5777987e0 Jarod Wilson 2016-10-17 7663 /* MTU range: 68 - 9676 */ 5777987e0 Jarod Wilson 2016-10-17 7664 dev->min_mtu = ETH_MIN_MTU; 5777987e0 Jarod Wilson 2016-10-17 7665 /* 9676 == 9700 - 20 and rounding to 8 */ 5777987e0 Jarod Wilson 2016-10-17 7666 dev->max_mtu = 9676; 5777987e0 Jarod Wilson 2016-10-17 7667 3f518509d Marcin Wojtas 2014-07-10 7668 err = register_netdev(dev); 3f518509d Marcin Wojtas 2014-07-10 7669 if (err < 0) { 3f518509d Marcin Wojtas 2014-07-10 7670 dev_err(&pdev->dev, "failed to register netdev\n"); edc660fa0 Marcin Wojtas 2015-08-06 7671 goto err_free_port_pcpu; 3f518509d Marcin Wojtas 2014-07-10 7672 } 3f518509d Marcin Wojtas 2014-07-10 7673 netdev_info(dev, "Using %s mac address %pM\n", mac_from, dev->dev_addr); 3f518509d Marcin Wojtas 2014-07-10 7674 3f518509d Marcin Wojtas 2014-07-10 7675 priv->port_list[id] = port; 3f518509d Marcin Wojtas 2014-07-10 7676 return 0; 3f518509d Marcin Wojtas 2014-07-10 7677 edc660fa0 Marcin Wojtas 2015-08-06 7678 err_free_port_pcpu: edc660fa0 Marcin Wojtas 2015-08-06 7679 free_percpu(port->pcpu); 3f518509d Marcin Wojtas 2014-07-10 7680 err_free_txq_pcpu: 09f839755 Thomas Petazzoni 2017-08-03 7681 for (i = 0; i < port->ntxqs; i++) 3f518509d Marcin Wojtas 2014-07-10 7682 free_percpu(port->txqs[i]->pcpu); 3f518509d Marcin Wojtas 2014-07-10 7683 err_free_stats: 3f518509d Marcin Wojtas 2014-07-10 7684 free_percpu(port->stats); fd3651b2a Antoine Tenart 2017-09-01 7685 err_free_irq: fd3651b2a Antoine Tenart 2017-09-01 7686 if (port->link_irq) fd3651b2a Antoine Tenart 2017-09-01 7687 irq_dispose_mapping(port->link_irq); 591f4cfab Thomas Petazzoni 2017-08-03 7688 err_deinit_qvecs: 591f4cfab Thomas Petazzoni 2017-08-03 7689 mvpp2_queue_vectors_deinit(port); 3f518509d Marcin Wojtas 2014-07-10 7690 err_free_netdev: ccb80393c Peter Chen 2016-08-01 7691 of_node_put(phy_node); 3f518509d Marcin Wojtas 2014-07-10 7692 free_netdev(dev); 3f518509d Marcin Wojtas 2014-07-10 7693 return err; 3f518509d Marcin Wojtas 2014-07-10 7694 } 3f518509d Marcin Wojtas 2014-07-10 7695 :::::: The code at line 7618 was first introduced by commit :::::: 3ba8c81e15c11fc396d0b5d11adaf9db6ed39533 net: mvpp2: move the mac retrieval/copy logic into its own function :::::: TO: Antoine Tenart <antoine.ten...@free-electrons.com> :::::: CC: David S. Miller <da...@davemloft.net> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: application/gzip