This patch allows to successfully build and image for Alice Gate W2+ (also known as "Vela" or "AG3" or "AliceV3-S1") routers, distributed in Italy by Telecom Italia ( http://aiuto.alice.it/informazioni/modemadsl/alice_w2.html ): the resulting image can be flashed from from CFE mini-httpd web interface. The first two patched files are needed to have the board recognized and the fw flashed, the remaining are needed to avoid a kernel panic in recognizing the flash chip (same problem as this https://dev.openwrt.org/ticket/1855 ): as I can't write code, I didn't find anything more elegant :-)
The first boot is fine, but actually after reboot the router complains about bad CRC (problem known already https://lists.openwrt.org/pipermail/openwrt-devel/2009-August/004815.html ). Of course DSL is NOT working. Signed-off-by: Gianfranco Bauco de_gianfranc...@hotmail.com Index: target/linux/brcm63xx/files/arch/mips/bcm63xx/boards/board_bcm963xx.c =================================================================== --- target/linux/brcm63xx/files/arch/mips/bcm63xx/boards/board_bcm963xx.c (revision 17352) +++ target/linux/brcm63xx/files/arch/mips/bcm63xx/boards/board_bcm963xx.c (working copy) @@ -417,7 +417,27 @@ .has_ohci0 = 1, }; +static struct board_info __initdata board_alicev3_s1 = { + .name = "Alice Gate W2+", + .expected_cpu_id = 0x6348, + .has_enet0 = 1, + .has_enet1 = 1, + .has_pci = 1, + + .enet0 = { + .has_phy = 1, + .use_internal_phy = 1, + }, + .enet1 = { + .force_speed_100 = 1, + .force_duplex_full = 1, + }, + + .has_ohci0 = 1, +}; + + #endif /* @@ -585,6 +605,7 @@ &board_FAST2404, &board_DV201AMR, &board_96348gw_a, + &board_alicev3_s1, #endif #ifdef CONFIG_BCM63XX_CPU_6358 Index: target/linux/brcm63xx/image/Makefile =================================================================== --- target/linux/brcm63xx/image/Makefile (revision 17352) +++ target/linux/brcm63xx/image/Makefile (working copy) @@ -172,6 +172,8 @@ # Pirelli A226G $(call Image/Build/CFEAGPF,$(1),DWV-S0,6358,0x10000,bccfe,,bccfe) $(call Image/Build/CFEAGPF,$(1),DWV-S0,6358,0x10000,ag306,DWV_96358,a226g) + # Pirelli Alice Gate W2+ AliceV3-S1 AG3 Vela + $(call Image/Build/CFE,$(1),AliceV3-S1,6348,bc310,,bc310) endef $(eval $(call BuildImage)) Index: target/linux/brcm63xx/patches-2.6.27/99-cfi_probe_error.patch =================================================================== --- target/linux/brcm63xx/patches-2.6.27/99-cfi_probe_error.patch (revision 0) +++ target/linux/brcm63xx/patches-2.6.27/99-cfi_probe_error.patch (revision 0) @@ -0,0 +1,14 @@ +--- a/drivers/mtd/chips/gen_probe.c ++++ b/drivers/mtd/chips/gen_probe.c +@@ -127,9 +127,9 @@ + * chip in read mode. + */ + +- for (i = 1; i < max_chips; i++) { ++ /*for (i = 1; i < max_chips; i++) { + cp->probe_chip(map, i << cfi.chipshift, chip_map, &cfi); +- } ++ }*/ + + /* + * Now allocate the space for the structures we need to return to Index: target/linux/brcm63xx/patches-2.6.28/99-cfi_probe_error.patch =================================================================== --- target/linux/brcm63xx/patches-2.6.28/99-cfi_probe_error.patch (revision 0) +++ target/linux/brcm63xx/patches-2.6.28/99-cfi_probe_error.patch (revision 0) @@ -0,0 +1,14 @@ +--- a/drivers/mtd/chips/gen_probe.c ++++ b/drivers/mtd/chips/gen_probe.c +@@ -127,9 +127,9 @@ + * chip in read mode. + */ + +- for (i = 1; i < max_chips; i++) { ++ /*for (i = 1; i < max_chips; i++) { + cp->probe_chip(map, i << cfi.chipshift, chip_map, &cfi); +- } ++ }*/ + + /* + * Now allocate the space for the structures we need to return to Index: target/linux/brcm63xx/patches-2.6.30/99-cfi_probe_error.patch =================================================================== --- target/linux/brcm63xx/patches-2.6.30/99-cfi_probe_error.patch (revision 0) +++ target/linux/brcm63xx/patches-2.6.30/99-cfi_probe_error.patch (revision 0) @@ -0,0 +1,14 @@ +--- a/drivers/mtd/chips/gen_probe.c ++++ b/drivers/mtd/chips/gen_probe.c +@@ -127,9 +127,9 @@ + * chip in read mode. + */ + +- for (i = 1; i < max_chips; i++) { ++ /*for (i = 1; i < max_chips; i++) { + cp->probe_chip(map, i << cfi.chipshift, chip_map, &cfi); +- } ++ }*/ + + /* + * Now allocate the space for the structures we need to return to _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel