diff --git a/scripts/arm-magic.sh b/scripts/arm-magic.sh index 2b569358b..4c41b475e 100755 --- a/scripts/arm-magic.sh +++ b/scripts/arm-magic.sh @@ -22,7 +22,7 @@ # NOTE: for now it's for only IXP4xx in big endian mode # list of supported boards, in "boardname machtypeid" format -for board in "avila 526" "gateway7001 731" "nslu2 597" "nas100d 865" "wg302v1 889" "wg302v2 890" "pronghornmetro 1040" "compex 1273" "wrt300nv2 1077" "loft 849" "dsmg600 964" "fsg3 1091" "ap1000 1543" "tw2662 1658" "tw5334 1664" +for board in "avila 526" "gateway7001 731" "nslu2 597" "nas100d 865" "wg302v1 889" "wg302v2 890" "pronghornmetro 1040" "compex 1273" "wrt300nv2 1077" "loft 849" "dsmg600 964" "fsg3 1091" "ap1000 1543" "tw2662 1658" "tw5334 1664" "ixdpg425 604" do set -- $board hexid=$(printf %x\\n $2) diff --git a/target/linux/ixp4xx/config-default b/target/linux/ixp4xx/config-default index 2bca91986..353d69b1d 100644 --- a/target/linux/ixp4xx/config-default +++ b/target/linux/ixp4xx/config-default @@ -213,7 +213,7 @@ CONFIG_MACH_FSG=y CONFIG_MACH_GATEWAY7001=y # CONFIG_MACH_GTWX5715 is not set # CONFIG_MACH_IXDP465 is not set -# CONFIG_MACH_IXDPG425 is not set +CONFIG_MACH_IXDPG425=y # CONFIG_MACH_KIXRP435 is not set CONFIG_MACH_LOFT=y CONFIG_MACH_NAS100D=y diff --git a/target/linux/ixp4xx/patches-2.6.24/170-ixdpg425_mac_plat_info.patch b/target/linux/ixp4xx/patches-2.6.24/170-ixdpg425_mac_plat_info.patch new file mode 100644 index 000000000..cb6551680 --- /dev/null +++ b/target/linux/ixp4xx/patches-2.6.24/170-ixdpg425_mac_plat_info.patch @@ -0,0 +1,41 @@ +--- linux-2.6.24.2/arch/arm/mach-ixp4xx/coyote-setup.c 2008-02-11 06:51:11.000000000 +0100 ++++ linux-2.6.24.2-owrt/arch/arm/mach-ixp4xx/coyote-setup.c 2008-04-07 12:39:48.000000000 +0200 +@@ -73,9 +73,37 @@ + .resource = &coyote_uart_resource, + }; + ++/* Built-in 10/100 Ethernet MAC interfaces */ ++static struct eth_plat_info ixdpg425_plat_eth[] = { ++ { ++ .phy = 5, ++ .rxq = 3, ++ .txreadyq = 20, ++ }, { ++ .phy = 4, ++ .rxq = 4, ++ .txreadyq = 21, ++ } ++}; ++ ++static struct platform_device ixdpg425_eth[] = { ++ { ++ .name = "ixp4xx_eth", ++ .id = IXP4XX_ETH_NPEB, ++ .dev.platform_data = ixdpg425_plat_eth, ++ }, { ++ .name = "ixp4xx_eth", ++ .id = IXP4XX_ETH_NPEC, ++ .dev.platform_data = ixdpg425_plat_eth + 1, ++ } ++}; ++ ++ + static struct platform_device *coyote_devices[] __initdata = { + &coyote_flash, +- &coyote_uart ++ &coyote_uart, ++ &ixdpg425_eth[0], ++ &ixdpg425_eth[1], + }; + + static void __init coyote_init(void)