From 0b10449413b37ef9db55ec1dba598a6e16f0c466 Mon Sep 17 00:00:00 2001 From: blogic Date: Fri, 6 Aug 2010 15:49:42 +0000 Subject: [ifxmips] * remove references to gpio_dev * make vmmc driver register its own memory and dont rely on arch code to do so * makes any Danube board with a CFI commandset 2 NOR flash chip functional again * fixes filenames of downloaded firmwares thanks, Ithamar R. Adema git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22515 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../arch/mips/ifxmips/ar9/mach-easy50812.c | 3 --- .../arch/mips/ifxmips/common/devices.c | 13 --------- .../arch/mips/ifxmips/common/devices.h | 1 - .../files-2.6.33/arch/mips/ifxmips/common/prom.c | 31 ---------------------- .../arch/mips/ifxmips/danube/mach-easy4010.c | 2 -- .../arch/mips/ifxmips/danube/mach-easy50712.c | 2 -- .../mips/include/asm/mach-ifxmips/ifxmips_prom.h | 2 -- .../ifxmips/patches-2.6.33/200-cfi-swap.patch | 15 ++++++++++- 8 files changed, 14 insertions(+), 55 deletions(-) (limited to 'target') diff --git a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/ar9/mach-easy50812.c b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/ar9/mach-easy50812.c index 0baaba37c2..3f63a5d95d 100644 --- a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/ar9/mach-easy50812.c +++ b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/ar9/mach-easy50812.c @@ -60,9 +60,6 @@ easy50812_init(void) { ifxmips_register_gpio(); - //printk("ifxmips_register_gpio_dev\n"); - //ifxmips_register_gpio_dev(); - ifxmips_register_mtd(&easy50812_flash_data); ifxmips_register_leds(easy50812_leds, ARRAY_SIZE(easy50812_leds)); diff --git a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/devices.c b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/devices.c index dcd2346c8e..dade30c40f 100644 --- a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/devices.c +++ b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/devices.c @@ -20,19 +20,6 @@ #include #include -/* gpiodev */ -static struct platform_device ifxmips_gpio_dev = -{ - .name = "GPIODEV", - .num_resources = 1, -}; - -void __init -ifxmips_register_gpio_dev(void) -{ - platform_device_register(&ifxmips_gpio_dev); -} - /* gpio leds */ #ifdef CONFIG_LEDS_GPIO static struct gpio_led_platform_data ifxmips_gpio_led_data; diff --git a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/devices.h b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/devices.h index 31fac266c0..a3a932ccf8 100644 --- a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/devices.h +++ b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/devices.h @@ -3,7 +3,6 @@ #include -void __init ifxmips_register_gpio_dev(void); void __init ifxmips_register_gpio_leds(struct gpio_led *leds, int cnt); void __init ifxmips_register_leds(struct gpio_led *leds, int cnt); void __init ifxmips_register_mtd(struct physmap_flash_data *pdata); diff --git a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/prom.c b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/prom.c index e6a4a09d77..aef002c184 100644 --- a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/prom.c +++ b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/common/prom.c @@ -9,10 +9,6 @@ #include #include -/* for voice cpu (MIPS24K) */ -unsigned int *prom_cp1_base; -unsigned int prom_cp1_size = 0; - /* for Multithreading (APRP) on MIPS34K */ unsigned long physical_memsize; @@ -21,21 +17,6 @@ prom_free_prom_memory(void) { } -unsigned int* -prom_get_cp1_base(void) -{ - return prom_cp1_base; -} -EXPORT_SYMBOL(prom_get_cp1_base); - -unsigned int -prom_get_cp1_size(void) -{ - /* return size im MB */ - return prom_cp1_size>>20; -} -EXPORT_SYMBOL(prom_get_cp1_size); - extern unsigned char ifxmips_ethaddr[6]; int cmdline_mac = 0; @@ -115,18 +96,6 @@ static void __init prom_init_cmdline(void) } memsize *= 1024 * 1024; - /* only on Twinpass/Danube a second CPU is used for Voice */ - if ((cpu_data[0].cputype == CPU_24K) && (prom_cp1_size)) - { -#define CP1_SIZE 2 << 20 - prom_cp1_size = CP1_SIZE; - memsize -= prom_cp1_size; - prom_cp1_base = (unsigned int *)KSEG1ADDR(memsize); - - early_printf("Using %dMB Ram and reserving %dMB for cp1\n", - memsize>>20, prom_cp1_size>>20); - } - add_memory_region(0x00000000, memsize, BOOT_MEM_RAM); } diff --git a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/danube/mach-easy4010.c b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/danube/mach-easy4010.c index afb0b89a83..c18f9acb2a 100644 --- a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/danube/mach-easy4010.c +++ b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/danube/mach-easy4010.c @@ -61,8 +61,6 @@ easy4010_init(void) { ifxmips_register_gpio(); - ifxmips_register_gpio_dev(); - ifxmips_register_mtd(&easy4010_flash_data); ifxmips_register_leds(easy4010_leds, ARRAY_SIZE(easy4010_leds)); diff --git a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/danube/mach-easy50712.c b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/danube/mach-easy50712.c index c7ee7db777..42159027a9 100644 --- a/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/danube/mach-easy50712.c +++ b/target/linux/ifxmips/files-2.6.33/arch/mips/ifxmips/danube/mach-easy50712.c @@ -61,8 +61,6 @@ easy50712_init(void) { ifxmips_register_gpio(); - ifxmips_register_gpio_dev(); - ifxmips_register_mtd(&easy50712_flash_data); ifxmips_register_leds(easy50712_leds, ARRAY_SIZE(easy50712_leds)); diff --git a/target/linux/ifxmips/files-2.6.33/arch/mips/include/asm/mach-ifxmips/ifxmips_prom.h b/target/linux/ifxmips/files-2.6.33/arch/mips/include/asm/mach-ifxmips/ifxmips_prom.h index 71012be3ce..6e4b597cc9 100644 --- a/target/linux/ifxmips/files-2.6.33/arch/mips/include/asm/mach-ifxmips/ifxmips_prom.h +++ b/target/linux/ifxmips/files-2.6.33/arch/mips/include/asm/mach-ifxmips/ifxmips_prom.h @@ -19,8 +19,6 @@ #define _IFXPROM_H__ extern void early_printf(const char *fmt, ...); -extern u32 *prom_get_cp1_base(void); -extern u32 prom_get_cp1_size(void); extern int ifxmips_has_brn_block(void); #endif diff --git a/target/linux/ifxmips/patches-2.6.33/200-cfi-swap.patch b/target/linux/ifxmips/patches-2.6.33/200-cfi-swap.patch index e43a1d204d..4f40db7bce 100644 --- a/target/linux/ifxmips/patches-2.6.33/200-cfi-swap.patch +++ b/target/linux/ifxmips/patches-2.6.33/200-cfi-swap.patch @@ -25,7 +25,20 @@ case FL_WRITING: --- a/drivers/mtd/chips/cfi_cmdset_0002.c +++ b/drivers/mtd/chips/cfi_cmdset_0002.c -@@ -1068,7 +1068,9 @@ static int __xipram do_write_oneword(str +@@ -39,7 +39,11 @@ + #include + + #define AMD_BOOTLOC_BUG +-#define FORCE_WORD_WRITE 0 ++#ifdef CONFIG_IFXMIPS ++# define FORCE_WORD_WRITE 1 ++#else ++# define FORCE_WORD_WRITE 0 ++#endif + + #define MAX_WORD_RETRIES 3 + +@@ -1096,7 +1096,9 @@ static int __xipram do_write_oneword(str int retry_cnt = 0; adr += chip->start; -- cgit v1.2.3