summaryrefslogtreecommitdiff
path: root/target/linux/adm5120-2.6/patches-2.6.22
diff options
context:
space:
mode:
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-11 13:00:27 +0000
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-11 13:00:27 +0000
commit015aed13171ff6201459286e15fc5e0686a46907 (patch)
treea898a3d4793d5b1ece23dce2f4d5ded01d0e5697 /target/linux/adm5120-2.6/patches-2.6.22
parentee0d3e3aaf9c2d586c2147109d30f8b1328ba6ac (diff)
[adm5120] refactor kernel code (part 1), mark it as broken now
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7916 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/adm5120-2.6/patches-2.6.22')
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/001-adm5120.patch29
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/002-adm5120_flash.patch19
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/003-adm5120_switch.patch12
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/004-adm5120_uart.patch18
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/005-adm5120_usb.patch32
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/006-adm5120_leds.patch12
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/007-adm5120_pci.patch14
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/008-adm5120_hardware_swab.patch40
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/100-mtd-myloder-partition-parser.patch12
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/101-cfi-fixup-macronix-bootloc.patch12
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/102-jedec-pmc-39lvxxx-chips.patch74
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/140-cmdline_hack.patch6
-rw-r--r--target/linux/adm5120-2.6/patches-2.6.22/500-Nand.patch12
13 files changed, 164 insertions, 128 deletions
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/001-adm5120.patch b/target/linux/adm5120-2.6/patches-2.6.22/001-adm5120.patch
index da601b919d..71db5fd867 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/001-adm5120.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/001-adm5120.patch
@@ -1,14 +1,15 @@
-Index: linux-2.6.22-rc6/arch/mips/Kconfig
+Index: linux-2.6.22/arch/mips/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/arch/mips/Kconfig
-+++ linux-2.6.22-rc6/arch/mips/Kconfig
-@@ -15,6 +15,17 @@ choice
+--- linux-2.6.22.orig/arch/mips/Kconfig
++++ linux-2.6.22/arch/mips/Kconfig
+@@ -15,6 +15,18 @@ choice
prompt "System type"
default SGI_IP22
+config MIPS_ADM5120
+ bool "Support for ADM5120 SoC"
+ select SYS_HAS_CPU_MIPS32_R1
++ select SYS_HAS_EARLY_PRINTK
+ select DMA_NONCOHERENT
+ select HW_HAS_PCI
+ select IRQ_CPU
@@ -20,7 +21,7 @@ Index: linux-2.6.22-rc6/arch/mips/Kconfig
config MACH_ALCHEMY
bool "Alchemy processor based machines"
-@@ -658,6 +669,7 @@ config TOSHIBA_RBTX4938
+@@ -658,6 +670,7 @@ config TOSHIBA_RBTX4938
endchoice
@@ -28,18 +29,20 @@ Index: linux-2.6.22-rc6/arch/mips/Kconfig
source "arch/mips/au1000/Kconfig"
source "arch/mips/ddb5xxx/Kconfig"
source "arch/mips/gt64120/ev64120/Kconfig"
-Index: linux-2.6.22-rc6/arch/mips/Makefile
+Index: linux-2.6.22/arch/mips/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/arch/mips/Makefile
-+++ linux-2.6.22-rc6/arch/mips/Makefile
-@@ -165,6 +165,14 @@ cflags-$(CONFIG_MACH_JAZZ) += -Iinclude/
+--- linux-2.6.22.orig/arch/mips/Makefile
++++ linux-2.6.22/arch/mips/Makefile
+@@ -165,6 +165,16 @@ cflags-$(CONFIG_MACH_JAZZ) += -Iinclude/
load-$(CONFIG_MACH_JAZZ) += 0xffffffff80080000
#
+# ADMtek 5120
+#
+
++libs-$(CONFIG_MIPS_ADM5120) += arch/mips/adm5120/prom/
+core-$(CONFIG_MIPS_ADM5120) += arch/mips/adm5120/
++core-$(CONFIG_MIPS_ADM5120) += arch/mips/adm5120/boards/
+cflags-$(CONFIG_MIPS_ADM5120) += -Iinclude/asm-mips/mach-adm5120
+load-$(CONFIG_MIPS_ADM5120) += 0xffffffff80001000
+
@@ -47,10 +50,10 @@ Index: linux-2.6.22-rc6/arch/mips/Makefile
# Common Alchemy Au1x00 stuff
#
core-$(CONFIG_SOC_AU1X00) += arch/mips/au1000/common/
-Index: linux-2.6.22-rc6/include/asm-mips/bootinfo.h
+Index: linux-2.6.22/include/asm-mips/bootinfo.h
===================================================================
---- linux-2.6.22-rc6.orig/include/asm-mips/bootinfo.h
-+++ linux-2.6.22-rc6/include/asm-mips/bootinfo.h
+--- linux-2.6.22.orig/include/asm-mips/bootinfo.h
++++ linux-2.6.22/include/asm-mips/bootinfo.h
@@ -213,6 +213,57 @@
#define MACH_GROUP_NEC_EMMA2RH 25 /* NEC EMMA2RH (was 23) */
#define MACH_NEC_MARKEINS 0 /* NEC EMMA2RH Mark-eins */
@@ -59,7 +62,7 @@ Index: linux-2.6.22-rc6/include/asm-mips/bootinfo.h
+ * Valid machtype for group ADMtek ADM5120
+ */
+#define MACH_GROUP_ADM5120 26
-+#define MACH_ADM5120_UNKNOWN 0 /* Unknown board */
++#define MACH_ADM5120_GENERIC 0 /* Generic board */
+#define MACH_ADM5120_WP54G_WRT 1 /* Compex WP54G-WRT */
+#define MACH_ADM5120_WP54G 2 /* Compex WP54G */
+#define MACH_ADM5120_WP54AG 3 /* Compex WP54AG */
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/002-adm5120_flash.patch b/target/linux/adm5120-2.6/patches-2.6.22/002-adm5120_flash.patch
index 355c126c92..b84a62c49d 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/002-adm5120_flash.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/002-adm5120_flash.patch
@@ -1,27 +1,26 @@
-Index: linux-2.6.22-rc6/drivers/mtd/maps/Kconfig
+Index: linux-2.6.22/drivers/mtd/maps/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/drivers/mtd/maps/Kconfig
-+++ linux-2.6.22-rc6/drivers/mtd/maps/Kconfig
-@@ -620,5 +620,10 @@ config MTD_PLATRAM
+--- linux-2.6.22.orig/drivers/mtd/maps/Kconfig
++++ linux-2.6.22/drivers/mtd/maps/Kconfig
+@@ -620,5 +620,9 @@ config MTD_PLATRAM
This selection automatically selects the map_ram driver.
+config MTD_ADM5120
-+ tristate "Map driver for ADMtek ADM5120 boards"
++ tristate "Map driver for ADM5120 based boards"
+ depends on MIPS_ADM5120
-+ select MTD_CFI_AMDSTD
+
endmenu
-Index: linux-2.6.22-rc6/drivers/mtd/maps/Makefile
+Index: linux-2.6.22/drivers/mtd/maps/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/drivers/mtd/maps/Makefile
-+++ linux-2.6.22-rc6/drivers/mtd/maps/Makefile
+--- linux-2.6.22.orig/drivers/mtd/maps/Makefile
++++ linux-2.6.22/drivers/mtd/maps/Makefile
@@ -47,6 +47,7 @@ obj-$(CONFIG_MTD_OCELOT) += ocelot.o
obj-$(CONFIG_MTD_SOLUTIONENGINE)+= solutionengine.o
obj-$(CONFIG_MTD_PCI) += pci.o
obj-$(CONFIG_MTD_ALCHEMY) += alchemy-flash.o
-+obj-$(CONFIG_MTD_ADM5120) += adm5120_mtd.o
++obj-$(CONFIG_MTD_ADM5120) += adm5120-flash.o
obj-$(CONFIG_MTD_LASAT) += lasat.o
obj-$(CONFIG_MTD_AUTCPU12) += autcpu12-nvram.o
obj-$(CONFIG_MTD_EDB7312) += edb7312.o
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/003-adm5120_switch.patch b/target/linux/adm5120-2.6/patches-2.6.22/003-adm5120_switch.patch
index 9dde782501..83c1ff9420 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/003-adm5120_switch.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/003-adm5120_switch.patch
@@ -1,7 +1,7 @@
-Index: linux-2.6.22-rc6/drivers/net/Kconfig
+Index: linux-2.6.22/drivers/net/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/drivers/net/Kconfig
-+++ linux-2.6.22-rc6/drivers/net/Kconfig
+--- linux-2.6.22.orig/drivers/net/Kconfig
++++ linux-2.6.22/drivers/net/Kconfig
@@ -574,6 +574,10 @@ config MIPS_AU1X00_ENET
If you have an Alchemy Semi AU1X00 based system
say Y. Otherwise, say N.
@@ -13,10 +13,10 @@ Index: linux-2.6.22-rc6/drivers/net/Kconfig
config NET_SB1250_MAC
tristate "SB1250 Ethernet support"
depends on NET_ETHERNET && SIBYTE_SB1xxx_SOC
-Index: linux-2.6.22-rc6/drivers/net/Makefile
+Index: linux-2.6.22/drivers/net/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/drivers/net/Makefile
-+++ linux-2.6.22-rc6/drivers/net/Makefile
+--- linux-2.6.22.orig/drivers/net/Makefile
++++ linux-2.6.22/drivers/net/Makefile
@@ -165,6 +165,7 @@ obj-$(CONFIG_SC92031) += sc92031.o
# This is also a 82596 and should probably be merged
obj-$(CONFIG_LP486E) += lp486e.o
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/004-adm5120_uart.patch b/target/linux/adm5120-2.6/patches-2.6.22/004-adm5120_uart.patch
index eb78e03574..089221eb47 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/004-adm5120_uart.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/004-adm5120_uart.patch
@@ -1,7 +1,7 @@
-Index: linux-2.6.22-rc6/drivers/serial/Makefile
+Index: linux-2.6.22/drivers/serial/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/drivers/serial/Makefile
-+++ linux-2.6.22-rc6/drivers/serial/Makefile
+--- linux-2.6.22.orig/drivers/serial/Makefile
++++ linux-2.6.22/drivers/serial/Makefile
@@ -21,6 +21,7 @@ obj-$(CONFIG_SERIAL_8250_EXAR_ST16C554)
obj-$(CONFIG_SERIAL_8250_HUB6) += 8250_hub6.o
obj-$(CONFIG_SERIAL_8250_MCA) += 8250_mca.o
@@ -10,10 +10,10 @@ Index: linux-2.6.22-rc6/drivers/serial/Makefile
obj-$(CONFIG_SERIAL_AMBA_PL010) += amba-pl010.o
obj-$(CONFIG_SERIAL_AMBA_PL011) += amba-pl011.o
obj-$(CONFIG_SERIAL_CLPS711X) += clps711x.o
-Index: linux-2.6.22-rc6/include/linux/serial_core.h
+Index: linux-2.6.22/include/linux/serial_core.h
===================================================================
---- linux-2.6.22-rc6.orig/include/linux/serial_core.h
-+++ linux-2.6.22-rc6/include/linux/serial_core.h
+--- linux-2.6.22.orig/include/linux/serial_core.h
++++ linux-2.6.22/include/linux/serial_core.h
@@ -143,6 +143,9 @@
#define PORT_KS8695 76
@@ -24,10 +24,10 @@ Index: linux-2.6.22-rc6/include/linux/serial_core.h
#ifdef __KERNEL__
#include <linux/compiler.h>
-Index: linux-2.6.22-rc6/drivers/serial/Kconfig
+Index: linux-2.6.22/drivers/serial/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/drivers/serial/Kconfig
-+++ linux-2.6.22-rc6/drivers/serial/Kconfig
+--- linux-2.6.22.orig/drivers/serial/Kconfig
++++ linux-2.6.22/drivers/serial/Kconfig
@@ -270,6 +270,22 @@ config SERIAL_8250_RM9K
comment "Non-8250 serial port support"
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/005-adm5120_usb.patch b/target/linux/adm5120-2.6/patches-2.6.22/005-adm5120_usb.patch
index c862f906e3..06734a1724 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/005-adm5120_usb.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/005-adm5120_usb.patch
@@ -1,7 +1,7 @@
-Index: linux-2.6.22-rc6/drivers/usb/core/hub.c
+Index: linux-2.6.22/drivers/usb/core/hub.c
===================================================================
---- linux-2.6.22-rc6.orig/drivers/usb/core/hub.c
-+++ linux-2.6.22-rc6/drivers/usb/core/hub.c
+--- linux-2.6.22.orig/drivers/usb/core/hub.c
++++ linux-2.6.22/drivers/usb/core/hub.c
@@ -464,7 +464,7 @@ void usb_hub_tt_clear_buffer (struct usb
: (USB_ENDPOINT_XFER_BULK << 11);
if (usb_pipein (pipe))
@@ -182,21 +182,21 @@ Index: linux-2.6.22-rc6/drivers/usb/core/hub.c
re_enumerate:
hub_port_logical_disconnect(parent_hub, port1);
return -ENODEV;
-Index: linux-2.6.22-rc6/drivers/usb/host/Kconfig
+Index: linux-2.6.22/drivers/usb/host/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/drivers/usb/host/Kconfig
-+++ linux-2.6.22-rc6/drivers/usb/host/Kconfig
-@@ -224,3 +224,6 @@ config USB_SL811_CS
+--- linux-2.6.22.orig/drivers/usb/host/Kconfig
++++ linux-2.6.22/drivers/usb/host/Kconfig
+@@ -237,3 +237,6 @@ config USB_SL811_CS
To compile this driver as a module, choose M here: the
module will be called "sl811_cs".
+config USB_ADM5120_HCD
+ tristate "ADM5120 HCD support"
+ depends on USB && MIPS_ADM5120
-Index: linux-2.6.22-rc6/drivers/usb/host/Makefile
+Index: linux-2.6.22/drivers/usb/host/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/drivers/usb/host/Makefile
-+++ linux-2.6.22-rc6/drivers/usb/host/Makefile
+--- linux-2.6.22.orig/drivers/usb/host/Makefile
++++ linux-2.6.22/drivers/usb/host/Makefile
@@ -8,6 +8,7 @@ endif
obj-$(CONFIG_PCI) += pci-quirks.o
@@ -205,10 +205,10 @@ Index: linux-2.6.22-rc6/drivers/usb/host/Makefile
obj-$(CONFIG_USB_EHCI_HCD) += ehci-hcd.o
obj-$(CONFIG_USB_ISP116X_HCD) += isp116x-hcd.o
obj-$(CONFIG_USB_OHCI_HCD) += ohci-hcd.o
-Index: linux-2.6.22-rc6/drivers/usb/Kconfig
+Index: linux-2.6.22/drivers/usb/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/drivers/usb/Kconfig
-+++ linux-2.6.22-rc6/drivers/usb/Kconfig
+--- linux-2.6.22.orig/drivers/usb/Kconfig
++++ linux-2.6.22/drivers/usb/Kconfig
@@ -88,8 +88,6 @@ source "drivers/usb/storage/Kconfig"
source "drivers/usb/image/Kconfig"
@@ -218,10 +218,10 @@ Index: linux-2.6.22-rc6/drivers/usb/Kconfig
comment "USB port drivers"
depends on USB
-Index: linux-2.6.22-rc6/drivers/usb/Makefile
+Index: linux-2.6.22/drivers/usb/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/drivers/usb/Makefile
-+++ linux-2.6.22-rc6/drivers/usb/Makefile
+--- linux-2.6.22.orig/drivers/usb/Makefile
++++ linux-2.6.22/drivers/usb/Makefile
@@ -16,6 +16,7 @@ obj-$(CONFIG_USB_UHCI_HCD) += host/
obj-$(CONFIG_USB_SL811_HCD) += host/
obj-$(CONFIG_USB_U132_HCD) += host/
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/006-adm5120_leds.patch b/target/linux/adm5120-2.6/patches-2.6.22/006-adm5120_leds.patch
index 91ca638ded..c7c65613db 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/006-adm5120_leds.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/006-adm5120_leds.patch
@@ -1,7 +1,7 @@
-Index: linux-2.6.22-rc6/drivers/leds/Kconfig
+Index: linux-2.6.22/drivers/leds/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/drivers/leds/Kconfig
-+++ linux-2.6.22-rc6/drivers/leds/Kconfig
+--- linux-2.6.22.orig/drivers/leds/Kconfig
++++ linux-2.6.22/drivers/leds/Kconfig
@@ -20,6 +20,27 @@ config LEDS_CLASS
comment "LED drivers"
@@ -30,10 +30,10 @@ Index: linux-2.6.22-rc6/drivers/leds/Kconfig
config LEDS_CORGI
tristate "LED Support for the Sharp SL-C7x0 series"
depends on LEDS_CLASS && PXA_SHARP_C7xx
-Index: linux-2.6.22-rc6/drivers/leds/Makefile
+Index: linux-2.6.22/drivers/leds/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/drivers/leds/Makefile
-+++ linux-2.6.22-rc6/drivers/leds/Makefile
+--- linux-2.6.22.orig/drivers/leds/Makefile
++++ linux-2.6.22/drivers/leds/Makefile
@@ -5,6 +5,8 @@ obj-$(CONFIG_LEDS_CLASS) += led-class.o
obj-$(CONFIG_LEDS_TRIGGERS) += led-triggers.o
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/007-adm5120_pci.patch b/target/linux/adm5120-2.6/patches-2.6.22/007-adm5120_pci.patch
index 18839cf362..3fe345e530 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/007-adm5120_pci.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/007-adm5120_pci.patch
@@ -1,17 +1,17 @@
-Index: linux-2.6.22-rc6/arch/mips/pci/Makefile
+Index: linux-2.6.22/arch/mips/pci/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/arch/mips/pci/Makefile
-+++ linux-2.6.22-rc6/arch/mips/pci/Makefile
+--- linux-2.6.22.orig/arch/mips/pci/Makefile
++++ linux-2.6.22/arch/mips/pci/Makefile
@@ -50,3 +50,4 @@ obj-$(CONFIG_TOSHIBA_RBTX4938) += fixup-
obj-$(CONFIG_VICTOR_MPC30X) += fixup-mpc30x.o
obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capcella.o
obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o
+obj-$(CONFIG_PCI_ADM5120) += fixup-adm5120.o ops-adm5120.o pci-adm5120.o
-Index: linux-2.6.22-rc6/include/linux/pci_ids.h
+Index: linux-2.6.22/include/linux/pci_ids.h
===================================================================
---- linux-2.6.22-rc6.orig/include/linux/pci_ids.h
-+++ linux-2.6.22-rc6/include/linux/pci_ids.h
-@@ -1712,6 +1712,9 @@
+--- linux-2.6.22.orig/include/linux/pci_ids.h
++++ linux-2.6.22/include/linux/pci_ids.h
+@@ -1713,6 +1713,9 @@
#define PCI_VENDOR_ID_ESDGMBH 0x12fe
#define PCI_DEVICE_ID_ESDGMBH_CPCIASIO4 0x0111
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/008-adm5120_hardware_swab.patch b/target/linux/adm5120-2.6/patches-2.6.22/008-adm5120_hardware_swab.patch
deleted file mode 100644
index c0fd645b5d..0000000000
--- a/target/linux/adm5120-2.6/patches-2.6.22/008-adm5120_hardware_swab.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-Index: linux-2.6.22-rc6/include/asm-mips/byteorder.h
-===================================================================
---- linux-2.6.22-rc6.orig/include/asm-mips/byteorder.h
-+++ linux-2.6.22-rc6/include/asm-mips/byteorder.h
-@@ -58,6 +58,35 @@ static __inline__ __attribute_const__ __
-
- #endif /* CONFIG_CPU_MIPSR2 */
-
-+#ifdef CONFIG_ADM5120_HARDWARE_SWAB
-+
-+static __inline__ __attribute_const__ __u16 ___adm5120__swab16(__u16 x)
-+{
-+ __asm__ (
-+ " sh %2, 0xCA(%1) \n"
-+ " lhu %0, 0xCC(%1) \n"
-+ : "=r" (x)
-+ : "r" (0xB2000000), "r" (x));
-+
-+ return x;
-+}
-+
-+static __inline__ __attribute_const__ __u32 ___adm5120__swab32(__u32 x)
-+{
-+ __asm__ (
-+ " sw %2, 0xC8(%1) \n"
-+ " lw %0, 0xCC(%1) \n"
-+ : "=r" (x)
-+ : "r" (0xB2000000), "r" (x));
-+
-+ return x;
-+}
-+
-+#define __arch__swab16(x) ___adm5120__swab16(x)
-+#define __arch__swab32(x) ___adm5120__swab32(x)
-+
-+#endif /* CONFIG_ADM5120_HARDWARE_SWAB */
-+
- #if !defined(__STRICT_ANSI__) || defined(__KERNEL__)
- # define __BYTEORDER_HAS_U64__
- # define __SWAB_64_THRU_32__
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/100-mtd-myloder-partition-parser.patch b/target/linux/adm5120-2.6/patches-2.6.22/100-mtd-myloder-partition-parser.patch
index 2b4381cd98..6e6d748a84 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/100-mtd-myloder-partition-parser.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/100-mtd-myloder-partition-parser.patch
@@ -1,7 +1,7 @@
-Index: linux-2.6.22-rc6/drivers/mtd/Kconfig
+Index: linux-2.6.22/drivers/mtd/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/drivers/mtd/Kconfig
-+++ linux-2.6.22-rc6/drivers/mtd/Kconfig
+--- linux-2.6.22.orig/drivers/mtd/Kconfig
++++ linux-2.6.22/drivers/mtd/Kconfig
@@ -155,6 +155,22 @@ config MTD_AFS_PARTS
for your particular device. It won't happen automatically. The
'armflash' map driver (CONFIG_MTD_ARMFLASH) does this, for example.
@@ -25,10 +25,10 @@ Index: linux-2.6.22-rc6/drivers/mtd/Kconfig
comment "User Modules And Translation Layers"
config MTD_CHAR
-Index: linux-2.6.22-rc6/drivers/mtd/Makefile
+Index: linux-2.6.22/drivers/mtd/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/drivers/mtd/Makefile
-+++ linux-2.6.22-rc6/drivers/mtd/Makefile
+--- linux-2.6.22.orig/drivers/mtd/Makefile
++++ linux-2.6.22/drivers/mtd/Makefile
@@ -11,6 +11,7 @@ obj-$(CONFIG_MTD_CONCAT) += mtdconcat.o
obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
obj-$(CONFIG_MTD_CMDLINE_PARTS) += cmdlinepart.o
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/101-cfi-fixup-macronix-bootloc.patch b/target/linux/adm5120-2.6/patches-2.6.22/101-cfi-fixup-macronix-bootloc.patch
index 5740d4ac60..b68eade91f 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/101-cfi-fixup-macronix-bootloc.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/101-cfi-fixup-macronix-bootloc.patch
@@ -1,7 +1,7 @@
-Index: linux-2.6.22-rc6/drivers/mtd/chips/cfi_cmdset_0002.c
+Index: linux-2.6.22/drivers/mtd/chips/cfi_cmdset_0002.c
===================================================================
---- linux-2.6.22-rc6.orig/drivers/mtd/chips/cfi_cmdset_0002.c
-+++ linux-2.6.22-rc6/drivers/mtd/chips/cfi_cmdset_0002.c
+--- linux-2.6.22.orig/drivers/mtd/chips/cfi_cmdset_0002.c
++++ linux-2.6.22/drivers/mtd/chips/cfi_cmdset_0002.c
@@ -47,12 +47,19 @@
#define MANUFACTURER_AMD 0x0001
#define MANUFACTURER_ATMEL 0x001F
@@ -74,10 +74,10 @@ Index: linux-2.6.22-rc6/drivers/mtd/chips/cfi_cmdset_0002.c
{ 0, 0, NULL, NULL }
};
static struct cfi_fixup jedec_fixup_table[] = {
-Index: linux-2.6.22-rc6/drivers/mtd/chips/Kconfig
+Index: linux-2.6.22/drivers/mtd/chips/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/drivers/mtd/chips/Kconfig
-+++ linux-2.6.22-rc6/drivers/mtd/chips/Kconfig
+--- linux-2.6.22.orig/drivers/mtd/chips/Kconfig
++++ linux-2.6.22/drivers/mtd/chips/Kconfig
@@ -196,6 +196,14 @@ config MTD_CFI_AMDSTD
provides support for one of those command sets, used on chips
including the AMD Am29LV320.
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/102-jedec-pmc-39lvxxx-chips.patch b/target/linux/adm5120-2.6/patches-2.6.22/102-jedec-pmc-39lvxxx-chips.patch
new file mode 100644
index 0000000000..fa9d35dd1e
--- /dev/null
+++ b/target/linux/adm5120-2.6/patches-2.6.22/102-jedec-pmc-39lvxxx-chips.patch
@@ -0,0 +1,74 @@
+Index: linux-2.6.22/drivers/mtd/chips/jedec_probe.c
+===================================================================
+--- linux-2.6.22.orig/drivers/mtd/chips/jedec_probe.c
++++ linux-2.6.22/drivers/mtd/chips/jedec_probe.c
+@@ -121,6 +121,10 @@
+ #define UPD29F064115 0x221C
+
+ /* PMC */
++#define PM39LV512 0x001B
++#define PM39LV010 0x001C
++#define PM39LV020 0x003D
++#define PM39LV040 0x003E
+ #define PM49FL002 0x006D
+ #define PM49FL004 0x006E
+ #define PM49FL008 0x006A
+@@ -1246,6 +1250,58 @@ static const struct amd_flash_info jedec
+ ERASEINFO(0x02000,2),
+ ERASEINFO(0x04000,1),
+ }
++ }, {
++ .mfr_id = MANUFACTURER_PMC,
++ .dev_id = PM39LV512,
++ .name = "PMC Pm39LV512",
++ .uaddr = {
++ [0] = MTD_UADDR_0x0555_0x02AA /* x8 */
++ },
++ .DevSize = SIZE_64KiB,
++ .CmdSet = P_ID_AMD_STD,
++ .NumEraseRegions= 1,
++ .regions = {
++ ERASEINFO(0x01000,16),
++ }
++ }, {
++ .mfr_id = MANUFACTURER_PMC,
++ .dev_id = PM39LV010,
++ .name = "PMC Pm39LV010",
++ .uaddr = {
++ [0] = MTD_UADDR_0x0555_0x02AA /* x8 */
++ },
++ .DevSize = SIZE_128KiB,
++ .CmdSet = P_ID_AMD_STD,
++ .NumEraseRegions= 1,
++ .regions = {
++ ERASEINFO(0x01000,32),
++ }
++ }, {
++ .mfr_id = MANUFACTURER_PMC,
++ .dev_id = PM39LV020,
++ .name = "PMC Pm39LV020",
++ .uaddr = {
++ [0] = MTD_UADDR_0x0555_0x02AA /* x8 */
++ },
++ .DevSize = SIZE_256KiB,
++ .CmdSet = P_ID_AMD_STD,
++ .NumEraseRegions= 1,
++ .regions = {
++ ERASEINFO(0x01000,64),
++ }
++ }, {
++ .mfr_id = MANUFACTURER_PMC,
++ .dev_id = PM39LV040,
++ .name = "PMC Pm39LV040",
++ .uaddr = {
++ [0] = MTD_UADDR_0x0555_0x02AA /* x8 */
++ },
++ .DevSize = SIZE_512KiB,
++ .CmdSet = P_ID_AMD_STD,
++ .NumEraseRegions= 1,
++ .regions = {
++ ERASEINFO(0x01000,128),
++ }
+ }, {
+ .mfr_id = MANUFACTURER_PMC,
+ .dev_id = PM49FL002,
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/140-cmdline_hack.patch b/target/linux/adm5120-2.6/patches-2.6.22/140-cmdline_hack.patch
index 47378e5a90..de3ffa0787 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/140-cmdline_hack.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/140-cmdline_hack.patch
@@ -1,7 +1,7 @@
-Index: linux-2.6.22-rc6/arch/mips/kernel/head.S
+Index: linux-2.6.22/arch/mips/kernel/head.S
===================================================================
---- linux-2.6.22-rc6.orig/arch/mips/kernel/head.S
-+++ linux-2.6.22-rc6/arch/mips/kernel/head.S
+--- linux-2.6.22.orig/arch/mips/kernel/head.S
++++ linux-2.6.22/arch/mips/kernel/head.S
@@ -129,14 +129,19 @@
#endif
.endm
diff --git a/target/linux/adm5120-2.6/patches-2.6.22/500-Nand.patch b/target/linux/adm5120-2.6/patches-2.6.22/500-Nand.patch
index fb503c5dcf..de96babbe2 100644
--- a/target/linux/adm5120-2.6/patches-2.6.22/500-Nand.patch
+++ b/target/linux/adm5120-2.6/patches-2.6.22/500-Nand.patch
@@ -1,7 +1,7 @@
-Index: linux-2.6.22-rc6/drivers/mtd/nand/Kconfig
+Index: linux-2.6.22/drivers/mtd/nand/Kconfig
===================================================================
---- linux-2.6.22-rc6.orig/drivers/mtd/nand/Kconfig
-+++ linux-2.6.22-rc6/drivers/mtd/nand/Kconfig
+--- linux-2.6.22.orig/drivers/mtd/nand/Kconfig
++++ linux-2.6.22/drivers/mtd/nand/Kconfig
@@ -81,6 +81,12 @@ config MTD_NAND_TS7250
help
Support for NAND flash on Technologic Systems TS-7250 platform.
@@ -15,10 +15,10 @@ Index: linux-2.6.22-rc6/drivers/mtd/nand/Kconfig
config MTD_NAND_IDS
tristate
-Index: linux-2.6.22-rc6/drivers/mtd/nand/Makefile
+Index: linux-2.6.22/drivers/mtd/nand/Makefile
===================================================================
---- linux-2.6.22-rc6.orig/drivers/mtd/nand/Makefile
-+++ linux-2.6.22-rc6/drivers/mtd/nand/Makefile
+--- linux-2.6.22.orig/drivers/mtd/nand/Makefile
++++ linux-2.6.22/drivers/mtd/nand/Makefile
@@ -10,6 +10,7 @@ obj-$(CONFIG_MTD_NAND_CAFE) += cafe_nan
obj-$(CONFIG_MTD_NAND_SPIA) += spia.o
obj-$(CONFIG_MTD_NAND_AMS_DELTA) += ams-delta.o