diff options
author | David S. Miller <davem@davemloft.net> | 2013-03-20 12:46:26 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-03-20 12:46:26 -0400 |
commit | 61816596d1c9026d0ecb20c44f90452c41596ffe (patch) | |
tree | 3027ed6dc62f71e14b9d525405747fa0eb8f074d /drivers/net/ethernet/renesas | |
parent | 23a9072e3af0d9538e25837fb2b56bb94e4a8e67 (diff) | |
parent | da2191e31409d1058dcbed44e8f53e39a40e86b3 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull in the 'net' tree to get Daniel Borkmann's flow dissector
infrastructure change.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/renesas')
-rw-r--r-- | drivers/net/ethernet/renesas/sh_eth.c | 10 | ||||
-rw-r--r-- | drivers/net/ethernet/renesas/sh_eth.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c index 7a6471d87300..56884c4cd90b 100644 --- a/drivers/net/ethernet/renesas/sh_eth.c +++ b/drivers/net/ethernet/renesas/sh_eth.c | |||
@@ -2215,6 +2215,7 @@ static void sh_eth_tsu_init(struct sh_eth_private *mdp) | |||
2215 | /* MDIO bus release function */ | 2215 | /* MDIO bus release function */ |
2216 | static int sh_mdio_release(struct net_device *ndev) | 2216 | static int sh_mdio_release(struct net_device *ndev) |
2217 | { | 2217 | { |
2218 | struct sh_eth_private *mdp = netdev_priv(ndev); | ||
2218 | struct mii_bus *bus = dev_get_drvdata(&ndev->dev); | 2219 | struct mii_bus *bus = dev_get_drvdata(&ndev->dev); |
2219 | 2220 | ||
2220 | /* unregister mdio bus */ | 2221 | /* unregister mdio bus */ |
@@ -2229,6 +2230,9 @@ static int sh_mdio_release(struct net_device *ndev) | |||
2229 | /* free bitbang info */ | 2230 | /* free bitbang info */ |
2230 | free_mdio_bitbang(bus); | 2231 | free_mdio_bitbang(bus); |
2231 | 2232 | ||
2233 | /* free bitbang memory */ | ||
2234 | kfree(mdp->bitbang); | ||
2235 | |||
2232 | return 0; | 2236 | return 0; |
2233 | } | 2237 | } |
2234 | 2238 | ||
@@ -2257,6 +2261,7 @@ static int sh_mdio_init(struct net_device *ndev, int id, | |||
2257 | bitbang->ctrl.ops = &bb_ops; | 2261 | bitbang->ctrl.ops = &bb_ops; |
2258 | 2262 | ||
2259 | /* MII controller setting */ | 2263 | /* MII controller setting */ |
2264 | mdp->bitbang = bitbang; | ||
2260 | mdp->mii_bus = alloc_mdio_bitbang(&bitbang->ctrl); | 2265 | mdp->mii_bus = alloc_mdio_bitbang(&bitbang->ctrl); |
2261 | if (!mdp->mii_bus) { | 2266 | if (!mdp->mii_bus) { |
2262 | ret = -ENOMEM; | 2267 | ret = -ENOMEM; |
@@ -2436,6 +2441,11 @@ static int sh_eth_drv_probe(struct platform_device *pdev) | |||
2436 | } | 2441 | } |
2437 | mdp->tsu_addr = ioremap(rtsu->start, | 2442 | mdp->tsu_addr = ioremap(rtsu->start, |
2438 | resource_size(rtsu)); | 2443 | resource_size(rtsu)); |
2444 | if (mdp->tsu_addr == NULL) { | ||
2445 | ret = -ENOMEM; | ||
2446 | dev_err(&pdev->dev, "TSU ioremap failed.\n"); | ||
2447 | goto out_release; | ||
2448 | } | ||
2439 | mdp->port = devno % 2; | 2449 | mdp->port = devno % 2; |
2440 | ndev->features = NETIF_F_HW_VLAN_FILTER; | 2450 | ndev->features = NETIF_F_HW_VLAN_FILTER; |
2441 | } | 2451 | } |
diff --git a/drivers/net/ethernet/renesas/sh_eth.h b/drivers/net/ethernet/renesas/sh_eth.h index bae84fd2e73a..e6655678458e 100644 --- a/drivers/net/ethernet/renesas/sh_eth.h +++ b/drivers/net/ethernet/renesas/sh_eth.h | |||
@@ -705,6 +705,7 @@ struct sh_eth_private { | |||
705 | const u16 *reg_offset; | 705 | const u16 *reg_offset; |
706 | void __iomem *addr; | 706 | void __iomem *addr; |
707 | void __iomem *tsu_addr; | 707 | void __iomem *tsu_addr; |
708 | struct bb_info *bitbang; | ||
708 | u32 num_rx_ring; | 709 | u32 num_rx_ring; |
709 | u32 num_tx_ring; | 710 | u32 num_tx_ring; |
710 | dma_addr_t rx_desc_dma; | 711 | dma_addr_t rx_desc_dma; |