mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-18 21:21:37 +00:00
net: tsec: Common handling of MAC station address for DM_ETH
In tsec_init, the MAC address is retrieved from 2 different structures depending on whether DM_ETH is enabled or not. But since the field name is the same inside both structures, we can conditionally define the structure of the correct type and simplify the assignments. Signed-off-by: Vladimir Oltean <olteanv@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
parent
b7be776776
commit
f6297c0692
1 changed files with 2 additions and 9 deletions
|
@ -560,6 +560,8 @@ static int tsec_init(struct udevice *dev)
|
|||
struct tsec_private *priv = (struct tsec_private *)dev->priv;
|
||||
#ifdef CONFIG_DM_ETH
|
||||
struct eth_pdata *pdata = dev_get_platdata(dev);
|
||||
#else
|
||||
struct eth_device *pdata = dev;
|
||||
#endif
|
||||
struct tsec __iomem *regs = priv->regs;
|
||||
u32 tempval;
|
||||
|
@ -580,21 +582,12 @@ static int tsec_init(struct udevice *dev)
|
|||
* order (BE), MACnADDR1 is set to 0xCDAB7856 and
|
||||
* MACnADDR2 is set to 0x34120000.
|
||||
*/
|
||||
#ifndef CONFIG_DM_ETH
|
||||
tempval = (dev->enetaddr[5] << 24) | (dev->enetaddr[4] << 16) |
|
||||
(dev->enetaddr[3] << 8) | dev->enetaddr[2];
|
||||
#else
|
||||
tempval = (pdata->enetaddr[5] << 24) | (pdata->enetaddr[4] << 16) |
|
||||
(pdata->enetaddr[3] << 8) | pdata->enetaddr[2];
|
||||
#endif
|
||||
|
||||
out_be32(®s->macstnaddr1, tempval);
|
||||
|
||||
#ifndef CONFIG_DM_ETH
|
||||
tempval = (dev->enetaddr[1] << 24) | (dev->enetaddr[0] << 16);
|
||||
#else
|
||||
tempval = (pdata->enetaddr[1] << 24) | (pdata->enetaddr[0] << 16);
|
||||
#endif
|
||||
|
||||
out_be32(®s->macstnaddr2, tempval);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue