diff mbox series

[PATCHv3,net-next,9/9] net: ibm: emac: get rid of wol_irq

Message ID 20240905201506.12679-10-rosenp@gmail.com (mailing list archive)
State Superseded
Delegated to: Netdev Maintainers
Headers show
Series net: ibm: emac: modernize a bit | expand

Checks

Context Check Description
netdev/series_format success Posting correctly formatted
netdev/tree_selection success Clearly marked for net-next
netdev/ynl success Generated files up to date; no warnings/errors; no diff in generated;
netdev/fixes_present success Fixes tag not required for -next series
netdev/header_inline success No static functions without inline keyword in header files
netdev/build_32bit success Errors and warnings before: 7 this patch: 7
netdev/build_tools success No tools touched, skip
netdev/cc_maintainers success CCed 5 of 5 maintainers
netdev/build_clang success Errors and warnings before: 7 this patch: 7
netdev/verify_signedoff success Signed-off-by tag matches author and committer
netdev/deprecated_api success None detected
netdev/check_selftest success No net selftest shell script
netdev/verify_fixes success No Fixes tag
netdev/build_allmodconfig_warn success Errors and warnings before: 7 this patch: 7
netdev/checkpatch success total: 0 errors, 0 warnings, 0 checks, 28 lines checked
netdev/build_clang_rust success No Rust files in patch. Skipping build
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/source_inline success Was 0 now: 0
netdev/contest success net-next-2024-09-07--06-00 (tests: 722)

Commit Message

Rosen Penev Sept. 5, 2024, 8:15 p.m. UTC
This is completely unused.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
 drivers/net/ethernet/ibm/emac/core.c | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

Comments

Andrew Lunn Sept. 5, 2024, 9:27 p.m. UTC | #1
On Thu, Sep 05, 2024 at 01:15:06PM -0700, Rosen Penev wrote:
> This is completely unused.
> 
> Signed-off-by: Rosen Penev <rosenp@gmail.com>

Seems reasonable, since there does not appear to be any WoL
support.

However, it might be possible to wire it up? You might then need the
interrupt? This patch could then be reverted if it is actually needed.

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew
Rosen Penev Sept. 5, 2024, 10:28 p.m. UTC | #2
On Thu, Sep 5, 2024 at 2:27 PM Andrew Lunn <andrew@lunn.ch> wrote:
>
> On Thu, Sep 05, 2024 at 01:15:06PM -0700, Rosen Penev wrote:
> > This is completely unused.
> >
> > Signed-off-by: Rosen Penev <rosenp@gmail.com>
>
> Seems reasonable, since there does not appear to be any WoL
> support.
>
> However, it might be possible to wire it up? You might then need the
> interrupt? This patch could then be reverted if it is actually needed.
I have no idea how to do so. Actually the device I have probably
doesn't support WoL. I'll leave that for someone else to figure out.
>
> Reviewed-by: Andrew Lunn <andrew@lunn.ch>
>
>     Andrew
kernel test robot Sept. 7, 2024, 6:29 p.m. UTC | #3
Hi Rosen,

kernel test robot noticed the following build errors:

[auto build test ERROR on net-next/main]

url:    https://github.com/intel-lab-lkp/linux/commits/Rosen-Penev/net-ibm-emac-use-devm-for-alloc_etherdev/20240906-042738
base:   net-next/main
patch link:    https://lore.kernel.org/r/20240905201506.12679-10-rosenp%40gmail.com
patch subject: [PATCHv3 net-next 9/9] net: ibm: emac: get rid of wol_irq
config: powerpc-redwood_defconfig (https://download.01.org/0day-ci/archive/20240908/202409080218.RmYLjpwK-lkp@intel.com/config)
compiler: powerpc-linux-gcc (GCC) 13.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240908/202409080218.RmYLjpwK-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/202409080218.RmYLjpwK-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/net/ethernet/ibm/emac/core.c: In function 'emac_probe':
>> drivers/net/ethernet/ibm/emac/core.c:3060:17: error: label 'err_irq_unmap' used but not defined
    3060 |                 goto err_irq_unmap;
         |                 ^~~~


vim +/err_irq_unmap +3060 drivers/net/ethernet/ibm/emac/core.c

15efc02b2625f1 drivers/net/ibm_newemac/core.c       Alexander Beregalov 2009-04-09  2988  
fe17dc1e2bae85 drivers/net/ethernet/ibm/emac/core.c Bill Pemberton      2012-12-03  2989  static int emac_probe(struct platform_device *ofdev)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2990  {
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2991  	struct net_device *ndev;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2992  	struct emac_instance *dev;
61c7a080a5a061 drivers/net/ibm_newemac/core.c       Grant Likely        2010-04-13  2993  	struct device_node *np = ofdev->dev.of_node;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2994  	struct device_node **blist = NULL;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2995  	int err, i;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2996  
be63c09afe9153 drivers/net/ibm_newemac/core.c       Josh Boyer          2008-04-22  2997  	/* Skip unused/unwired EMACS.  We leave the check for an unused
be63c09afe9153 drivers/net/ibm_newemac/core.c       Josh Boyer          2008-04-22  2998  	 * property here for now, but new flat device trees should set a
be63c09afe9153 drivers/net/ibm_newemac/core.c       Josh Boyer          2008-04-22  2999  	 * status property to "disabled" instead.
be63c09afe9153 drivers/net/ibm_newemac/core.c       Josh Boyer          2008-04-22  3000  	 */
1a87e641d8a50c drivers/net/ethernet/ibm/emac/core.c Rob Herring         2023-03-14  3001  	if (of_property_read_bool(np, "unused") || !of_device_is_available(np))
3d722562d73483 drivers/net/ibm_newemac/core.c       Hugh Blemings       2007-12-05  3002  		return -ENODEV;
3d722562d73483 drivers/net/ibm_newemac/core.c       Hugh Blemings       2007-12-05  3003  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3004  	/* Find ourselves in the bootlist if we are there */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3005  	for (i = 0; i < EMAC_BOOT_LIST_SIZE; i++)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3006  		if (emac_boot_list[i] == np)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3007  			blist = &emac_boot_list[i];
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3008  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3009  	/* Allocate our net_device structure */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3010  	err = -ENOMEM;
c7de481bca2013 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3011  	ndev = devm_alloc_etherdev(&ofdev->dev, sizeof(struct emac_instance));
41de8d4cff21a2 drivers/net/ethernet/ibm/emac/core.c Joe Perches         2012-01-29  3012  	if (!ndev)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3013  		goto err_gone;
41de8d4cff21a2 drivers/net/ethernet/ibm/emac/core.c Joe Perches         2012-01-29  3014  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3015  	dev = netdev_priv(ndev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3016  	dev->ndev = ndev;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3017  	dev->ofdev = ofdev;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3018  	dev->blist = blist;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3019  	SET_NETDEV_DEV(ndev, &ofdev->dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3020  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3021  	/* Initialize some embedded data structures */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3022  	mutex_init(&dev->mdio_lock);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3023  	mutex_init(&dev->link_lock);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3024  	spin_lock_init(&dev->lock);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3025  	INIT_WORK(&dev->reset_work, emac_reset_work);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3026  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3027  	/* Init various config data based on device-tree */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3028  	err = emac_init_config(dev);
138b57f0f89387 drivers/net/ethernet/ibm/emac/core.c Christophe Jaillet  2017-08-20  3029  	if (err)
c7de481bca2013 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3030  		goto err_gone;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3031  
cabb2424d4d5d4 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3032  	/* Get interrupts. EMAC irq is mandatory */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3033  	dev->emac_irq = irq_of_parse_and_map(np, 0);
99c1790e5bbd31 drivers/net/ethernet/ibm/emac/core.c Michael Ellerman    2016-09-10  3034  	if (!dev->emac_irq) {
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3035  		printk(KERN_ERR "%pOF: Can't map main interrupt\n", np);
138b57f0f89387 drivers/net/ethernet/ibm/emac/core.c Christophe Jaillet  2017-08-20  3036  		err = -ENODEV;
c7de481bca2013 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3037  		goto err_gone;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3038  	}
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3039  
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3040  	/* Setup error IRQ handler */
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3041  	err = devm_request_irq(&ofdev->dev, dev->emac_irq, emac_irq, 0, "EMAC", dev);
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3042  	if (err) {
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3043  		dev_err_probe(&ofdev->dev, err, "failed to request IRQ %d", dev->emac_irq);
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3044  		goto err_gone;
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3045  	}
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3046  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3047  	ndev->irq = dev->emac_irq;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3048  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3049  	/* Map EMAC regs */
138b57f0f89387 drivers/net/ethernet/ibm/emac/core.c Christophe Jaillet  2017-08-20  3050  	// TODO : platform_get_resource() and devm_ioremap_resource()
154cc24d587dd8 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3051  	dev->emacp = devm_of_iomap(&ofdev->dev, np, 0, NULL);
154cc24d587dd8 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3052  	if (!dev->emacp) {
154cc24d587dd8 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3053  		err = dev_err_probe(&ofdev->dev, -ENOMEM, "can't map device registers");
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3054  		goto err_irq_unmap;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3055  	}
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3056  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3057  	/* Wait for dependent devices */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3058  	err = emac_wait_deps(dev);
b941327b6eb37f drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3059  	if (err)
154cc24d587dd8 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05 @3060  		goto err_irq_unmap;
bc353832565635 drivers/net/ethernet/ibm/emac/core.c Jingoo Han          2013-09-02  3061  	dev->mal = platform_get_drvdata(dev->mal_dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3062  	if (dev->mdio_dev != NULL)
bc353832565635 drivers/net/ethernet/ibm/emac/core.c Jingoo Han          2013-09-02  3063  		dev->mdio_instance = platform_get_drvdata(dev->mdio_dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3064  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3065  	/* Register with MAL */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3066  	dev->commac.ops = &emac_commac_ops;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3067  	dev->commac.dev = dev;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3068  	dev->commac.tx_chan_mask = MAL_CHAN_MASK(dev->mal_tx_chan);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3069  	dev->commac.rx_chan_mask = MAL_CHAN_MASK(dev->mal_rx_chan);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3070  	err = mal_register_commac(dev->mal, &dev->commac);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3071  	if (err) {
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3072  		printk(KERN_ERR "%pOF: failed to register with mal %pOF!\n",
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3073  		       np, dev->mal_dev->dev.of_node);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3074  		goto err_rel_deps;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3075  	}
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3076  	dev->rx_skb_size = emac_rx_skb_size(ndev->mtu);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3077  	dev->rx_sync_size = emac_rx_sync_size(ndev->mtu);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3078  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3079  	/* Get pointers to BD rings */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3080  	dev->tx_desc =
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3081  	    dev->mal->bd_virt + mal_tx_bd_offset(dev->mal, dev->mal_tx_chan);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3082  	dev->rx_desc =
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3083  	    dev->mal->bd_virt + mal_rx_bd_offset(dev->mal, dev->mal_rx_chan);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3084  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3085  	DBG(dev, "tx_desc %p" NL, dev->tx_desc);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3086  	DBG(dev, "rx_desc %p" NL, dev->rx_desc);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3087  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3088  	/* Clean rings */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3089  	memset(dev->tx_desc, 0, NUM_TX_BUFF * sizeof(struct mal_descriptor));
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3090  	memset(dev->rx_desc, 0, NUM_RX_BUFF * sizeof(struct mal_descriptor));
ab9b30cc3ec868 drivers/net/ibm_newemac/core.c       Sathya Narayanan    2008-07-01  3091  	memset(dev->tx_skb, 0, NUM_TX_BUFF * sizeof(struct sk_buff *));
ab9b30cc3ec868 drivers/net/ibm_newemac/core.c       Sathya Narayanan    2008-07-01  3092  	memset(dev->rx_skb, 0, NUM_RX_BUFF * sizeof(struct sk_buff *));
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3093  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3094  	/* Attach to ZMII, if needed */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3095  	if (emac_has_feature(dev, EMAC_FTR_HAS_ZMII) &&
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3096  	    (err = zmii_attach(dev->zmii_dev, dev->zmii_port, &dev->phy_mode)) != 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3097  		goto err_unreg_commac;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3098  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3099  	/* Attach to RGMII, if needed */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3100  	if (emac_has_feature(dev, EMAC_FTR_HAS_RGMII) &&
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3101  	    (err = rgmii_attach(dev->rgmii_dev, dev->rgmii_port, dev->phy_mode)) != 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3102  		goto err_detach_zmii;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3103  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3104  	/* Attach to TAH, if needed */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3105  	if (emac_has_feature(dev, EMAC_FTR_HAS_TAH) &&
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3106  	    (err = tah_attach(dev->tah_dev, dev->tah_port)) != 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3107  		goto err_detach_rgmii;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3108  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3109  	/* Set some link defaults before we can find out real parameters */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3110  	dev->phy.speed = SPEED_100;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3111  	dev->phy.duplex = DUPLEX_FULL;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3112  	dev->phy.autoneg = AUTONEG_DISABLE;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3113  	dev->phy.pause = dev->phy.asym_pause = 0;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3114  	dev->stop_timeout = STOP_TIMEOUT_100;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3115  	INIT_DELAYED_WORK(&dev->link_work, emac_link_timer);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3116  
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3117  	/* Some SoCs like APM821xx does not support Half Duplex mode. */
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3118  	if (emac_has_feature(dev, EMAC_FTR_APM821XX_NO_HALF_DUPLEX)) {
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3119  		dev->phy_feat_exc = (SUPPORTED_1000baseT_Half |
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3120  				     SUPPORTED_100baseT_Half |
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3121  				     SUPPORTED_10baseT_Half);
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3122  	}
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3123  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3124  	/* Find PHY if any */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3125  	err = emac_init_phy(dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3126  	if (err != 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3127  		goto err_detach_tah;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3128  
5e4011e2b8032c drivers/net/ibm_newemac/core.c       Michał Mirosław     2011-04-17  3129  	if (dev->tah_dev) {
5e4011e2b8032c drivers/net/ibm_newemac/core.c       Michał Mirosław     2011-04-17  3130  		ndev->hw_features = NETIF_F_IP_CSUM | NETIF_F_SG;
5e4011e2b8032c drivers/net/ibm_newemac/core.c       Michał Mirosław     2011-04-17  3131  		ndev->features |= ndev->hw_features | NETIF_F_RXCSUM;
5e4011e2b8032c drivers/net/ibm_newemac/core.c       Michał Mirosław     2011-04-17  3132  	}
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3133  	ndev->watchdog_timeo = 5 * HZ;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3134  	if (emac_phy_supports_gige(dev->phy_mode)) {
15efc02b2625f1 drivers/net/ibm_newemac/core.c       Alexander Beregalov 2009-04-09  3135  		ndev->netdev_ops = &emac_gige_netdev_ops;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3136  		dev->commac.ops = &emac_commac_sg_ops;
15efc02b2625f1 drivers/net/ibm_newemac/core.c       Alexander Beregalov 2009-04-09  3137  	} else
15efc02b2625f1 drivers/net/ibm_newemac/core.c       Alexander Beregalov 2009-04-09  3138  		ndev->netdev_ops = &emac_netdev_ops;
7ad24ea4bf620a drivers/net/ethernet/ibm/emac/core.c Wilfried Klaebe     2014-05-11  3139  	ndev->ethtool_ops = &emac_ethtool_ops;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3140  
3d5d96acfeb9dd drivers/net/ethernet/ibm/emac/core.c Jarod Wilson        2016-10-17  3141  	/* MTU range: 46 - 1500 or whatever is in OF */
3d5d96acfeb9dd drivers/net/ethernet/ibm/emac/core.c Jarod Wilson        2016-10-17  3142  	ndev->min_mtu = EMAC_MIN_MTU;
3d5d96acfeb9dd drivers/net/ethernet/ibm/emac/core.c Jarod Wilson        2016-10-17  3143  	ndev->max_mtu = dev->max_mtu;
3d5d96acfeb9dd drivers/net/ethernet/ibm/emac/core.c Jarod Wilson        2016-10-17  3144  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3145  	netif_carrier_off(ndev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3146  
19245845d17958 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3147  	err = devm_register_netdev(&ofdev->dev, ndev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3148  	if (err) {
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3149  		printk(KERN_ERR "%pOF: failed to register net device (%d)!\n",
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3150  		       np, err);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3151  		goto err_detach_tah;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3152  	}
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3153  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3154  	/* Set our drvdata last as we don't want them visible until we are
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3155  	 * fully initialized
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3156  	 */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3157  	wmb();
bc353832565635 drivers/net/ethernet/ibm/emac/core.c Jingoo Han          2013-09-02  3158  	platform_set_drvdata(ofdev, dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3159  
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3160  	printk(KERN_INFO "%s: EMAC-%d %pOF, MAC %pM\n",
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3161  	       ndev->name, dev->cell_index, np, ndev->dev_addr);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3162  
78b69921a12568 drivers/net/ethernet/ibm/emac/core.c Christian Lamparter 2017-12-20  3163  	if (dev->phy_mode == PHY_INTERFACE_MODE_SGMII)
9e3cb29497561c drivers/net/ibm_newemac/core.c       Victor Gallardo     2008-10-01  3164  		printk(KERN_NOTICE "%s: in SGMII mode\n", ndev->name);
9e3cb29497561c drivers/net/ibm_newemac/core.c       Victor Gallardo     2008-10-01  3165  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3166  	if (dev->phy.address >= 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3167  		printk("%s: found %s PHY (0x%02x)\n", ndev->name,
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3168  		       dev->phy.def->name, dev->phy.address);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3169  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3170  	/* Life is good */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3171  	return 0;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3172  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3173  	/* I have a bad feeling about this ... */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3174  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3175   err_detach_tah:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3176  	if (emac_has_feature(dev, EMAC_FTR_HAS_TAH))
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3177  		tah_detach(dev->tah_dev, dev->tah_port);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3178   err_detach_rgmii:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3179  	if (emac_has_feature(dev, EMAC_FTR_HAS_RGMII))
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3180  		rgmii_detach(dev->rgmii_dev, dev->rgmii_port);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3181   err_detach_zmii:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3182  	if (emac_has_feature(dev, EMAC_FTR_HAS_ZMII))
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3183  		zmii_detach(dev->zmii_dev, dev->zmii_port);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3184   err_unreg_commac:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3185  	mal_unregister_commac(dev->mal, &dev->commac);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3186   err_rel_deps:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3187  	emac_put_deps(dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3188   err_gone:
b941327b6eb37f drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3189  	if (blist)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3190  		*blist = NULL;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3191  	return err;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3192  }
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3193
kernel test robot Sept. 7, 2024, 11:11 p.m. UTC | #4
Hi Rosen,

kernel test robot noticed the following build errors:

[auto build test ERROR on net-next/main]

url:    https://github.com/intel-lab-lkp/linux/commits/Rosen-Penev/net-ibm-emac-use-devm-for-alloc_etherdev/20240906-042738
base:   net-next/main
patch link:    https://lore.kernel.org/r/20240905201506.12679-10-rosenp%40gmail.com
patch subject: [PATCHv3 net-next 9/9] net: ibm: emac: get rid of wol_irq
config: powerpc-ebony_defconfig (https://download.01.org/0day-ci/archive/20240908/202409080648.nbPtsrf6-lkp@intel.com/config)
compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 05f5a91d00b02f4369f46d076411c700755ae041)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240908/202409080648.nbPtsrf6-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/202409080648.nbPtsrf6-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from drivers/net/ethernet/ibm/emac/core.c:28:
   In file included from include/linux/pci.h:38:
   In file included from include/linux/interrupt.h:11:
   In file included from include/linux/hardirq.h:11:
   In file included from arch/powerpc/include/asm/hardirq.h:6:
   In file included from include/linux/irq.h:20:
   In file included from include/linux/io.h:14:
   In file included from arch/powerpc/include/asm/io.h:24:
   In file included from include/linux/mm.h:2228:
   include/linux/vmstat.h:517:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
     517 |         return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
         |                               ~~~~~~~~~~~ ^ ~~~
>> drivers/net/ethernet/ibm/emac/core.c:3054:8: error: use of undeclared label 'err_irq_unmap'
    3054 |                 goto err_irq_unmap;
         |                      ^
   1 warning and 1 error generated.


vim +/err_irq_unmap +3054 drivers/net/ethernet/ibm/emac/core.c

15efc02b2625f1 drivers/net/ibm_newemac/core.c       Alexander Beregalov 2009-04-09  2988  
fe17dc1e2bae85 drivers/net/ethernet/ibm/emac/core.c Bill Pemberton      2012-12-03  2989  static int emac_probe(struct platform_device *ofdev)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2990  {
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2991  	struct net_device *ndev;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2992  	struct emac_instance *dev;
61c7a080a5a061 drivers/net/ibm_newemac/core.c       Grant Likely        2010-04-13  2993  	struct device_node *np = ofdev->dev.of_node;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2994  	struct device_node **blist = NULL;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2995  	int err, i;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  2996  
be63c09afe9153 drivers/net/ibm_newemac/core.c       Josh Boyer          2008-04-22  2997  	/* Skip unused/unwired EMACS.  We leave the check for an unused
be63c09afe9153 drivers/net/ibm_newemac/core.c       Josh Boyer          2008-04-22  2998  	 * property here for now, but new flat device trees should set a
be63c09afe9153 drivers/net/ibm_newemac/core.c       Josh Boyer          2008-04-22  2999  	 * status property to "disabled" instead.
be63c09afe9153 drivers/net/ibm_newemac/core.c       Josh Boyer          2008-04-22  3000  	 */
1a87e641d8a50c drivers/net/ethernet/ibm/emac/core.c Rob Herring         2023-03-14  3001  	if (of_property_read_bool(np, "unused") || !of_device_is_available(np))
3d722562d73483 drivers/net/ibm_newemac/core.c       Hugh Blemings       2007-12-05  3002  		return -ENODEV;
3d722562d73483 drivers/net/ibm_newemac/core.c       Hugh Blemings       2007-12-05  3003  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3004  	/* Find ourselves in the bootlist if we are there */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3005  	for (i = 0; i < EMAC_BOOT_LIST_SIZE; i++)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3006  		if (emac_boot_list[i] == np)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3007  			blist = &emac_boot_list[i];
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3008  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3009  	/* Allocate our net_device structure */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3010  	err = -ENOMEM;
c7de481bca2013 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3011  	ndev = devm_alloc_etherdev(&ofdev->dev, sizeof(struct emac_instance));
41de8d4cff21a2 drivers/net/ethernet/ibm/emac/core.c Joe Perches         2012-01-29  3012  	if (!ndev)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3013  		goto err_gone;
41de8d4cff21a2 drivers/net/ethernet/ibm/emac/core.c Joe Perches         2012-01-29  3014  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3015  	dev = netdev_priv(ndev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3016  	dev->ndev = ndev;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3017  	dev->ofdev = ofdev;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3018  	dev->blist = blist;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3019  	SET_NETDEV_DEV(ndev, &ofdev->dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3020  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3021  	/* Initialize some embedded data structures */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3022  	mutex_init(&dev->mdio_lock);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3023  	mutex_init(&dev->link_lock);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3024  	spin_lock_init(&dev->lock);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3025  	INIT_WORK(&dev->reset_work, emac_reset_work);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3026  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3027  	/* Init various config data based on device-tree */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3028  	err = emac_init_config(dev);
138b57f0f89387 drivers/net/ethernet/ibm/emac/core.c Christophe Jaillet  2017-08-20  3029  	if (err)
c7de481bca2013 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3030  		goto err_gone;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3031  
cabb2424d4d5d4 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3032  	/* Get interrupts. EMAC irq is mandatory */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3033  	dev->emac_irq = irq_of_parse_and_map(np, 0);
99c1790e5bbd31 drivers/net/ethernet/ibm/emac/core.c Michael Ellerman    2016-09-10  3034  	if (!dev->emac_irq) {
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3035  		printk(KERN_ERR "%pOF: Can't map main interrupt\n", np);
138b57f0f89387 drivers/net/ethernet/ibm/emac/core.c Christophe Jaillet  2017-08-20  3036  		err = -ENODEV;
c7de481bca2013 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3037  		goto err_gone;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3038  	}
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3039  
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3040  	/* Setup error IRQ handler */
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3041  	err = devm_request_irq(&ofdev->dev, dev->emac_irq, emac_irq, 0, "EMAC", dev);
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3042  	if (err) {
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3043  		dev_err_probe(&ofdev->dev, err, "failed to request IRQ %d", dev->emac_irq);
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3044  		goto err_gone;
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3045  	}
55b3f1525a5443 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3046  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3047  	ndev->irq = dev->emac_irq;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3048  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3049  	/* Map EMAC regs */
138b57f0f89387 drivers/net/ethernet/ibm/emac/core.c Christophe Jaillet  2017-08-20  3050  	// TODO : platform_get_resource() and devm_ioremap_resource()
154cc24d587dd8 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3051  	dev->emacp = devm_of_iomap(&ofdev->dev, np, 0, NULL);
154cc24d587dd8 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3052  	if (!dev->emacp) {
154cc24d587dd8 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3053  		err = dev_err_probe(&ofdev->dev, -ENOMEM, "can't map device registers");
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23 @3054  		goto err_irq_unmap;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3055  	}
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3056  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3057  	/* Wait for dependent devices */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3058  	err = emac_wait_deps(dev);
b941327b6eb37f drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3059  	if (err)
154cc24d587dd8 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3060  		goto err_irq_unmap;
bc353832565635 drivers/net/ethernet/ibm/emac/core.c Jingoo Han          2013-09-02  3061  	dev->mal = platform_get_drvdata(dev->mal_dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3062  	if (dev->mdio_dev != NULL)
bc353832565635 drivers/net/ethernet/ibm/emac/core.c Jingoo Han          2013-09-02  3063  		dev->mdio_instance = platform_get_drvdata(dev->mdio_dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3064  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3065  	/* Register with MAL */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3066  	dev->commac.ops = &emac_commac_ops;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3067  	dev->commac.dev = dev;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3068  	dev->commac.tx_chan_mask = MAL_CHAN_MASK(dev->mal_tx_chan);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3069  	dev->commac.rx_chan_mask = MAL_CHAN_MASK(dev->mal_rx_chan);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3070  	err = mal_register_commac(dev->mal, &dev->commac);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3071  	if (err) {
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3072  		printk(KERN_ERR "%pOF: failed to register with mal %pOF!\n",
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3073  		       np, dev->mal_dev->dev.of_node);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3074  		goto err_rel_deps;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3075  	}
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3076  	dev->rx_skb_size = emac_rx_skb_size(ndev->mtu);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3077  	dev->rx_sync_size = emac_rx_sync_size(ndev->mtu);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3078  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3079  	/* Get pointers to BD rings */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3080  	dev->tx_desc =
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3081  	    dev->mal->bd_virt + mal_tx_bd_offset(dev->mal, dev->mal_tx_chan);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3082  	dev->rx_desc =
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3083  	    dev->mal->bd_virt + mal_rx_bd_offset(dev->mal, dev->mal_rx_chan);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3084  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3085  	DBG(dev, "tx_desc %p" NL, dev->tx_desc);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3086  	DBG(dev, "rx_desc %p" NL, dev->rx_desc);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3087  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3088  	/* Clean rings */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3089  	memset(dev->tx_desc, 0, NUM_TX_BUFF * sizeof(struct mal_descriptor));
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3090  	memset(dev->rx_desc, 0, NUM_RX_BUFF * sizeof(struct mal_descriptor));
ab9b30cc3ec868 drivers/net/ibm_newemac/core.c       Sathya Narayanan    2008-07-01  3091  	memset(dev->tx_skb, 0, NUM_TX_BUFF * sizeof(struct sk_buff *));
ab9b30cc3ec868 drivers/net/ibm_newemac/core.c       Sathya Narayanan    2008-07-01  3092  	memset(dev->rx_skb, 0, NUM_RX_BUFF * sizeof(struct sk_buff *));
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3093  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3094  	/* Attach to ZMII, if needed */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3095  	if (emac_has_feature(dev, EMAC_FTR_HAS_ZMII) &&
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3096  	    (err = zmii_attach(dev->zmii_dev, dev->zmii_port, &dev->phy_mode)) != 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3097  		goto err_unreg_commac;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3098  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3099  	/* Attach to RGMII, if needed */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3100  	if (emac_has_feature(dev, EMAC_FTR_HAS_RGMII) &&
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3101  	    (err = rgmii_attach(dev->rgmii_dev, dev->rgmii_port, dev->phy_mode)) != 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3102  		goto err_detach_zmii;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3103  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3104  	/* Attach to TAH, if needed */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3105  	if (emac_has_feature(dev, EMAC_FTR_HAS_TAH) &&
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3106  	    (err = tah_attach(dev->tah_dev, dev->tah_port)) != 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3107  		goto err_detach_rgmii;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3108  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3109  	/* Set some link defaults before we can find out real parameters */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3110  	dev->phy.speed = SPEED_100;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3111  	dev->phy.duplex = DUPLEX_FULL;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3112  	dev->phy.autoneg = AUTONEG_DISABLE;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3113  	dev->phy.pause = dev->phy.asym_pause = 0;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3114  	dev->stop_timeout = STOP_TIMEOUT_100;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3115  	INIT_DELAYED_WORK(&dev->link_work, emac_link_timer);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3116  
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3117  	/* Some SoCs like APM821xx does not support Half Duplex mode. */
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3118  	if (emac_has_feature(dev, EMAC_FTR_APM821XX_NO_HALF_DUPLEX)) {
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3119  		dev->phy_feat_exc = (SUPPORTED_1000baseT_Half |
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3120  				     SUPPORTED_100baseT_Half |
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3121  				     SUPPORTED_10baseT_Half);
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3122  	}
ae5d33723e3253 drivers/net/ethernet/ibm/emac/core.c Duc Dang            2012-03-05  3123  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3124  	/* Find PHY if any */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3125  	err = emac_init_phy(dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3126  	if (err != 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3127  		goto err_detach_tah;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3128  
5e4011e2b8032c drivers/net/ibm_newemac/core.c       Michał Mirosław     2011-04-17  3129  	if (dev->tah_dev) {
5e4011e2b8032c drivers/net/ibm_newemac/core.c       Michał Mirosław     2011-04-17  3130  		ndev->hw_features = NETIF_F_IP_CSUM | NETIF_F_SG;
5e4011e2b8032c drivers/net/ibm_newemac/core.c       Michał Mirosław     2011-04-17  3131  		ndev->features |= ndev->hw_features | NETIF_F_RXCSUM;
5e4011e2b8032c drivers/net/ibm_newemac/core.c       Michał Mirosław     2011-04-17  3132  	}
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3133  	ndev->watchdog_timeo = 5 * HZ;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3134  	if (emac_phy_supports_gige(dev->phy_mode)) {
15efc02b2625f1 drivers/net/ibm_newemac/core.c       Alexander Beregalov 2009-04-09  3135  		ndev->netdev_ops = &emac_gige_netdev_ops;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3136  		dev->commac.ops = &emac_commac_sg_ops;
15efc02b2625f1 drivers/net/ibm_newemac/core.c       Alexander Beregalov 2009-04-09  3137  	} else
15efc02b2625f1 drivers/net/ibm_newemac/core.c       Alexander Beregalov 2009-04-09  3138  		ndev->netdev_ops = &emac_netdev_ops;
7ad24ea4bf620a drivers/net/ethernet/ibm/emac/core.c Wilfried Klaebe     2014-05-11  3139  	ndev->ethtool_ops = &emac_ethtool_ops;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3140  
3d5d96acfeb9dd drivers/net/ethernet/ibm/emac/core.c Jarod Wilson        2016-10-17  3141  	/* MTU range: 46 - 1500 or whatever is in OF */
3d5d96acfeb9dd drivers/net/ethernet/ibm/emac/core.c Jarod Wilson        2016-10-17  3142  	ndev->min_mtu = EMAC_MIN_MTU;
3d5d96acfeb9dd drivers/net/ethernet/ibm/emac/core.c Jarod Wilson        2016-10-17  3143  	ndev->max_mtu = dev->max_mtu;
3d5d96acfeb9dd drivers/net/ethernet/ibm/emac/core.c Jarod Wilson        2016-10-17  3144  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3145  	netif_carrier_off(ndev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3146  
19245845d17958 drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3147  	err = devm_register_netdev(&ofdev->dev, ndev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3148  	if (err) {
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3149  		printk(KERN_ERR "%pOF: failed to register net device (%d)!\n",
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3150  		       np, err);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3151  		goto err_detach_tah;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3152  	}
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3153  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3154  	/* Set our drvdata last as we don't want them visible until we are
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3155  	 * fully initialized
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3156  	 */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3157  	wmb();
bc353832565635 drivers/net/ethernet/ibm/emac/core.c Jingoo Han          2013-09-02  3158  	platform_set_drvdata(ofdev, dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3159  
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3160  	printk(KERN_INFO "%s: EMAC-%d %pOF, MAC %pM\n",
f7ce91038d5278 drivers/net/ethernet/ibm/emac/core.c Rob Herring         2017-07-18  3161  	       ndev->name, dev->cell_index, np, ndev->dev_addr);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3162  
78b69921a12568 drivers/net/ethernet/ibm/emac/core.c Christian Lamparter 2017-12-20  3163  	if (dev->phy_mode == PHY_INTERFACE_MODE_SGMII)
9e3cb29497561c drivers/net/ibm_newemac/core.c       Victor Gallardo     2008-10-01  3164  		printk(KERN_NOTICE "%s: in SGMII mode\n", ndev->name);
9e3cb29497561c drivers/net/ibm_newemac/core.c       Victor Gallardo     2008-10-01  3165  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3166  	if (dev->phy.address >= 0)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3167  		printk("%s: found %s PHY (0x%02x)\n", ndev->name,
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3168  		       dev->phy.def->name, dev->phy.address);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3169  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3170  	/* Life is good */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3171  	return 0;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3172  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3173  	/* I have a bad feeling about this ... */
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3174  
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3175   err_detach_tah:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3176  	if (emac_has_feature(dev, EMAC_FTR_HAS_TAH))
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3177  		tah_detach(dev->tah_dev, dev->tah_port);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3178   err_detach_rgmii:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3179  	if (emac_has_feature(dev, EMAC_FTR_HAS_RGMII))
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3180  		rgmii_detach(dev->rgmii_dev, dev->rgmii_port);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3181   err_detach_zmii:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3182  	if (emac_has_feature(dev, EMAC_FTR_HAS_ZMII))
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3183  		zmii_detach(dev->zmii_dev, dev->zmii_port);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3184   err_unreg_commac:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3185  	mal_unregister_commac(dev->mal, &dev->commac);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3186   err_rel_deps:
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3187  	emac_put_deps(dev);
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3188   err_gone:
b941327b6eb37f drivers/net/ethernet/ibm/emac/core.c Rosen Penev         2024-09-05  3189  	if (blist)
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3190  		*blist = NULL;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3191  	return err;
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3192  }
1d3bb996481e11 drivers/net/ibm_newemac/core.c       David Gibson        2007-08-23  3193
diff mbox series

Patch

diff --git a/drivers/net/ethernet/ibm/emac/core.c b/drivers/net/ethernet/ibm/emac/core.c
index c643e99e77d9..249cb8e78a4b 100644
--- a/drivers/net/ethernet/ibm/emac/core.c
+++ b/drivers/net/ethernet/ibm/emac/core.c
@@ -3029,9 +3029,8 @@  static int emac_probe(struct platform_device *ofdev)
 	if (err)
 		goto err_gone;
 
-	/* Get interrupts. EMAC irq is mandatory, WOL irq is optional */
+	/* Get interrupts. EMAC irq is mandatory */
 	dev->emac_irq = irq_of_parse_and_map(np, 0);
-	dev->wol_irq = irq_of_parse_and_map(np, 1);
 	if (!dev->emac_irq) {
 		printk(KERN_ERR "%pOF: Can't map main interrupt\n", np);
 		err = -ENODEV;
@@ -3186,9 +3185,6 @@  static int emac_probe(struct platform_device *ofdev)
 	mal_unregister_commac(dev->mal, &dev->commac);
  err_rel_deps:
 	emac_put_deps(dev);
- err_irq_unmap:
-	if (dev->wol_irq)
-		irq_dispose_mapping(dev->wol_irq);
  err_gone:
 	if (blist)
 		*blist = NULL;
@@ -3215,9 +3211,6 @@  static void emac_remove(struct platform_device *ofdev)
 
 	mal_unregister_commac(dev->mal, &dev->commac);
 	emac_put_deps(dev);
-
-	if (dev->wol_irq)
-		irq_dispose_mapping(dev->wol_irq);
 }
 
 /* XXX Features in here should be replaced by properties... */