f323dec4f8
Runtime-tested on Comtrend AR-5387un. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
308 lines
5.7 KiB
Diff
308 lines
5.7 KiB
Diff
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
|
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
|
@@ -2697,6 +2697,273 @@ static struct board_info __initdata boar
|
|
#endif /* CONFIG_BCM63XX_CPU_6368 */
|
|
|
|
/*
|
|
+ * known 63268/63269 boards
|
|
+ */
|
|
+#ifdef CONFIG_BCM63XX_CPU_63268
|
|
+static struct board_info __initdata board_963268bu_p300 = {
|
|
+ .name = "963268BU_P300",
|
|
+ .expected_cpu_id = 0x63268,
|
|
+
|
|
+ .has_ohci0 = 1,
|
|
+ .has_ehci0 = 1,
|
|
+ .num_usbh_ports = 1,
|
|
+
|
|
+ .has_usbd = 1,
|
|
+ .usbd = {
|
|
+ .use_fullspeed = 0,
|
|
+ .port_no = 0,
|
|
+ },
|
|
+
|
|
+ .has_enetsw = 1,
|
|
+ .enetsw = {
|
|
+ .used_ports = {
|
|
+ [0] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 17,
|
|
+ .name = "FE1",
|
|
+ },
|
|
+ [3] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 4,
|
|
+ .name = "GbE2",
|
|
+ },
|
|
+ [4] = {
|
|
+ .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,
|
|
+ },
|
|
+ },
|
|
+ },
|
|
+};
|
|
+
|
|
+static struct board_info __initdata board_963269bhr = {
|
|
+ .name = "963269BHR",
|
|
+ .expected_cpu_id = 0x63268,
|
|
+
|
|
+ .has_pci = 1,
|
|
+ .has_ohci0 = 1,
|
|
+ .has_ehci0 = 1,
|
|
+
|
|
+ .has_enetsw = 1,
|
|
+ .enetsw = {
|
|
+ .used_ports = {
|
|
+ [0] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 1,
|
|
+ .name = "port1",
|
|
+ },
|
|
+ [1] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 2,
|
|
+ .name = "port2",
|
|
+ },
|
|
+ [2] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 3,
|
|
+ .name = "port3",
|
|
+ },
|
|
+ [3] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 4,
|
|
+ .name = "port4",
|
|
+ },
|
|
+ },
|
|
+ },
|
|
+};
|
|
+
|
|
+static struct board_info __initdata board_BSKYB_63168 = {
|
|
+ .name = "BSKYB_63168",
|
|
+ .expected_cpu_id = 0x63268,
|
|
+
|
|
+ .has_pci = 1,
|
|
+ .has_ohci0 = 1,
|
|
+ .has_ehci0 = 1,
|
|
+ .num_usbh_ports = 2,
|
|
+
|
|
+ .has_enetsw = 1,
|
|
+ .enetsw = {
|
|
+ .used_ports = {
|
|
+ [0] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 1,
|
|
+ .name = "Port 1",
|
|
+ },
|
|
+ [1] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 2,
|
|
+ .name = "Port 2",
|
|
+ },
|
|
+ [2] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 3,
|
|
+ .name = "Port 3",
|
|
+ },
|
|
+ [3] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 4,
|
|
+ .name = "Port 4",
|
|
+ },
|
|
+ },
|
|
+ },
|
|
+};
|
|
+
|
|
+static struct board_info __initdata board_H500s = {
|
|
+ .name = "BXK00C-1.6",
|
|
+ .expected_cpu_id = 0x63268,
|
|
+
|
|
+ .has_ohci0 = 1,
|
|
+ .has_ehci0 = 1,
|
|
+ .num_usbh_ports = 1,
|
|
+
|
|
+ .has_enetsw = 1,
|
|
+ .enetsw = {
|
|
+ .used_ports = {
|
|
+ [3] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 12,
|
|
+ .name = "WAN",
|
|
+ },
|
|
+ [4] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 0,
|
|
+ .bypass_link = 1,
|
|
+ .force_speed = 1000,
|
|
+ .force_duplex_full = 1,
|
|
+ .mii_override = 1,
|
|
+ .timing_sel = 1,
|
|
+ .name = "RGMII",
|
|
+ },
|
|
+ },
|
|
+ },
|
|
+};
|
|
+
|
|
+static struct board_info __initdata board_VG8050 = {
|
|
+ .name = "963169P-1861N5",
|
|
+ .expected_cpu_id = 0x63268,
|
|
+
|
|
+ .has_ohci0 = 1,
|
|
+ .has_ehci0 = 1,
|
|
+ .num_usbh_ports = 2,
|
|
+
|
|
+ .has_enetsw = 1,
|
|
+ .enetsw = {
|
|
+ .used_ports = {
|
|
+ [6] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 0xff,
|
|
+ .bypass_link = 1,
|
|
+ .force_speed = 1000,
|
|
+ .force_duplex_full = 1,
|
|
+ .mii_override = 1,
|
|
+ .timing_sel = 1,
|
|
+ .name = "RGMII",
|
|
+ },
|
|
+ },
|
|
+ },
|
|
+};
|
|
+
|
|
+static struct board_info __initdata board_VR3032u = {
|
|
+ .name = "963168M-1841N1",
|
|
+ .expected_cpu_id = 0x63268,
|
|
+
|
|
+ .has_ohci0 = 1,
|
|
+ .has_ehci0 = 1,
|
|
+ .num_usbh_ports = 1,
|
|
+
|
|
+ .has_enetsw = 1,
|
|
+ .enetsw = {
|
|
+ .used_ports = {
|
|
+ [0] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 1,
|
|
+ .name = "LAN2",
|
|
+ },
|
|
+ [1] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 2,
|
|
+ .name = "LAN3",
|
|
+ },
|
|
+ [2] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 3,
|
|
+ .name = "LAN4",
|
|
+ },
|
|
+ [3] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 4,
|
|
+ .name = "LAN1",
|
|
+ },
|
|
+ },
|
|
+ },
|
|
+};
|
|
+
|
|
+static struct board_info __initdata board_vw6339gu = {
|
|
+ .name = "VW6339GU",
|
|
+ .expected_cpu_id = 0x63268,
|
|
+
|
|
+ .has_ohci0 = 1,
|
|
+ .has_ehci0 = 1,
|
|
+ .num_usbh_ports = 1,
|
|
+
|
|
+ .has_enetsw = 1,
|
|
+ .enetsw = {
|
|
+ .used_ports = {
|
|
+ [0] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 1,
|
|
+ .name = "LAN2",
|
|
+ },
|
|
+ [1] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 2,
|
|
+ .name = "LAN3",
|
|
+ },
|
|
+ [2] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 3,
|
|
+ .name = "LAN4",
|
|
+ },
|
|
+ [3] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 4,
|
|
+ .name = "LAN1",
|
|
+ },
|
|
+ [4] = {
|
|
+ .used = 1,
|
|
+ .phy_id = 7,
|
|
+ .name = "WAN",
|
|
+ .mii_override = 1,
|
|
+ .timing_sel = 1,
|
|
+ },
|
|
+ },
|
|
+ },
|
|
+};
|
|
+#endif /* CONFIG_BCM63XX_CPU_63268 */
|
|
+
|
|
+/*
|
|
* all boards
|
|
*/
|
|
static const struct board_info __initconst *bcm963xx_boards[] = {
|
|
@@ -2801,6 +3068,15 @@ static const struct board_info __initcon
|
|
&board_VR3026e,
|
|
&board_WAP5813n,
|
|
#endif /* CONFIG_BCM63XX_CPU_6368 */
|
|
+#ifdef CONFIG_BCM63XX_CPU_63268
|
|
+ &board_963268bu_p300,
|
|
+ &board_963269bhr,
|
|
+ &board_BSKYB_63168,
|
|
+ &board_H500s,
|
|
+ &board_VG8050,
|
|
+ &board_VR3032u,
|
|
+ &board_vw6339gu,
|
|
+#endif /* CONFIG_BCM63XX_CPU_63268 */
|
|
};
|
|
|
|
static struct of_device_id const bcm963xx_boards_dt[] = {
|
|
@@ -2918,6 +3194,14 @@ static struct of_device_id const bcm963x
|
|
{ .compatible = "zyxel,p870hw-51a-v2", .data = &board_P870HW51A_V2, },
|
|
#endif /* CONFIG_BCM63XX_CPU_6368 */
|
|
#ifdef CONFIG_BCM63XX_CPU_63268
|
|
+ { .compatible = "brcm,bcm963268bu-p300", .data = &board_963268bu_p300, },
|
|
+ { .compatible = "brcm,bcm963269bhr", .data = &board_963269bhr, },
|
|
+ { .compatible = "comtrend,vg-8050", .data = &board_VG8050, },
|
|
+ { .compatible = "comtrend,vr-3032u", .data = &board_VR3032u, },
|
|
+ { .compatible = "inteno,vg50", .data = &board_vw6339gu, },
|
|
+ { .compatible = "sercomm,h500-s-lowi", .data = &board_H500s, },
|
|
+ { .compatible = "sercomm,h500-s-vfes", .data = &board_H500s, },
|
|
+ { .compatible = "sky,sr102", .data = &board_BSKYB_63168, },
|
|
#endif /* CONFIG_BCM63XX_CPU_63268 */
|
|
#endif /* CONFIG_OF */
|
|
{ },
|