add support for 'MAGIC' bcm6348-based board
authorFlorian Fainelli <florian@openwrt.org>
Sat, 19 Feb 2011 12:44:27 +0000 (12:44 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Sat, 19 Feb 2011 12:44:27 +0000 (12:44 +0000)
I wrote a patch to add 96348SV board (aka MAGIC) support to trunk.
In my case I've found it in a Telsey "Alice W-Gate" router, fairly common
(in the past) in Italy.

I used the board definition (GPIOs, leds, ...) from the Broadcom GPL-2
relased code (here is a mirror: http://beghiero.myftp.org/sorgenti/boardparms.c )

Thanks to KanjiMonster for the support on the IRC channel.

Signed-off-by: Laurento Frittella <laurento.frittella@gmail.com>
SVN-Revision: 25584

target/linux/brcm63xx/base-files/etc/uci-defaults/brcm63xx_fixcrc.sh
target/linux/brcm63xx/patches-2.6.35/450-board-MAGIC.patch [new file with mode: 0644]

index fe35dc76134b33bf7f42d42a9b894db67086086a..aea4d5be5a9068eecf626750a6072d0161b83676 100755 (executable)
@@ -13,7 +13,7 @@ do_fixcrc() {
 brcm63xx_detect
 
 case "$board_name" in
-       "bcm63xx/CPVA642 "*)
+       "bcm63xx/CPVA642 "* | "bcm63xx/MAGIC "*)
                do_fixcrc
                ;;
 esac
diff --git a/target/linux/brcm63xx/patches-2.6.35/450-board-MAGIC.patch b/target/linux/brcm63xx/patches-2.6.35/450-board-MAGIC.patch
new file mode 100644 (file)
index 0000000..ad458f3
--- /dev/null
@@ -0,0 +1,89 @@
+Index: linux-2.6.35.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
+===================================================================
+--- linux-2.6.35.9.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c
++++ linux-2.6.35.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
+@@ -775,6 +775,76 @@ static struct board_info __initdata boar
+       },
+ };
++static struct board_info __initdata board_96348sv = {
++      .name                           = "MAGIC",
++      .expected_cpu_id        = 0x6348,
++
++      .has_uart0                      = 1,
++      .has_enet0                      = 1,
++      .has_enet1                      = 1,
++      .has_pci                        = 1,
++
++      .enet0 = {
++              .has_phy                        = 1,
++              .use_internal_phy       = 1,
++      },
++      .enet1 = {
++              /* is has BP_ENET_EXTERNAL_PHY */
++              .force_speed_100        = 1,
++              .force_duplex_full      = 1,
++      },
++
++      .has_ohci0                      = 1,
++      .has_pccard                     = 1,
++      .has_ehci0                      = 1,
++
++      .has_dsp                        = 1,
++      .dsp = {
++              .gpio_rst               = 25,
++              .gpio_int               = 34,
++              .cs                             = 2,
++              .ext_irq                = 2,
++      },
++
++      .leds = {
++              {
++                      .name           = "voip",
++                      .gpio           = 22,
++                      .active_low     = 1,
++              },
++              {
++                      .name           = "adsl",
++                      .gpio           = 5,
++                      .active_low     = 1,
++              },
++              {
++                      .name           = "wifi",
++                      .gpio           = 28,
++              },
++              {
++                      .name           = "usb",
++                      .gpio           = 35,
++                      .active_low     = 1,
++              },
++              {
++                      .name           = "hpna",
++                      .gpio           = 4,
++                      .active_low     = 1,
++              },
++              {
++                      .name           = "power",
++                      .gpio           = 0,
++                      .active_low     = 1,
++                      .default_trigger = "default-on",
++              },
++              {
++                      .name           = "stop",
++                      .gpio           = 1,
++                      .active_low     = 1,
++              },
++      },
++};
++
+ #endif
+ /*
+@@ -1686,6 +1756,7 @@ static const struct board_info __initdat
+       &board_96348_D4PW,
+       &board_spw500v,
+       &board_ct536_ct5621,
++      &board_96348sv,
+ #endif
+ #ifdef CONFIG_BCM63XX_CPU_6358