dm9000.c (ac88c531a5b38877eba2365a3f28f0c8b513dc33) dm9000.c (cf9e60aa69ae6c40d3e3e4c94dd6c8de31674e9b)
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Davicom DM9000 Fast Ethernet driver for Linux.
4 * Copyright (C) 1997 Sten Wang
5 *
6 * (C) Copyright 1997-1998 DAVICOM Semiconductor,Inc. All Rights Reserved.
7 *
8 * Additional updates, Copyright:

--- 119 unchanged lines hidden (view full) ---

128
129 spinlock_t lock;
130
131 struct mii_if_info mii;
132 u32 msg_enable;
133 u32 wake_state;
134
135 int ip_summed;
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Davicom DM9000 Fast Ethernet driver for Linux.
4 * Copyright (C) 1997 Sten Wang
5 *
6 * (C) Copyright 1997-1998 DAVICOM Semiconductor,Inc. All Rights Reserved.
7 *
8 * Additional updates, Copyright:

--- 119 unchanged lines hidden (view full) ---

128
129 spinlock_t lock;
130
131 struct mii_if_info mii;
132 u32 msg_enable;
133 u32 wake_state;
134
135 int ip_summed;
136
137 struct regulator *power_supply;
136};
137
138/* debug code */
139
140#define dm9000_dbg(db, lev, msg...) do { \
141 if ((lev) < debug) { \
142 dev_dbg(db->dev, msg); \
143 } \

--- 1332 unchanged lines hidden (view full) ---

1476
1477 dev_dbg(&pdev->dev, "dm9000_probe()\n");
1478
1479 /* setup board info structure */
1480 db = netdev_priv(ndev);
1481
1482 db->dev = &pdev->dev;
1483 db->ndev = ndev;
138};
139
140/* debug code */
141
142#define dm9000_dbg(db, lev, msg...) do { \
143 if ((lev) < debug) { \
144 dev_dbg(db->dev, msg); \
145 } \

--- 1332 unchanged lines hidden (view full) ---

1478
1479 dev_dbg(&pdev->dev, "dm9000_probe()\n");
1480
1481 /* setup board info structure */
1482 db = netdev_priv(ndev);
1483
1484 db->dev = &pdev->dev;
1485 db->ndev = ndev;
1486 if (!IS_ERR(power))
1487 db->power_supply = power;
1484
1485 spin_lock_init(&db->lock);
1486 mutex_init(&db->addr_lock);
1487
1488 INIT_DELAYED_WORK(&db->phy_poll, dm9000_poll_work);
1489
1490 db->addr_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
1491 db->data_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);

--- 269 unchanged lines hidden (view full) ---

1761 .suspend = dm9000_drv_suspend,
1762 .resume = dm9000_drv_resume,
1763};
1764
1765static int
1766dm9000_drv_remove(struct platform_device *pdev)
1767{
1768 struct net_device *ndev = platform_get_drvdata(pdev);
1488
1489 spin_lock_init(&db->lock);
1490 mutex_init(&db->addr_lock);
1491
1492 INIT_DELAYED_WORK(&db->phy_poll, dm9000_poll_work);
1493
1494 db->addr_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
1495 db->data_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);

--- 269 unchanged lines hidden (view full) ---

1765 .suspend = dm9000_drv_suspend,
1766 .resume = dm9000_drv_resume,
1767};
1768
1769static int
1770dm9000_drv_remove(struct platform_device *pdev)
1771{
1772 struct net_device *ndev = platform_get_drvdata(pdev);
1773 struct board_info *dm = to_dm9000_board(ndev);
1769
1770 unregister_netdev(ndev);
1774
1775 unregister_netdev(ndev);
1771 dm9000_release_board(pdev, netdev_priv(ndev));
1776 dm9000_release_board(pdev, dm);
1772 free_netdev(ndev); /* free device structure */
1777 free_netdev(ndev); /* free device structure */
1778 if (dm->power_supply)
1779 regulator_disable(dm->power_supply);
1773
1774 dev_dbg(&pdev->dev, "released and freed device\n");
1775 return 0;
1776}
1777
1778#ifdef CONFIG_OF
1779static const struct of_device_id dm9000_of_matches[] = {
1780 { .compatible = "davicom,dm9000", },

--- 21 unchanged lines hidden ---
1780
1781 dev_dbg(&pdev->dev, "released and freed device\n");
1782 return 0;
1783}
1784
1785#ifdef CONFIG_OF
1786static const struct of_device_id dm9000_of_matches[] = {
1787 { .compatible = "davicom,dm9000", },

--- 21 unchanged lines hidden ---