diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/01_leds b/target/linux/brcm63xx/base-files/etc/uci-defaults/01_leds index eee89b23b20..854b3b284ab 100644 --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/01_leds +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/01_leds @@ -11,6 +11,9 @@ case "$board_name" in ucidef_set_led_netdev "lan" "LAN" "A4001N1:green:eth" "eth0" ucidef_set_led_usbdev "usb" "USB" "A4001N1:green:3g" "1-1" ;; +96328dg2x2) + ucidef_set_led_usbdev "usb" "USB" "A4001N:green:usb" "1-1" + ;; 'F@ST2704V2') ucidef_set_led_usbdev "usb" "USB" "F@ST2704V2:green:usb" "1-1" ;; diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network index 97ef3e82f2c..f4985c7d6e6 100755 --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network @@ -82,6 +82,7 @@ HW6358GW_B) 96328A-1441N1 |\ 963281TAN |\ 963281T_TEF |\ +96328dg2x2 |\ 96368M-1341N |\ 96368M-1541N |\ 96368MVNgr |\ diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc index 560bb203793..2840eb1940e 100755 --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc @@ -18,6 +18,7 @@ case "$board_name" in 96328A-1441N1 |\ 963281TAN |\ 963281T_TEF |\ + 96328dg2x2 |\ 96358-502V |\ 96368M-1341N |\ 96368M-1541N |\ diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh index d5784db750d..1bcd3b93295 100755 --- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh +++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh @@ -32,6 +32,11 @@ brcm63xx_detect() { status_led="96328avng::power" ifname=eth0 ;; + 96328dg2x2) + brcm63xx_has_reset_button="true" + status_led="A4001N:green:power" + ifname="eth0" + ;; 96328A-1241N) brcm63xx_has_reset_button="true" status_led="AR-5381u:green:power" diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile index dbda363795a..781425f9d9e 100755 --- a/target/linux/brcm63xx/image/Makefile +++ b/target/linux/brcm63xx/image/Makefile @@ -201,6 +201,8 @@ define Image/Build $(call Image/Build/CFE,$(1),96368MVNgr,6368,96368MVNgr-generic) $(call Image/Build/CFE,$(1),96368MVWG,6368,96368MVWG-generic) + # ADB P.DG A4001N + $(call Image/Build/CFE,$(1),96328dg2x2,6328,A4001N,,--pad 4) # ADB P.DG A4001N1 $(call Image/Build/CFE,$(1),963281T_TEF,6328,A4001N1,,--pad 8) # Asmax AR 1004g diff --git a/target/linux/brcm63xx/patches-3.10/566-board_A4001N.patch b/target/linux/brcm63xx/patches-3.10/566-board_A4001N.patch new file mode 100644 index 00000000000..1685918f4f0 --- /dev/null +++ b/target/linux/brcm63xx/patches-3.10/566-board_A4001N.patch @@ -0,0 +1,99 @@ +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +@@ -552,6 +552,88 @@ static struct board_info __initdata boar + }, + }; + ++static struct board_info __initdata board_A4001N = { ++ .name = "96328dg2x2", ++ .expected_cpu_id = 0x6328, ++ ++ .has_uart0 = 1, ++ .has_pci = 1, ++ .has_ohci0 = 1, ++ .has_ehci0 = 1, ++ .num_usbh_ports = 1, ++ .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", ++ }, ++ }, ++ }, ++ ++ .leds = { ++ { ++ .name = "A4001N:green:power", ++ .gpio = 8, ++ .default_trigger = "default-on", ++ }, ++ { ++ .name = "A4001N:red:power", ++ .gpio = 4, ++ }, ++ { ++ .name = "A4001N:red:inet", ++ .gpio = 1, ++ }, ++ { ++ .name = "A4001N:green:usb", ++ .gpio = 10, ++ .active_low = 1, ++ }, ++ { ++ .name = "A4001N:green:dsl", ++ .gpio = 11, ++ .active_low = 1, ++ }, ++ }, ++ ++ .buttons = { ++ { ++ .desc = "reset", ++ .gpio = 23, ++ .active_low = 1, ++ .type = EV_KEY, ++ .code = KEY_RESTART, ++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, ++ }, ++ { ++ .desc = "wps", ++ .gpio = 24, ++ .active_low = 1, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, ++ }, ++ }, ++}; ++ + static struct board_info __initdata board_A4001N1 = { + .name = "963281T_TEF", + .expected_cpu_id = 0x6328, +@@ -5166,6 +5248,7 @@ static const struct board_info __initcon + &board_AR5381u, + &board_AR5387un, + &board_963281TAN, ++ &board_A4001N, + &board_A4001N1, + &board_dsl_274xb_f1, + &board_FAST2704V2, diff --git a/target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch b/target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch new file mode 100644 index 00000000000..14c26b8ce8c --- /dev/null +++ b/target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch @@ -0,0 +1,99 @@ +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +@@ -554,6 +554,88 @@ static struct board_info __initdata boar + }, + }; + ++static struct board_info __initdata board_A4001N = { ++ .name = "96328dg2x2", ++ .expected_cpu_id = 0x6328, ++ ++ .has_uart0 = 1, ++ .has_pci = 1, ++ .has_ohci0 = 1, ++ .has_ehci0 = 1, ++ .num_usbh_ports = 1, ++ .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", ++ }, ++ }, ++ }, ++ ++ .leds = { ++ { ++ .name = "A4001N:green:power", ++ .gpio = 8, ++ .default_trigger = "default-on", ++ }, ++ { ++ .name = "A4001N:red:power", ++ .gpio = 4, ++ }, ++ { ++ .name = "A4001N:red:inet", ++ .gpio = 1, ++ }, ++ { ++ .name = "A4001N:green:usb", ++ .gpio = 10, ++ .active_low = 1, ++ }, ++ { ++ .name = "A4001N:green:dsl", ++ .gpio = 11, ++ .active_low = 1, ++ }, ++ }, ++ ++ .buttons = { ++ { ++ .desc = "reset", ++ .gpio = 23, ++ .active_low = 1, ++ .type = EV_KEY, ++ .code = KEY_RESTART, ++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, ++ }, ++ { ++ .desc = "wps", ++ .gpio = 24, ++ .active_low = 1, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL, ++ }, ++ }, ++}; ++ + static struct board_info __initdata board_A4001N1 = { + .name = "963281T_TEF", + .expected_cpu_id = 0x6328, +@@ -5176,6 +5258,7 @@ static const struct board_info __initcon + &board_AR5381u, + &board_AR5387un, + &board_963281TAN, ++ &board_A4001N, + &board_A4001N1, + &board_dsl_274xb_f1, + &board_FAST2704V2,