diff options
author | Aaron Wu <Aaron.Wu@analog.com> | 2011-11-23 11:23:56 +0800 |
---|---|---|
committer | Sonic Zhang <sonic.zhang@analog.com> | 2014-02-07 11:18:06 +0800 |
commit | 819ca38fa70da85a14b4328d1511146e6c59eb32 (patch) | |
tree | 5f7632e05f885d49c8acfd0d7f43f0c8b935b035 | |
parent | 861aa63d6b914006256a283a5276b245b6f71a64 (diff) | |
download | u-boot-imx-819ca38fa70da85a14b4328d1511146e6c59eb32.zip u-boot-imx-819ca38fa70da85a14b4328d1511146e6c59eb32.tar.gz u-boot-imx-819ca38fa70da85a14b4328d1511146e6c59eb32.tar.bz2 |
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>
-rw-r--r-- | arch/blackfin/include/asm/mach-common/bits/emac.h | 3 | ||||
-rw-r--r-- | drivers/net/bfin_mac.c | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/arch/blackfin/include/asm/mach-common/bits/emac.h b/arch/blackfin/include/asm/mach-common/bits/emac.h index 7a43bbb..4c9bc9d 100644 --- a/arch/blackfin/include/asm/mach-common/bits/emac.h +++ b/arch/blackfin/include/asm/mach-common/bits/emac.h @@ -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 diff --git a/drivers/net/bfin_mac.c b/drivers/net/bfin_mac.c index 0ffd59d..42e208c 100644 --- a/drivers/net/bfin_mac.c +++ b/drivers/net/bfin_mac.c @@ -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); |