diff options
author | Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> | 2012-02-15 12:54:56 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-02-16 17:08:09 -0500 |
commit | 150647fb2c313d7c5184fca3fa0829a4a7d6f7bc (patch) | |
tree | 6bd3edfbc652b6e5321b33d333b67769e3534f18 | |
parent | 3acbc9715a5ac8a2534a69eb3488b63b7c9fb1e2 (diff) |
net: sh_eth: change the condition of initialization
The SH7757 has 2 Fast Ethernet and 2 Gigabit Ethernet, and the first
Gigabit channel needs the initialization. So, this patch adds the
parameter of "needs_init", and if the sh_eth_plat_data is set it
to 1, the driver will initialize the channel.
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/ethernet/renesas/sh_eth.c | 4 | ||||
-rw-r--r-- | include/linux/sh_eth.h | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c index 8f53b5ac7f05..5a5afbc7273b 100644 --- a/drivers/net/ethernet/renesas/sh_eth.c +++ b/drivers/net/ethernet/renesas/sh_eth.c | |||
@@ -1859,8 +1859,8 @@ static int sh_eth_drv_probe(struct platform_device *pdev) | |||
1859 | /* read and set MAC address */ | 1859 | /* read and set MAC address */ |
1860 | read_mac_address(ndev, pd->mac_addr); | 1860 | read_mac_address(ndev, pd->mac_addr); |
1861 | 1861 | ||
1862 | /* First device only init */ | 1862 | /* initialize first or needed device */ |
1863 | if (!devno) { | 1863 | if (!devno || pd->needs_init) { |
1864 | if (mdp->cd->tsu) { | 1864 | if (mdp->cd->tsu) { |
1865 | struct resource *rtsu; | 1865 | struct resource *rtsu; |
1866 | rtsu = platform_get_resource(pdev, IORESOURCE_MEM, 1); | 1866 | rtsu = platform_get_resource(pdev, IORESOURCE_MEM, 1); |
diff --git a/include/linux/sh_eth.h b/include/linux/sh_eth.h index 2076acf8294d..b17d765ded84 100644 --- a/include/linux/sh_eth.h +++ b/include/linux/sh_eth.h | |||
@@ -20,6 +20,7 @@ struct sh_eth_plat_data { | |||
20 | unsigned char mac_addr[6]; | 20 | unsigned char mac_addr[6]; |
21 | unsigned no_ether_link:1; | 21 | unsigned no_ether_link:1; |
22 | unsigned ether_link_active_low:1; | 22 | unsigned ether_link_active_low:1; |
23 | unsigned needs_init:1; | ||
23 | }; | 24 | }; |
24 | 25 | ||
25 | #endif | 26 | #endif |