diff options
| author | Fabio Estevam <[email protected]> | 2011-12-20 05:46:31 +0000 |
|---|---|---|
| committer | Albert ARIBAUD <[email protected]> | 2012-01-16 08:40:09 +0100 |
| commit | be252b654a018cd9f513b0f2a5da4855a209c40c (patch) | |
| tree | d9314c6c7e5bc9e0c426f0996abc3cb2578d2d16 /drivers | |
| parent | 3c057897e9873fb95bfe6eae5e483d724670a288 (diff) | |
net: imx: Add multi-FEC support for imx_get_mac_from_fuse
Add multi-FEC support for imx_get_mac_from_fuse by passing dev_id as a parameter.
This feature is important on mx28 SoC for example that has two FEC ports.
Cc: Ben Warren <[email protected]>
Signed-off-by: Fabio Estevam <[email protected]>
Acked-by: Stefano Babic <[email protected]>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/net/fec_mxc.c | 9 | ||||
| -rw-r--r-- | drivers/net/fec_mxc.h | 2 |
2 files changed, 6 insertions, 5 deletions
diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c index 3affda8fad2..ed733535d54 100644 --- a/drivers/net/fec_mxc.c +++ b/drivers/net/fec_mxc.c @@ -345,9 +345,10 @@ static void fec_rbd_clean(int last, struct fec_bd *pRbd) writew(0, &pRbd->data_length); } -static int fec_get_hwaddr(struct eth_device *dev, unsigned char *mac) +static int fec_get_hwaddr(struct eth_device *dev, int dev_id, + unsigned char *mac) { - imx_get_mac_from_fuse(mac); + imx_get_mac_from_fuse(dev_id, mac); return !is_valid_ether_addr(mac); } @@ -822,8 +823,8 @@ static int fec_probe(bd_t *bd, int dev_id, int phy_id, uint32_t base_addr) eth_register(edev); - if (fec_get_hwaddr(edev, ethaddr) == 0) { - debug("got MAC address from fuse: %pM\n", ethaddr); + if (fec_get_hwaddr(edev, dev_id, ethaddr) == 0) { + debug("got MAC%d address from fuse: %pM\n", dev_id, ethaddr); memcpy(edev->enetaddr, ethaddr, 6); } diff --git a/drivers/net/fec_mxc.h b/drivers/net/fec_mxc.h index 39337bfa115..9825eab2918 100644 --- a/drivers/net/fec_mxc.h +++ b/drivers/net/fec_mxc.h @@ -32,7 +32,7 @@ #ifndef __FEC_MXC_H #define __FEC_MXC_H -void imx_get_mac_from_fuse(unsigned char *mac); +void imx_get_mac_from_fuse(int dev_id, unsigned char *mac); /** * Layout description of the FEC |
