Jelajahi Sumber

bcm63xx: improve rgmii ctrl overrides

There are older devices which require overriding the RGMII ports, so this
shouldn't be limited and forced to BCM63268.

Signed-off-by: Álvaro Fernández Rojas <[email protected]>
Álvaro Fernández Rojas 5 tahun lalu
induk
melakukan
6dc3dce658
27 mengubah file dengan 84 tambahan dan 60 penghapusan
  1. 15 3
      target/linux/bcm63xx/patches-5.4/428-bcm63xx_enet-rgmii-ctrl-fix.patch
  2. 5 3
      target/linux/bcm63xx/patches-5.4/540-board_vw6339gu.patch
  3. 11 3
      target/linux/bcm63xx/patches-5.4/541-board_963268gu_p300.patch
  4. 2 2
      target/linux/bcm63xx/patches-5.4/542-board_WAP-5813n.patch
  5. 2 2
      target/linux/bcm63xx/patches-5.4/543-board_VR-3025u.patch
  6. 2 2
      target/linux/bcm63xx/patches-5.4/544-board_VR-3025un.patch
  7. 2 2
      target/linux/bcm63xx/patches-5.4/545-board_P870HW-51a_v2.patch
  8. 2 2
      target/linux/bcm63xx/patches-5.4/546-board_hw520.patch
  9. 2 2
      target/linux/bcm63xx/patches-5.4/547-board_A4001N.patch
  10. 2 2
      target/linux/bcm63xx/patches-5.4/548-board_dsl-2751b_e1.patch
  11. 2 2
      target/linux/bcm63xx/patches-5.4/549-board_DGND3700v1_3800B.patch
  12. 2 2
      target/linux/bcm63xx/patches-5.4/550-board_homehub2a.patch
  13. 2 2
      target/linux/bcm63xx/patches-5.4/551-board_HG655b.patch
  14. 2 2
      target/linux/bcm63xx/patches-5.4/552-board_fast2704n.patch
  15. 2 2
      target/linux/bcm63xx/patches-5.4/553-board_VR-3026e.patch
  16. 2 2
      target/linux/bcm63xx/patches-5.4/554-board_R5010UNv2.patch
  17. 2 2
      target/linux/bcm63xx/patches-5.4/555-board_HG622.patch
  18. 2 2
      target/linux/bcm63xx/patches-5.4/556-board_EVG2000.patch
  19. 2 2
      target/linux/bcm63xx/patches-5.4/557-board_AV4202N.patch
  20. 2 2
      target/linux/bcm63xx/patches-5.4/558-board_VH4032N.patch
  21. 2 2
      target/linux/bcm63xx/patches-5.4/559-board_R1000H.patch
  22. 2 2
      target/linux/bcm63xx/patches-5.4/560-board_AR-5315u.patch
  23. 2 2
      target/linux/bcm63xx/patches-5.4/561-board_AD1018.patch
  24. 3 3
      target/linux/bcm63xx/patches-5.4/562-board_sr102.patch
  25. 3 3
      target/linux/bcm63xx/patches-5.4/563-board-VR-3032u.patch
  26. 2 2
      target/linux/bcm63xx/patches-5.4/564-board-DGND3700v2.patch
  27. 5 3
      target/linux/bcm63xx/patches-5.4/565-board-VG-8050.patch

+ 15 - 3
target/linux/bcm63xx/patches-5.4/804-bcm63xx_enet_63268_rgmii_ports.patch → target/linux/bcm63xx/patches-5.4/428-bcm63xx_enet-rgmii-ctrl-fix.patch

@@ -1,13 +1,25 @@
+--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_enet.h
++++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_enet.h
+@@ -79,6 +79,9 @@ struct bcm63xx_enetsw_port {
+ 	int		force_speed;
+ 	int		force_duplex_full;
+ 
++	int		mii_override;
++	int		timing_sel;
++
+ 	const char	*name;
+ };
+ 
 --- a/drivers/net/ethernet/broadcom/bcm63xx_enet.c
 +++ b/drivers/net/ethernet/broadcom/bcm63xx_enet.c
 @@ -2209,6 +2209,10 @@ static int bcm_enetsw_open(struct net_de
  
  		rgmii_ctrl = enetsw_readb(priv, ENETSW_RGMII_CTRL_REG(i));
  		rgmii_ctrl |= ENETSW_RGMII_CTRL_GMII_CLK_EN;
-+		if (BCMCPU_IS_63268()) {
-+			rgmii_ctrl |= ENETSW_RGMII_CTRL_TIMING_SEL_EN;
++		if (priv->used_ports[i].mii_override)
 +			rgmii_ctrl |= ENETSW_RGMII_CTRL_MII_OVERRIDE_EN;
-+		}
++		if (priv->used_ports[i].timing_sel)
++			rgmii_ctrl |= ENETSW_RGMII_CTRL_TIMING_SEL_EN;
  		enetsw_writeb(priv, rgmii_ctrl, ENETSW_RGMII_CTRL_REG(i));
  	}
  

+ 5 - 3
target/linux/bcm63xx/patches-5.4/540-board_vw6339gu.patch

@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1610,6 +1610,51 @@ static struct board_info __initdata boar
+@@ -1610,6 +1610,53 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -45,6 +45,8 @@
 +				.used	= 1,
 +				.phy_id	= 7,
 +				.name	= "WAN",
++				.mii_override = 1,
++				.timing_sel = 1,
 +			},
 +		},
 +	},
@@ -52,7 +54,7 @@
  #endif /* CONFIG_BCM63XX_CPU_63268 */
  
  /*
-@@ -1696,6 +1741,7 @@ static const struct board_info __initcon
+@@ -1696,6 +1743,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963269bhr,
@@ -60,7 +62,7 @@
  #endif
  };
  
-@@ -1786,6 +1832,7 @@ static struct of_device_id const bcm963x
+@@ -1786,6 +1834,7 @@ static struct of_device_id const bcm963x
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	{ .compatible = "brcm,bcm963269bhr", .data = &board_963269bhr, },

+ 11 - 3
target/linux/bcm63xx/patches-5.4/541-board_963268gu_p300.patch

@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1572,6 +1572,64 @@ static struct board_info __initdata boar
+@@ -1572,6 +1572,72 @@ static struct board_info __initdata boar
   * known 63268/63269 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_63268
@@ -39,24 +39,32 @@
 +				.used	= 1,
 +				.phy_id	= 0,
 +				.name	= "GbE3",
++				.mii_override = 1,
++				.timing_sel = 1,
 +			},
 +
 +			[5] = {
 +				.used	= 1,
 +				.phy_id	= 1,
 +				.name	= "GbE1",
++				.mii_override = 1,
++				.timing_sel = 1,
 +			},
 +
 +			[6] = {
 +				.used	= 1,
 +				.phy_id	= 24,
 +				.name	= "GbE4",
++				.mii_override = 1,
++				.timing_sel = 1,
 +			},
 +
 +			[7] = {
 +				.used	= 1,
 +				.phy_id	= 25,
 +				.name	= "GbE5",
++				.mii_override = 1,
++				.timing_sel = 1,
 +			},
 +		},
 +	},
@@ -65,7 +73,7 @@
  static struct board_info __initdata board_963269bhr = {
  	.name				= "963269BHR",
  	.expected_cpu_id		= 0x63268,
-@@ -1740,6 +1798,7 @@ static const struct board_info __initcon
+@@ -1742,6 +1808,7 @@ static const struct board_info __initcon
  	&board_96368mvngr,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
@@ -73,7 +81,7 @@
  	&board_963269bhr,
  	&board_vw6339gu,
  #endif
-@@ -1831,6 +1890,7 @@ static struct of_device_id const bcm963x
+@@ -1833,6 +1900,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268

+ 2 - 2
target/linux/bcm63xx/patches-5.4/542-board_WAP-5813n.patch

@@ -57,7 +57,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
-@@ -1796,6 +1839,7 @@ static const struct board_info __initcon
+@@ -1806,6 +1849,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -65,7 +65,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963268bu_p300,
-@@ -1888,6 +1932,7 @@ static struct of_device_id const bcm963x
+@@ -1898,6 +1942,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6368
  	{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/543-board_VR-3025u.patch

@@ -60,7 +60,7 @@
  static struct sprom_fixup __initdata wap5813n_fixups[] = {
  	{ .offset = 97, .value = 0xfeed },
  	{ .offset = 98, .value = 0x15d1 },
-@@ -1839,6 +1892,7 @@ static const struct board_info __initcon
+@@ -1849,6 +1902,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -68,7 +68,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -1932,6 +1986,7 @@ static struct of_device_id const bcm963x
+@@ -1942,6 +1996,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6368
  	{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/544-board_VR-3025un.patch

@@ -60,7 +60,7 @@
  static struct sprom_fixup __initdata wap5813n_fixups[] = {
  	{ .offset = 97, .value = 0xfeed },
  	{ .offset = 98, .value = 0x15d1 },
-@@ -1893,6 +1946,7 @@ static const struct board_info __initcon
+@@ -1903,6 +1956,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_VR3025u,
@@ -68,7 +68,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -1987,6 +2041,7 @@ static struct of_device_id const bcm963x
+@@ -1997,6 +2051,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/545-board_P870HW-51a_v2.patch

@@ -49,7 +49,7 @@
  static struct board_info __initdata board_VR3025u = {
  	.name					= "96368M-1541N",
  	.expected_cpu_id		= 0x6368,
-@@ -1945,6 +1987,7 @@ static const struct board_info __initcon
+@@ -1955,6 +1997,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -57,7 +57,7 @@
  	&board_VR3025u,
  	&board_VR3025un,
  	&board_WAP5813n,
-@@ -2043,6 +2086,7 @@ static struct of_device_id const bcm963x
+@@ -2053,6 +2096,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
  	{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/546-board_hw520.patch

@@ -37,7 +37,7 @@
  static struct board_info __initdata board_HW553 = {
  	.name                           = "HW553",
  	.expected_cpu_id                = 0x6358,
-@@ -1971,6 +2001,7 @@ static const struct board_info __initcon
+@@ -1981,6 +2011,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
@@ -45,7 +45,7 @@
  	&board_HW553,
  	&board_HW556_A,
  	&board_HW556_B,
-@@ -2063,6 +2094,7 @@ static struct of_device_id const bcm963x
+@@ -2073,6 +2104,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "d-link,dsl-274xb-c2", .data = &board_dsl_274xb_rev_c, },
  	{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
  	{ .compatible = "d-link,dva-g3810bn-tl", .data = &board_DVAG3810BN, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/547-board_A4001N.patch

@@ -50,7 +50,7 @@
  static struct board_info __initdata board_A4001N1 = {
  	.name					= "963281T_TEF",
  	.expected_cpu_id			= 0x6328,
-@@ -1952,6 +1995,7 @@ static const struct board_info __initcon
+@@ -1962,6 +2005,7 @@ static const struct board_info __initcon
  	&board_AR5381u,
  	&board_AR5387un,
  	&board_963281TAN,
@@ -58,7 +58,7 @@
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
  	&board_FAST2704V2,
-@@ -2040,6 +2084,7 @@ static struct of_device_id const bcm963x
+@@ -2050,6 +2094,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96318ref-p300", .data = &board_96318ref_p300, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328

+ 2 - 2
target/linux/bcm63xx/patches-5.4/548-board_dsl-2751b_e1.patch

@@ -75,7 +75,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6318 */
  
  /*
-@@ -1989,6 +2057,7 @@ static const struct board_info __initcon
+@@ -1999,6 +2067,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
  	&board_96318ref_p300,
@@ -83,7 +83,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
-@@ -2082,6 +2151,7 @@ static struct of_device_id const bcm963x
+@@ -2092,6 +2161,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6318
  	{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
  	{ .compatible = "brcm,bcm96318ref-p300", .data = &board_96318ref_p300, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/549-board_DGND3700v1_3800B.patch

@@ -31,7 +31,7 @@
  static struct sprom_fixup __initdata vr3025u_fixups[] = {
  	{ .offset = 97, .value = 0xfeb3 },
  	{ .offset = 98, .value = 0x1618 },
-@@ -2131,6 +2155,7 @@ static const struct board_info __initcon
+@@ -2141,6 +2165,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -39,7 +39,7 @@
  	&board_P870HW51A_V2,
  	&board_VR3025u,
  	&board_VR3025un,
-@@ -2233,6 +2258,7 @@ static struct of_device_id const bcm963x
+@@ -2243,6 +2268,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
  	{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/550-board_homehub2a.patch

@@ -32,7 +32,7 @@
  static struct board_info __initdata board_HW520 = {
  	.name				= "HW6358GW_B",
  	.expected_cpu_id		= 0x6358,
-@@ -2138,6 +2163,7 @@ static const struct board_info __initcon
+@@ -2148,6 +2173,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
@@ -40,7 +40,7 @@
  	&board_HW520,
  	&board_HW553,
  	&board_HW556_A,
-@@ -2247,6 +2273,7 @@ static struct of_device_id const bcm963x
+@@ -2257,6 +2283,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "sfr,neufbox-4-foxconn-r1", .data = &board_nb4_fxc_r1, },
  	{ .compatible = "t-com,speedport-w-303v", .data = &board_spw303v, },
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/551-board_HG655b.patch

@@ -53,7 +53,7 @@
  static struct sprom_fixup __initdata vr3025u_fixups[] = {
  	{ .offset = 97, .value = 0xfeb3 },
  	{ .offset = 98, .value = 0x1618 },
-@@ -2182,6 +2228,7 @@ static const struct board_info __initcon
+@@ -2192,6 +2238,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_DGND3700v1_3800B,
@@ -61,7 +61,7 @@
  	&board_P870HW51A_V2,
  	&board_VR3025u,
  	&board_VR3025un,
-@@ -2285,6 +2332,7 @@ static struct of_device_id const bcm963x
+@@ -2295,6 +2342,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
  	{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/552-board_fast2704n.patch

@@ -46,7 +46,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6318 */
  
  /*
-@@ -2153,6 +2192,7 @@ static const struct board_info __initcon
+@@ -2163,6 +2202,7 @@ static const struct board_info __initcon
  	&board_96318ref,
  	&board_96318ref_p300,
  	&board_dsl_2751b_d1,
@@ -54,7 +54,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
-@@ -2250,6 +2290,7 @@ static struct of_device_id const bcm963x
+@@ -2260,6 +2300,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
  	{ .compatible = "brcm,bcm96318ref-p300", .data = &board_96318ref_p300, },
  	{ .compatible = "d-link,dsl-275xb-d1", .data = &board_dsl_2751b_d1, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/553-board_VR-3026e.patch

@@ -60,7 +60,7 @@
  static struct sprom_fixup __initdata wap5813n_fixups[] = {
  	{ .offset = 97, .value = 0xfeed },
  	{ .offset = 98, .value = 0x15d1 },
-@@ -2272,6 +2325,7 @@ static const struct board_info __initcon
+@@ -2282,6 +2335,7 @@ static const struct board_info __initcon
  	&board_P870HW51A_V2,
  	&board_VR3025u,
  	&board_VR3025un,
@@ -68,7 +68,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2372,6 +2426,7 @@ static struct of_device_id const bcm963x
+@@ -2382,6 +2436,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/554-board_R5010UNv2.patch

@@ -51,7 +51,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -2256,6 +2300,7 @@ static const struct board_info __initcon
+@@ -2266,6 +2310,7 @@ static const struct board_info __initcon
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
  	&board_FAST2704V2,
@@ -59,7 +59,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -2354,6 +2399,7 @@ static struct of_device_id const bcm963x
+@@ -2364,6 +2409,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,ar-5381u", .data = &board_AR5381u, },
  	{ .compatible = "comtrend,ar-5387un", .data = &board_AR5387un, },
  	{ .compatible = "d-link,dsl-274xb-f1", .data = &board_dsl_274xb_f1, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/555-board_HG622.patch

@@ -53,7 +53,7 @@
  static struct sprom_fixup __initdata vr3025u_fixups[] = {
  	{ .offset = 97, .value = 0xfeb3 },
  	{ .offset = 98, .value = 0x1618 },
-@@ -2366,6 +2412,7 @@ static const struct board_info __initcon
+@@ -2376,6 +2422,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_DGND3700v1_3800B,
@@ -61,7 +61,7 @@
  	&board_HG655b,
  	&board_P870HW51A_V2,
  	&board_VR3025u,
-@@ -2474,6 +2521,7 @@ static struct of_device_id const bcm963x
+@@ -2484,6 +2531,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
  	{ .compatible = "comtrend,vr-3026e", .data = &board_VR3026e, },
  	{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/556-board_EVG2000.patch

@@ -43,7 +43,7 @@
  static struct board_info __initdata board_HG655b = {
  	.name				= "HW65x",
  	.expected_cpu_id		= 0x6368,
-@@ -2412,6 +2448,7 @@ static const struct board_info __initcon
+@@ -2422,6 +2458,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_DGND3700v1_3800B,
@@ -51,7 +51,7 @@
  	&board_HG622,
  	&board_HG655b,
  	&board_P870HW51A_V2,
-@@ -2524,6 +2561,7 @@ static struct of_device_id const bcm963x
+@@ -2534,6 +2571,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "huawei,echolife-hg622", .data = &board_HG622, },
  	{ .compatible = "huawei,echolife-hg655b", .data = &board_HG655b, },
  	{ .compatible = "netgear,dgnd3700-v1", .data = &board_DGND3700v1_3800B, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/557-board_AV4202N.patch

@@ -52,7 +52,7 @@
  static struct board_info __initdata board_96368mvwg = {
  	.name				= "96368MVWG",
  	.expected_cpu_id		= 0x6368,
-@@ -2445,6 +2490,7 @@ static const struct board_info __initcon
+@@ -2455,6 +2500,7 @@ static const struct board_info __initcon
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6368
@@ -60,7 +60,7 @@
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_DGND3700v1_3800B,
-@@ -2552,6 +2598,7 @@ static struct of_device_id const bcm963x
+@@ -2562,6 +2608,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "sfr,neufbox-6-sercomm-r0", .data = &board_nb6, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6368

+ 2 - 2
target/linux/bcm63xx/patches-5.4/558-board_VH4032N.patch

@@ -107,7 +107,7 @@
  static struct sprom_fixup __initdata wap5813n_fixups[] = {
  	{ .offset = 97, .value = 0xfeed },
  	{ .offset = 98, .value = 0x15d1 },
-@@ -2498,6 +2598,7 @@ static const struct board_info __initcon
+@@ -2508,6 +2608,7 @@ static const struct board_info __initcon
  	&board_HG622,
  	&board_HG655b,
  	&board_P870HW51A_V2,
@@ -115,7 +115,7 @@
  	&board_VR3025u,
  	&board_VR3025un,
  	&board_VR3026e,
-@@ -2609,6 +2710,7 @@ static struct of_device_id const bcm963x
+@@ -2619,6 +2720,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "huawei,echolife-hg655b", .data = &board_HG655b, },
  	{ .compatible = "netgear,dgnd3700-v1", .data = &board_DGND3700v1_3800B, },
  	{ .compatible = "netgear,evg2000", .data = &board_EVG2000, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/559-board_R1000H.patch

@@ -30,7 +30,7 @@
  static struct board_info __initdata board_VR3025u = {
  	.name					= "96368M-1541N",
  	.expected_cpu_id		= 0x6368,
-@@ -2598,6 +2621,7 @@ static const struct board_info __initcon
+@@ -2608,6 +2631,7 @@ static const struct board_info __initcon
  	&board_HG622,
  	&board_HG655b,
  	&board_P870HW51A_V2,
@@ -38,7 +38,7 @@
  	&board_VH4032N,
  	&board_VR3025u,
  	&board_VR3025un,
-@@ -2699,6 +2723,7 @@ static struct of_device_id const bcm963x
+@@ -2709,6 +2733,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "sfr,neufbox-6-sercomm-r0", .data = &board_nb6, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6368

+ 2 - 2
target/linux/bcm63xx/patches-5.4/560-board_AR-5315u.patch

@@ -68,7 +68,7 @@
  static struct sprom_fixup __initdata dsl2751b_e1_fixups[] = {
  	{ .offset = 96, .value = 0x2046 },
  	{ .offset = 97, .value = 0xfe9d },
-@@ -2538,6 +2599,7 @@ static const struct board_info __initcon
+@@ -2548,6 +2609,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
  	&board_96318ref_p300,
@@ -76,7 +76,7 @@
  	&board_dsl_2751b_d1,
  	&board_FAST2704N,
  #endif
-@@ -2643,6 +2705,7 @@ static struct of_device_id const bcm963x
+@@ -2653,6 +2715,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6318
  	{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
  	{ .compatible = "brcm,bcm96318ref-p300", .data = &board_96318ref_p300, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/561-board_AD1018.patch

@@ -74,7 +74,7 @@
  static struct sprom_fixup __initdata ar5381u_fixups[] = {
  	{ .offset = 97, .value = 0xfee5 },
  	{ .offset = 98, .value = 0x157c },
-@@ -2605,6 +2672,7 @@ static const struct board_info __initcon
+@@ -2615,6 +2682,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -82,7 +82,7 @@
  	&board_AR5381u,
  	&board_AR5387un,
  	&board_963281TAN,
-@@ -2719,6 +2787,8 @@ static struct of_device_id const bcm963x
+@@ -2729,6 +2797,8 @@ static struct of_device_id const bcm963x
  	{ .compatible = "d-link,dsl-274xb-f1", .data = &board_dsl_274xb_f1, },
  	{ .compatible = "nucom,r5010un-v2", .data = &board_R5010UNV2, },
  	{ .compatible = "sagem,fast-2704-v2", .data = &board_FAST2704V2, },

+ 3 - 3
target/linux/bcm63xx/patches-5.4/562-board_sr102.patch

@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2654,6 +2654,49 @@ static struct board_info __initdata boar
+@@ -2664,6 +2664,49 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -50,7 +50,7 @@
  #endif /* CONFIG_BCM63XX_CPU_63268 */
  
  /*
-@@ -2762,6 +2805,7 @@ static const struct board_info __initcon
+@@ -2772,6 +2815,7 @@ static const struct board_info __initcon
  	&board_963268bu_p300,
  	&board_963269bhr,
  	&board_vw6339gu,
@@ -58,7 +58,7 @@
  #endif
  };
  
-@@ -2875,6 +2919,7 @@ static struct of_device_id const bcm963x
+@@ -2885,6 +2929,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm963268bu-p300", .data = &board_963268bu_p300, },
  	{ .compatible = "brcm,bcm963269bhr", .data = &board_963269bhr, },
  	{ .compatible = "inteno,vg50", .data = &board_vw6339gu, },

+ 3 - 3
target/linux/bcm63xx/patches-5.4/563-board-VR-3032u.patch

@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2610,6 +2610,44 @@ static struct board_info __initdata boar
+@@ -2618,6 +2618,44 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -45,7 +45,7 @@
  static struct board_info __initdata board_vw6339gu = {
  	.name				= "VW6339GU",
  	.expected_cpu_id		= 0x63268,
-@@ -2804,6 +2842,7 @@ static const struct board_info __initcon
+@@ -2814,6 +2852,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963268bu_p300,
  	&board_963269bhr,
@@ -53,7 +53,7 @@
  	&board_vw6339gu,
  	&board_BSKYB_63168,
  #endif
-@@ -2918,6 +2957,7 @@ static struct of_device_id const bcm963x
+@@ -2928,6 +2967,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_63268
  	{ .compatible = "brcm,bcm963268bu-p300", .data = &board_963268bu_p300, },
  	{ .compatible = "brcm,bcm963269bhr", .data = &board_963269bhr, },

+ 2 - 2
target/linux/bcm63xx/patches-5.4/564-board-DGND3700v2.patch

@@ -32,7 +32,7 @@
  static struct board_info __initdata board_fast2504n = {
  	.name				= "F@ST2504n",
  	.expected_cpu_id		= 0x6362,
-@@ -2820,6 +2845,7 @@ static const struct board_info __initcon
+@@ -2830,6 +2855,7 @@ static const struct board_info __initcon
  
  #ifdef CONFIG_BCM63XX_CPU_6362
  	&board_nb6,
@@ -40,7 +40,7 @@
  	&board_fast2504n,
  #endif
  
-@@ -2935,6 +2961,7 @@ static struct of_device_id const bcm963x
+@@ -2945,6 +2971,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "bt,home-hub-2-a", .data = &board_homehub2a, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6362

+ 5 - 3
target/linux/bcm63xx/patches-5.4/565-board-VG-8050.patch

@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2635,6 +2635,29 @@ static struct board_info __initdata boar
+@@ -2643,6 +2643,31 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -21,6 +21,8 @@
 +				.bypass_link = 1,
 +				.force_speed = 1000,
 +				.force_duplex_full = 1,
++				.mii_override = 1,
++				.timing_sel = 1,
 +				.name = "RGMII",
 +			},
 +		},
@@ -30,7 +32,7 @@
  static struct board_info __initdata board_VR3032u = {
  	.name				= "963168M-1841N1",
  	.expected_cpu_id	= 0x63268,
-@@ -2868,6 +2891,7 @@ static const struct board_info __initcon
+@@ -2878,6 +2903,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963268bu_p300,
  	&board_963269bhr,
@@ -38,7 +40,7 @@
  	&board_VR3032u,
  	&board_vw6339gu,
  	&board_BSKYB_63168,
-@@ -2984,6 +3008,7 @@ static struct of_device_id const bcm963x
+@@ -2994,6 +3020,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_63268
  	{ .compatible = "brcm,bcm963268bu-p300", .data = &board_963268bu_p300, },
  	{ .compatible = "brcm,bcm963269bhr", .data = &board_963269bhr, },