From: kaloz Date: Tue, 28 Jul 2009 06:57:50 +0000 (+0000) Subject: upgrade ppc44x to 2.6.30.3, enable MSI and USB support, move some patches around X-Git-Url: https://git.rohieb.name/openwrt.git/commitdiff_plain/39b4da0bab00f85c5d9924412a28d34e431e0f90 upgrade ppc44x to 2.6.30.3, enable MSI and USB support, move some patches around git-svn-id: svn://svn.openwrt.org/openwrt/trunk@17034 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- diff --git a/target/linux/ppc44x/Makefile b/target/linux/ppc44x/Makefile index 9b952f12e..47926de0e 100644 --- a/target/linux/ppc44x/Makefile +++ b/target/linux/ppc44x/Makefile @@ -11,7 +11,7 @@ BOARD:=ppc44x BOARDNAME:=AMCC/IBM PPC44x FEATURES:=squashfs -LINUX_VERSION:=2.6.28.10 +LINUX_VERSION:=2.6.30.3 LINUX_KARCH:=powerpc include $(INCLUDE_DIR)/target.mk diff --git a/target/linux/ppc44x/config-default b/target/linux/ppc44x/config-default index 3d0e51417..b41c76ea7 100644 --- a/target/linux/ppc44x/config-default +++ b/target/linux/ppc44x/config-default @@ -110,7 +110,6 @@ CONFIG_LOWMEM_SIZE=0x30000000 # CONFIG_MPIC_WEIRD is not set CONFIG_MTD_CFI_ADV_OPTIONS=y # CONFIG_MTD_CFI_GEOMETRY is not set -# CONFIG_MTD_CFI_INTELEXT is not set CONFIG_MTD_OF_PARTS=y CONFIG_MTD_PHYSMAP_OF=y # CONFIG_NATSEMI is not set @@ -127,6 +126,7 @@ CONFIG_PCIEAER=y CONFIG_PCIEPORTBUS=y CONFIG_PCI_DISABLE_COMMON_QUIRKS=y CONFIG_PCI_DOMAINS=y +CONFIG_PCI_MSI=y CONFIG_PCI_SYSCALL=y CONFIG_PHYSICAL_START=0x00000000 CONFIG_PHYS_64BIT=y @@ -177,6 +177,7 @@ CONFIG_SERIAL_OF_PLATFORM=y CONFIG_TAISHAN=y CONFIG_TASK_SIZE=0xc0000000 CONFIG_TICK_ONESHOT=y +CONFIG_USB_SUPPORT=y # CONFIG_VGASTATE is not set # CONFIG_VIA_RHINE is not set # CONFIG_WARP is not set diff --git a/target/linux/ppc44x/patches/001-taishan_openwrt_flashmap.patch b/target/linux/ppc44x/patches/001-taishan_openwrt_flashmap.patch deleted file mode 100644 index b0201fbc0..000000000 --- a/target/linux/ppc44x/patches/001-taishan_openwrt_flashmap.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- a/arch/powerpc/boot/dts/taishan.dts -+++ b/arch/powerpc/boot/dts/taishan.dts -@@ -195,15 +195,15 @@ - #size-cells = <1>; - partition@0 { - label = "kernel"; -- reg = <0x0 0x180000>; -+ reg = <0x0 0x200000>; - }; -- partition@180000 { -- label = "root"; -- reg = <0x180000 0x200000>; -+ partition@200000 { -+ label = "rootfs"; -+ reg = <0x200000 0x3c00000>; - }; -- partition@380000 { -- label = "user"; -- reg = <0x380000 0x3bc0000>; -+ partition@3e00000 { -+ label = "diagnostics"; -+ reg = <0x3e00000 0x140000>; - }; - partition@3f40000 { - label = "env"; diff --git a/target/linux/ppc44x/patches/003-canyonlands_openwrt_flashmap.patch b/target/linux/ppc44x/patches/003-canyonlands_openwrt_flashmap.patch deleted file mode 100644 index 83c0dd292..000000000 --- a/target/linux/ppc44x/patches/003-canyonlands_openwrt_flashmap.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- a/arch/powerpc/boot/dts/canyonlands.dts -+++ b/arch/powerpc/boot/dts/canyonlands.dts -@@ -155,24 +155,12 @@ - #address-cells = <1>; - #size-cells = <1>; - partition@0 { -- label = "kernel"; -- reg = <0x00000000 0x001e0000>; -- }; -- partition@1e0000 { -- label = "dtb"; -- reg = <0x001e0000 0x00020000>; -+ label = "kernel+dtb"; -+ reg = <0x00000000 0x00200000>; - }; - partition@200000 { -- label = "ramdisk"; -- reg = <0x00200000 0x01400000>; -- }; -- partition@1600000 { -- label = "jffs2"; -- reg = <0x01600000 0x00400000>; -- }; -- partition@1a00000 { -- label = "user"; -- reg = <0x01a00000 0x02560000>; -+ label = "rootfs"; -+ reg = <0x00200000 0x03d60000>; - }; - partition@3f60000 { - label = "env"; diff --git a/target/linux/ppc44x/patches/004-canyonlands_dts_sync.patch b/target/linux/ppc44x/patches/004-canyonlands_dts_sync.patch deleted file mode 100644 index c89664299..000000000 --- a/target/linux/ppc44x/patches/004-canyonlands_dts_sync.patch +++ /dev/null @@ -1,108 +0,0 @@ ---- a/arch/powerpc/boot/dts/canyonlands.dts -+++ b/arch/powerpc/boot/dts/canyonlands.dts -@@ -40,6 +40,7 @@ - d-cache-size = <32768>; - dcr-controller; - dcr-access-method = "native"; -+ next-level-cache = <&L2C0>; - }; - }; - -@@ -104,6 +105,16 @@ - dcr-reg = <0x00c 0x002>; - }; - -+ L2C0: l2c { -+ compatible = "ibm,l2-cache-460ex", "ibm,l2-cache"; -+ dcr-reg = <0x020 0x008 /* Internal SRAM DCR's */ -+ 0x030 0x008>; /* L2 cache DCR's */ -+ cache-line-size = <32>; /* 32 bytes */ -+ cache-size = <262144>; /* L2, 256K */ -+ interrupt-parent = <&UIC1>; -+ interrupts = <11 1>; -+ }; -+ - plb { - compatible = "ibm,plb-460ex", "ibm,plb4"; - #address-cells = <2>; -@@ -131,6 +142,43 @@ - /*RXDE*/ 0x5 0x4>; - }; - -+ USB0: ehci@bffd0400 { -+ compatible = "ibm,usb-ehci-460ex", "usb-ehci"; -+ interrupt-parent = <&UIC2>; -+ interrupts = <0x1d 4>; -+ reg = <4 0xbffd0400 0x90 4 0xbffd0490 0x70>; -+ }; -+ -+ USB1: usb@bffd0000 { -+ compatible = "ohci-le"; -+ reg = <4 0xbffd0000 0x60>; -+ interrupt-parent = <&UIC2>; -+ interrupts = <0x1e 4>; -+ }; -+ -+ USBOTG0: usbotg@bff80000 { -+ compatible = "amcc,usb-otg-460ex"; -+ reg = <4 0xbff80000 0x10000>; -+ interrupt-parent = <&USBOTG0>; -+ interrupts = <0 1 2>; -+ #interrupt-cells = <1>; -+ #address-cells = <0>; -+ #size-cells = <0>; -+ interrupt-map = ; -+ interrupt-map-mask = <0xffffffff>; -+ }; -+ -+ SATA0: sata@bffd1000 { -+ compatible = "amcc,sata-460ex"; -+ reg = <4 0xbffd1000 0x800 /* SATA */ -+ 4 0xbffd0800 0x400>; /* AHBDMA */ -+ interrupt-parent = <&UIC3>; -+ interrupts = <0 4 /* SATA */ -+ 5 4>; /* AHBDMA */ -+ }; -+ - POB0: opb { - compatible = "ibm,opb-460ex", "ibm,opb"; - #address-cells = <1>; -@@ -222,6 +270,12 @@ - reg = <0xef600700 0x00000014>; - interrupt-parent = <&UIC0>; - interrupts = <0x2 0x4>; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ rtc@68 { -+ compatible = "stm,m41t80"; -+ reg = <68>; -+ }; - }; - - IIC1: i2c@ef600800 { -@@ -331,6 +385,7 @@ - * later cannot be changed - */ - ranges = <0x02000000 0x00000000 0x80000000 0x0000000d 0x80000000 0x00000000 0x80000000 -+ 0x02000000 0x00000000 0x00000000 0x0000000c 0x0ee00000 0x00000000 0x00100000 - 0x01000000 0x00000000 0x00000000 0x0000000c 0x08000000 0x00000000 0x00010000>; - - /* Inbound 2GB range starting at 0 */ -@@ -361,6 +416,7 @@ - * later cannot be changed - */ - ranges = <0x02000000 0x00000000 0x80000000 0x0000000e 0x00000000 0x00000000 0x80000000 -+ 0x02000000 0x00000000 0x00000000 0x0000000f 0x00000000 0x00000000 0x00100000 - 0x01000000 0x00000000 0x00000000 0x0000000f 0x80000000 0x00000000 0x00010000>; - - /* Inbound 2GB range starting at 0 */ -@@ -402,6 +458,7 @@ - * later cannot be changed - */ - ranges = <0x02000000 0x00000000 0x80000000 0x0000000e 0x80000000 0x00000000 0x80000000 -+ 0x02000000 0x00000000 0x00000000 0x0000000f 0x00100000 0x00000000 0x00100000 - 0x01000000 0x00000000 0x00000000 0x0000000f 0x80010000 0x00000000 0x00010000>; - - /* Inbound 2GB range starting at 0 */ diff --git a/target/linux/ppc44x/patches/005-canyonlands_remove_nonexisting_uarts.patch b/target/linux/ppc44x/patches/005-canyonlands_remove_nonexisting_uarts.patch index d0e08b7a9..746ec18a9 100644 --- a/target/linux/ppc44x/patches/005-canyonlands_remove_nonexisting_uarts.patch +++ b/target/linux/ppc44x/patches/005-canyonlands_remove_nonexisting_uarts.patch @@ -1,6 +1,6 @@ --- a/arch/powerpc/boot/dts/canyonlands.dts +++ b/arch/powerpc/boot/dts/canyonlands.dts -@@ -243,28 +243,6 @@ +@@ -247,28 +247,6 @@ interrupts = <0x1 0x4>; }; diff --git a/target/linux/ppc44x/patches/100-openwrt_dts_cmdline.patch b/target/linux/ppc44x/patches/100-openwrt_dts_cmdline.patch deleted file mode 100644 index e61943014..000000000 --- a/target/linux/ppc44x/patches/100-openwrt_dts_cmdline.patch +++ /dev/null @@ -1,9 +0,0 @@ ---- a/arch/powerpc/boot/dts/taishan.dts -+++ b/arch/powerpc/boot/dts/taishan.dts -@@ -423,5 +423,6 @@ - - chosen { - linux,stdout-path = "/plb/opb/serial@40000300"; -+ bootargs = "console=ttyS1,115200 root=/dev/mtdblock1 rootfstype=squashfs noinitrd"; - }; - }; diff --git a/target/linux/ppc44x/patches/100-openwrt_flashmap.patch b/target/linux/ppc44x/patches/100-openwrt_flashmap.patch new file mode 100644 index 000000000..9e31b207a --- /dev/null +++ b/target/linux/ppc44x/patches/100-openwrt_flashmap.patch @@ -0,0 +1,56 @@ +--- a/arch/powerpc/boot/dts/taishan.dts ++++ b/arch/powerpc/boot/dts/taishan.dts +@@ -195,15 +195,15 @@ + #size-cells = <1>; + partition@0 { + label = "kernel"; +- reg = <0x0 0x180000>; ++ reg = <0x0 0x200000>; + }; +- partition@180000 { +- label = "root"; +- reg = <0x180000 0x200000>; ++ partition@200000 { ++ label = "rootfs"; ++ reg = <0x200000 0x3c00000>; + }; +- partition@380000 { +- label = "user"; +- reg = <0x380000 0x3bc0000>; ++ partition@3e00000 { ++ label = "diagnostics"; ++ reg = <0x3e00000 0x140000>; + }; + partition@3f40000 { + label = "env"; +--- a/arch/powerpc/boot/dts/canyonlands.dts ++++ b/arch/powerpc/boot/dts/canyonlands.dts +@@ -209,24 +209,12 @@ + #address-cells = <1>; + #size-cells = <1>; + partition@0 { +- label = "kernel"; +- reg = <0x00000000 0x001e0000>; +- }; +- partition@1e0000 { +- label = "dtb"; +- reg = <0x001e0000 0x00020000>; ++ label = "kernel+dtb"; ++ reg = <0x00000000 0x00200000>; + }; + partition@200000 { +- label = "ramdisk"; +- reg = <0x00200000 0x01400000>; +- }; +- partition@1600000 { +- label = "jffs2"; +- reg = <0x01600000 0x00400000>; +- }; +- partition@1a00000 { +- label = "user"; +- reg = <0x01a00000 0x02560000>; ++ label = "rootfs"; ++ reg = <0x00200000 0x03d60000>; + }; + partition@3f60000 { + label = "env"; diff --git a/target/linux/ppc44x/patches/110-openwrt_dts_cmdline.patch b/target/linux/ppc44x/patches/110-openwrt_dts_cmdline.patch new file mode 100644 index 000000000..e61943014 --- /dev/null +++ b/target/linux/ppc44x/patches/110-openwrt_dts_cmdline.patch @@ -0,0 +1,9 @@ +--- a/arch/powerpc/boot/dts/taishan.dts ++++ b/arch/powerpc/boot/dts/taishan.dts +@@ -423,5 +423,6 @@ + + chosen { + linux,stdout-path = "/plb/opb/serial@40000300"; ++ bootargs = "console=ttyS1,115200 root=/dev/mtdblock1 rootfstype=squashfs noinitrd"; + }; + };