brcm63xx: fix number of switch ports for BCM63168/63268
BCM63168 has 6 ports (3 FE PHY, 1 GE PHY, two RGMII) and BCM63268 has two additional RGMII ports, making it 8. Fix this by checking the chip variant and applying an appropriate limit. Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 39677
This commit is contained in:
parent
edbfb81b56
commit
60edb75e47
2 changed files with 10 additions and 6 deletions
|
@ -744,11 +744,15 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
ret = register_shared();
|
ret = register_shared();
|
||||||
@@ -297,6 +299,8 @@ bcm63xx_enetsw_register(const struct bcm
|
@@ -295,8 +297,11 @@ bcm63xx_enetsw_register(const struct bcm
|
||||||
|
|
||||||
|
if (BCMCPU_IS_6328())
|
||||||
enetsw_pd.num_ports = ENETSW_PORTS_6328;
|
enetsw_pd.num_ports = ENETSW_PORTS_6328;
|
||||||
else if (BCMCPU_IS_6362() || BCMCPU_IS_6368())
|
- else if (BCMCPU_IS_6362() || BCMCPU_IS_6368())
|
||||||
|
+ else if (BCMCPU_IS_6362() || BCMCPU_IS_6368() ||
|
||||||
|
+ BCMCPU_VARIANT_IS_63168() || BCMCPU_VARIANT_IS_63169())
|
||||||
enetsw_pd.num_ports = ENETSW_PORTS_6368;
|
enetsw_pd.num_ports = ENETSW_PORTS_6368;
|
||||||
+ else if (BCMCPU_IS_63268())
|
+ else if (BCMCPU_VARIANT_IS_63268() || BCMCPU_VARIANT_IS_63269())
|
||||||
+ enetsw_pd.num_ports = ENETSW_PORTS_63268;
|
+ enetsw_pd.num_ports = ENETSW_PORTS_63268;
|
||||||
|
|
||||||
enetsw_pd.dma_has_sram = true;
|
enetsw_pd.dma_has_sram = true;
|
||||||
|
@ -759,7 +763,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
||||||
#define ENETSW_MAX_PORT 8
|
#define ENETSW_MAX_PORT 8
|
||||||
#define ENETSW_PORTS_6328 5 /* 4 FE PHY + 1 RGMII */
|
#define ENETSW_PORTS_6328 5 /* 4 FE PHY + 1 RGMII */
|
||||||
#define ENETSW_PORTS_6368 6 /* 4 FE PHY + 2 RGMII */
|
#define ENETSW_PORTS_6368 6 /* 4 FE PHY + 2 RGMII */
|
||||||
+#define ENETSW_PORTS_63268 4 /* 3 FE PHY + 1 RGMII */
|
+#define ENETSW_PORTS_63268 8 /* 3 FE PHY + 1 GE PHY + 4 RGMII */
|
||||||
|
|
||||||
#define ENETSW_RGMII_PORT0 4
|
#define ENETSW_RGMII_PORT0 4
|
||||||
|
|
||||||
|
|
|
@ -644,8 +644,8 @@ Subject: [PATCH 51/53] MIPS: BCM63XX: add support for BCM6318
|
||||||
- if (BCMCPU_IS_6328())
|
- if (BCMCPU_IS_6328())
|
||||||
+ if (BCMCPU_IS_6318() || BCMCPU_IS_6328())
|
+ if (BCMCPU_IS_6318() || BCMCPU_IS_6328())
|
||||||
enetsw_pd.num_ports = ENETSW_PORTS_6328;
|
enetsw_pd.num_ports = ENETSW_PORTS_6328;
|
||||||
else if (BCMCPU_IS_6362() || BCMCPU_IS_6368())
|
else if (BCMCPU_IS_6362() || BCMCPU_IS_6368() ||
|
||||||
enetsw_pd.num_ports = ENETSW_PORTS_6368;
|
BCMCPU_VARIANT_IS_63168() || BCMCPU_VARIANT_IS_63169())
|
||||||
--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h
|
--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h
|
||||||
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h
|
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h
|
||||||
@@ -9,6 +9,8 @@ int __init bcm63xx_gpio_init(void);
|
@@ -9,6 +9,8 @@ int __init bcm63xx_gpio_init(void);
|
||||||
|
|
Loading…
Reference in a new issue