提交 1a0ab767 编写于 作者: R Rafał Miłecki 提交者: David S. Miller

bgmac: replace some magic values with defines

Signed-off-by: NRafał Miłecki <zajec5@gmail.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 d469962f
...@@ -877,9 +877,9 @@ static void bgmac_chip_reset(struct bgmac *bgmac) ...@@ -877,9 +877,9 @@ static void bgmac_chip_reset(struct bgmac *bgmac)
} }
iost = bcma_aread32(core, BCMA_IOST); iost = bcma_aread32(core, BCMA_IOST);
if ((ci->id == BCMA_CHIP_ID_BCM5357 && ci->pkg == 10) || if ((ci->id == BCMA_CHIP_ID_BCM5357 && ci->pkg == BCMA_PKG_ID_BCM47186) ||
(ci->id == BCMA_CHIP_ID_BCM4749 && ci->pkg == 10) || (ci->id == BCMA_CHIP_ID_BCM4749 && ci->pkg == 10) ||
(ci->id == BCMA_CHIP_ID_BCM53572 && ci->pkg == 9)) (ci->id == BCMA_CHIP_ID_BCM53572 && ci->pkg == BCMA_PKG_ID_BCM47188))
iost &= ~BGMAC_BCMA_IOST_ATTACHED; iost &= ~BGMAC_BCMA_IOST_ATTACHED;
if (iost & BGMAC_BCMA_IOST_ATTACHED) { if (iost & BGMAC_BCMA_IOST_ATTACHED) {
...@@ -891,12 +891,16 @@ static void bgmac_chip_reset(struct bgmac *bgmac) ...@@ -891,12 +891,16 @@ static void bgmac_chip_reset(struct bgmac *bgmac)
bcma_core_enable(core, flags); bcma_core_enable(core, flags);
if (core->id.rev > 2) { if (core->id.rev > 2) {
bgmac_set(bgmac, BCMA_CLKCTLST, 1 << 8); bgmac_set(bgmac, BCMA_CLKCTLST,
bgmac_wait_value(bgmac->core, BCMA_CLKCTLST, 1 << 24, 1 << 24, BGMAC_BCMA_CLKCTLST_MISC_PLL_REQ);
bgmac_wait_value(bgmac->core, BCMA_CLKCTLST,
BGMAC_BCMA_CLKCTLST_MISC_PLL_ST,
BGMAC_BCMA_CLKCTLST_MISC_PLL_ST,
1000); 1000);
} }
if (ci->id == BCMA_CHIP_ID_BCM5357 || ci->id == BCMA_CHIP_ID_BCM4749 || if (ci->id == BCMA_CHIP_ID_BCM5357 ||
ci->id == BCMA_CHIP_ID_BCM4749 ||
ci->id == BCMA_CHIP_ID_BCM53572) { ci->id == BCMA_CHIP_ID_BCM53572) {
struct bcma_drv_cc *cc = &bgmac->core->bus->drv_cc; struct bcma_drv_cc *cc = &bgmac->core->bus->drv_cc;
u8 et_swtype = 0; u8 et_swtype = 0;
...@@ -911,10 +915,11 @@ static void bgmac_chip_reset(struct bgmac *bgmac) ...@@ -911,10 +915,11 @@ static void bgmac_chip_reset(struct bgmac *bgmac)
et_swtype &= 0x0f; et_swtype &= 0x0f;
et_swtype <<= 4; et_swtype <<= 4;
sw_type = et_swtype; sw_type = et_swtype;
} else if (ci->id == BCMA_CHIP_ID_BCM5357 && ci->pkg == 9) { } else if (ci->id == BCMA_CHIP_ID_BCM5357 && ci->pkg == BCMA_PKG_ID_BCM5358) {
sw_type = BGMAC_CHIPCTL_1_SW_TYPE_EPHYRMII; sw_type = BGMAC_CHIPCTL_1_SW_TYPE_EPHYRMII;
} else if ((ci->id != BCMA_CHIP_ID_BCM53572 && ci->pkg == 10) || } else if ((ci->id == BCMA_CHIP_ID_BCM5357 && ci->pkg == BCMA_PKG_ID_BCM47186) ||
(ci->id == BCMA_CHIP_ID_BCM53572 && ci->pkg == 9)) { (ci->id == BCMA_CHIP_ID_BCM4749 && ci->pkg == 10) ||
(ci->id == BCMA_CHIP_ID_BCM53572 && ci->pkg == BCMA_PKG_ID_BCM47188)) {
sw_type = BGMAC_CHIPCTL_1_IF_TYPE_RGMII | sw_type = BGMAC_CHIPCTL_1_IF_TYPE_RGMII |
BGMAC_CHIPCTL_1_SW_TYPE_RGMII; BGMAC_CHIPCTL_1_SW_TYPE_RGMII;
} }
......
...@@ -95,7 +95,11 @@ ...@@ -95,7 +95,11 @@
#define BGMAC_RXQ_CTL_MDP_SHIFT 24 #define BGMAC_RXQ_CTL_MDP_SHIFT 24
#define BGMAC_GPIO_SELECT 0x194 #define BGMAC_GPIO_SELECT 0x194
#define BGMAC_GPIO_OUTPUT_EN 0x198 #define BGMAC_GPIO_OUTPUT_EN 0x198
/* For 0x1e0 see BCMA_CLKCTLST */
/* For 0x1e0 see BCMA_CLKCTLST. Below are BGMAC specific bits */
#define BGMAC_BCMA_CLKCTLST_MISC_PLL_REQ 0x00000100
#define BGMAC_BCMA_CLKCTLST_MISC_PLL_ST 0x01000000
#define BGMAC_HW_WAR 0x1e4 #define BGMAC_HW_WAR 0x1e4
#define BGMAC_PWR_CTL 0x1e8 #define BGMAC_PWR_CTL 0x1e8
#define BGMAC_DMA_BASE0 0x200 /* Tx and Rx controller */ #define BGMAC_DMA_BASE0 0x200 /* Tx and Rx controller */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册