mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-20 06:08:08 +00:00
ramips: mt7620: ethernet: use more macros and bump version
Define and use some missing macros,
and use them instead of BIT() or numbers for more readable code.
Add comment for a bit change that seems unrelated to ethernet
but is actually needed (PCIe Root Complex mode).
Remove unknown and unused macro RST_CTRL_MCM
(probably from MT7621 / MT7622)
This is the last of a series of fixes, so bump version.
Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit 88a0cebadf
)
This commit is contained in:
parent
3f976d0225
commit
30e47fb1e4
@ -65,9 +65,11 @@ static void mt7620_hw_init(struct mt7620_gsw *gsw)
|
|||||||
{
|
{
|
||||||
u32 i;
|
u32 i;
|
||||||
u32 val;
|
u32 val;
|
||||||
u32 is_BGA = (rt_sysc_r32(0x0c) >> 16) & 1;
|
u32 is_BGA = (rt_sysc_r32(SYSC_REG_CHIP_REV_ID) >> 16) & 1;
|
||||||
|
|
||||||
|
/* Internal ethernet requires PCIe RC mode */
|
||||||
|
rt_sysc_w32(rt_sysc_r32(SYSC_REG_CFG1) | PCIE_RC_MODE, SYSC_REG_CFG1);
|
||||||
|
|
||||||
rt_sysc_w32(rt_sysc_r32(SYSC_REG_CFG1) | BIT(8), SYSC_REG_CFG1);
|
|
||||||
mtk_switch_w32(gsw, mtk_switch_r32(gsw, GSW_REG_CKGCR) & ~(0x3 << 4), GSW_REG_CKGCR);
|
mtk_switch_w32(gsw, mtk_switch_r32(gsw, GSW_REG_CKGCR) & ~(0x3 << 4), GSW_REG_CKGCR);
|
||||||
|
|
||||||
/* Enable MIB stats */
|
/* Enable MIB stats */
|
||||||
@ -83,7 +85,7 @@ static void mt7620_hw_init(struct mt7620_gsw *gsw)
|
|||||||
mtk_switch_w32(gsw, mtk_switch_r32(gsw, GSW_REG_GPC1) |
|
mtk_switch_w32(gsw, mtk_switch_r32(gsw, GSW_REG_GPC1) |
|
||||||
(gsw->ephy_base << 16),
|
(gsw->ephy_base << 16),
|
||||||
GSW_REG_GPC1);
|
GSW_REG_GPC1);
|
||||||
fe_reset(BIT(24)); /* Resets the Ethernet PHY block. */
|
fe_reset(MT7620A_RESET_EPHY);
|
||||||
|
|
||||||
pr_info("gsw: ephy base address: %d\n", gsw->ephy_base);
|
pr_info("gsw: ephy base address: %d\n", gsw->ephy_base);
|
||||||
}
|
}
|
||||||
|
@ -55,7 +55,7 @@
|
|||||||
|
|
||||||
#define SYSC_REG_CHIP_REV_ID 0x0c
|
#define SYSC_REG_CHIP_REV_ID 0x0c
|
||||||
#define SYSC_REG_CFG1 0x14
|
#define SYSC_REG_CFG1 0x14
|
||||||
#define RST_CTRL_MCM BIT(2)
|
#define PCIE_RC_MODE BIT(8)
|
||||||
#define SYSC_PAD_RGMII2_MDIO 0x58
|
#define SYSC_PAD_RGMII2_MDIO 0x58
|
||||||
#define SYSC_GPIO_MODE 0x60
|
#define SYSC_GPIO_MODE 0x60
|
||||||
|
|
||||||
|
@ -49,7 +49,7 @@ enum fe_work_flag {
|
|||||||
FE_FLAG_MAX
|
FE_FLAG_MAX
|
||||||
};
|
};
|
||||||
|
|
||||||
#define MTK_FE_DRV_VERSION "0.1.2"
|
#define MTK_FE_DRV_VERSION "0.2"
|
||||||
|
|
||||||
/* power of 2 to let NEXT_TX_DESP_IDX work */
|
/* power of 2 to let NEXT_TX_DESP_IDX work */
|
||||||
#define NUM_DMA_DESC BIT(10)
|
#define NUM_DMA_DESC BIT(10)
|
||||||
@ -157,6 +157,10 @@ enum fe_work_flag {
|
|||||||
#define MT7620A_FE_GDMA1_MAC_ADRL (MT7620A_GDMA_OFFSET + 0x0C)
|
#define MT7620A_FE_GDMA1_MAC_ADRL (MT7620A_GDMA_OFFSET + 0x0C)
|
||||||
#define MT7620A_FE_GDMA1_MAC_ADRH (MT7620A_GDMA_OFFSET + 0x10)
|
#define MT7620A_FE_GDMA1_MAC_ADRH (MT7620A_GDMA_OFFSET + 0x10)
|
||||||
|
|
||||||
|
#define MT7620A_RESET_FE BIT(21)
|
||||||
|
#define MT7620A_RESET_ESW BIT(23)
|
||||||
|
#define MT7620A_RESET_EPHY BIT(24)
|
||||||
|
|
||||||
#define RT5350_TX_BASE_PTR0 (RT5350_PDMA_OFFSET + 0x00)
|
#define RT5350_TX_BASE_PTR0 (RT5350_PDMA_OFFSET + 0x00)
|
||||||
#define RT5350_TX_MAX_CNT0 (RT5350_PDMA_OFFSET + 0x04)
|
#define RT5350_TX_MAX_CNT0 (RT5350_PDMA_OFFSET + 0x04)
|
||||||
#define RT5350_TX_CTX_IDX0 (RT5350_PDMA_OFFSET + 0x08)
|
#define RT5350_TX_CTX_IDX0 (RT5350_PDMA_OFFSET + 0x08)
|
||||||
|
@ -27,8 +27,6 @@
|
|||||||
|
|
||||||
#define MT7620A_CDMA_CSG_CFG 0x400
|
#define MT7620A_CDMA_CSG_CFG 0x400
|
||||||
#define MT7620_DMA_VID (MT7620A_CDMA_CSG_CFG | 0x30)
|
#define MT7620_DMA_VID (MT7620A_CDMA_CSG_CFG | 0x30)
|
||||||
#define MT7620A_RESET_FE BIT(21)
|
|
||||||
#define MT7620A_RESET_ESW BIT(23)
|
|
||||||
#define MT7620_L4_VALID BIT(23)
|
#define MT7620_L4_VALID BIT(23)
|
||||||
|
|
||||||
#define MT7620_TX_DMA_UDF BIT(15)
|
#define MT7620_TX_DMA_UDF BIT(15)
|
||||||
|
Loading…
Reference in New Issue
Block a user