From b7f8e1276d0d44a76cd7d4dfcf5e15fc3f2bffa4 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Sat, 19 Feb 2011 12:44:27 +0000 Subject: [PATCH] add support for 'MAGIC' bcm6348-based board 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 SVN-Revision: 25584 --- .../etc/uci-defaults/brcm63xx_fixcrc.sh | 2 +- .../patches-2.6.35/450-board-MAGIC.patch | 89 +++++++++++++++++++ 2 files changed, 90 insertions(+), 1 deletion(-) create mode 100644 target/linux/brcm63xx/patches-2.6.35/450-board-MAGIC.patch diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/brcm63xx_fixcrc.sh b/target/linux/brcm63xx/base-files/etc/uci-defaults/brcm63xx_fixcrc.sh index fe35dc7613..aea4d5be5a 100755 --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/brcm63xx_fixcrc.sh +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/brcm63xx_fixcrc.sh @@ -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 index 0000000000..ad458f3455 --- /dev/null +++ b/target/linux/brcm63xx/patches-2.6.35/450-board-MAGIC.patch @@ -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 -- 2.30.2