brcm63xx: Add support for ADB P.DG A4001N
authorjogo <jogo@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 27 Jul 2014 17:44:59 +0000 (17:44 +0000)
committerjogo <jogo@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 27 Jul 2014 17:44:59 +0000 (17:44 +0000)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41852 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/brcm63xx/base-files/etc/uci-defaults/01_leds
target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
target/linux/brcm63xx/base-files/lib/brcm63xx.sh
target/linux/brcm63xx/image/Makefile
target/linux/brcm63xx/patches-3.10/566-board_A4001N.patch [new file with mode: 0644]
target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch [new file with mode: 0644]

index eee89b2..854b3b2 100644 (file)
@@ -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"
        ;;
index 97ef3e8..f4985c7 100755 (executable)
@@ -82,6 +82,7 @@ HW6358GW_B)
 96328A-1441N1 |\
 963281TAN |\
 963281T_TEF |\
+96328dg2x2 |\
 96368M-1341N |\
 96368M-1541N |\
 96368MVNgr |\
index 560bb20..2840eb1 100755 (executable)
@@ -18,6 +18,7 @@ case "$board_name" in
        96328A-1441N1 |\
        963281TAN |\
        963281T_TEF |\
+       96328dg2x2 |\
        96358-502V |\
        96368M-1341N |\
        96368M-1541N |\
index d5784db..1bcd3b9 100755 (executable)
@@ -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"
index dbda363..781425f 100755 (executable)
@@ -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 (file)
index 0000000..1685918
--- /dev/null
@@ -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 (file)
index 0000000..14c26b8
--- /dev/null
@@ -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,