blackfin: Initialize the EMAC VLAN with proper default value

EMAC_VLANx regs is not properly initiallized in u-boot, once it's overwrite in the
kernel when DSA enabled, hot reset will lead to bringing up EMAC fail in u-boot.

Signed-off-by: Aaron Wu <Aaron.Wu@analog.com>
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
master
Aaron Wu 13 years ago committed by Sonic Zhang
parent 861aa63d6b
commit 819ca38fa7
  1. 3
      arch/blackfin/include/asm/mach-common/bits/emac.h
  2. 2
      drivers/net/bfin_mac.c

@ -217,4 +217,7 @@
#define TX_GE1024_CNT 0x00200000 /* 1024-Max-Byte TX Frames Sent */
#define TX_ABORT_CNT 0x00400000 /* TX Frames Aborted */
/*default value for EMAC_VLANx reg*/
#define EMAC_VLANX_DEF_VAL 0xFFFF
#endif

@ -259,6 +259,8 @@ static int bfin_miiphy_init(struct eth_device *dev, int *opmode)
*opmode = 0;
bfin_write_EMAC_MMC_CTL(RSTC | CROLL);
bfin_write_EMAC_VLAN1(EMAC_VLANX_DEF_VAL);
bfin_write_EMAC_VLAN2(EMAC_VLANX_DEF_VAL);
/* Initialize the TX DMA channel registers */
bfin_write_DMA2_X_COUNT(0);

Loading…
Cancel
Save