diff options
10 files changed, 30 insertions, 64 deletions
| diff --git a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/common.h b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/common.h index 7be24f7af..111dd0640 100644 --- a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/common.h +++ b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/common.h @@ -11,6 +11,9 @@  #define RAMIPS_SYS_TYPE_LEN	64  extern unsigned char ramips_sys_type[RAMIPS_SYS_TYPE_LEN]; +extern unsigned long ramips_mem_base; +extern unsigned long ramips_mem_size_min; +extern unsigned long ramips_mem_size_max;  void ramips_intc_irq_init(unsigned intc_base, unsigned irq, unsigned irq_base);  u32 ramips_intc_get_status(void); diff --git a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt288x.h b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt288x.h index ff6c82ec8..10d726332 100644 --- a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt288x.h +++ b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt288x.h @@ -17,6 +17,9 @@  #include <linux/init.h>  #include <linux/io.h> +#define RT288X_MEM_SIZE_MIN    (2 * 1024 * 1024) +#define RT288X_MEM_SIZE_MAX    (128 * 1024 * 1024) +  #define RT288X_CPU_IRQ_BASE	0  #define RT288X_INTC_IRQ_BASE	8  #define RT288X_INTC_IRQ_COUNT	32 diff --git a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt288x/ralink_soc.h b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt288x/ralink_soc.h deleted file mode 100644 index 73301e239..000000000 --- a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt288x/ralink_soc.h +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Ralink RT288x specific SOC defines - * - * Copyright (C) 2009 Gabor Juhos <juhosg@openwrt.org> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published - * by the Free Software Foundation. - */ - -#ifndef __RT288X_RALINK_SOC_H -#define __RT288X_RALINK_SOC_H - -#define RALINK_SOC_SDRAM_BASE		0x08000000 -#define RALINK_SOC_MEM_SIZE_MIN		(2 * 1024 * 1024) -#define RALINK_SOC_MEM_SIZE_MAX		(128 * 1024 * 1024) - -#endif /* __RT288X_RALINK_SOC_H */ diff --git a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt305x/ralink_soc.h b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt305x/ralink_soc.h deleted file mode 100644 index c3206ec13..000000000 --- a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt305x/ralink_soc.h +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Ralink RT305x specific SOC defines - * - * Copyright (C) 2009 Gabor Juhos <juhosg@openwrt.org> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published - * by the Free Software Foundation. - */ - -#ifndef __RT288X_RALINK_SOC_H -#define __RT288X_RALINK_SOC_H - -#define RALINK_SOC_SDRAM_BASE		0 -#define RALINK_SOC_MEM_SIZE_MIN		(2 * 1024 * 1024) -#define RALINK_SOC_MEM_SIZE_MAX		(64 * 1024 * 1024) - -#endif /* __RT288X_RALINK_SOC_H */ diff --git a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt3883/ralink_soc.h b/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt3883/ralink_soc.h deleted file mode 100644 index 8a080b7d2..000000000 --- a/target/linux/ramips/files/arch/mips/include/asm/mach-ralink/rt3883/ralink_soc.h +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Ralink RT3662/RT3883 specific SOC defines - * - * Copyright (C) 2011-2012 Gabor Juhos <juhosg@openwrt.org> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published - * by the Free Software Foundation. - */ - -#ifndef _RT3883_RALINK_SOC_H -#define _RT3883_RALINK_SOC_H - -#define RALINK_SOC_SDRAM_BASE		0 -#define RALINK_SOC_MEM_SIZE_MIN		(2 * 1024 * 1024) -#define RALINK_SOC_MEM_SIZE_MAX		(256 * 1024 * 1024) - -#endif /* _RT3883_RALINK_SOC_H */ diff --git a/target/linux/ramips/files/arch/mips/ralink/common/prom.c b/target/linux/ramips/files/arch/mips/ralink/common/prom.c index d3f884b84..26169d366 100644 --- a/target/linux/ramips/files/arch/mips/ralink/common/prom.c +++ b/target/linux/ramips/files/arch/mips/ralink/common/prom.c @@ -18,26 +18,29 @@  #include <asm/mach-ralink/common.h>  #include <asm/mach-ralink/machine.h> -#include <ralink_soc.h> + +unsigned long ramips_mem_base; +unsigned long ramips_mem_size_min; +unsigned long ramips_mem_size_max;  static inline void *to_ram_addr(void *addr)  {  	u32 base; -	base = KSEG0ADDR(RALINK_SOC_SDRAM_BASE); +	base = KSEG0ADDR(ramips_mem_base);  	if (((u32) addr > base) && -	    ((u32) addr < (base + RALINK_SOC_MEM_SIZE_MAX))) +	    ((u32) addr < (base + ramips_mem_size_max)))  		return addr; -	base = KSEG1ADDR(RALINK_SOC_SDRAM_BASE); +	base = KSEG1ADDR(ramips_mem_base);  	if (((u32) addr > base) && -	    ((u32) addr < (base + RALINK_SOC_MEM_SIZE_MAX))) +	    ((u32) addr < (base + ramips_mem_size_max)))  		return addr;  	/* some U-Boot variants uses physical addresses */ -	base = RALINK_SOC_SDRAM_BASE; +	base = ramips_mem_base;  	if (((u32) addr > base) && -	    ((u32) addr < (base + RALINK_SOC_MEM_SIZE_MAX))) +	    ((u32) addr < (base + ramips_mem_size_max)))  		return (void *)KSEG0ADDR(addr);  	return NULL; diff --git a/target/linux/ramips/files/arch/mips/ralink/common/setup.c b/target/linux/ramips/files/arch/mips/ralink/common/setup.c index 5f7cf14a7..0d6b8d8c9 100644 --- a/target/linux/ramips/files/arch/mips/ralink/common/setup.c +++ b/target/linux/ramips/files/arch/mips/ralink/common/setup.c @@ -19,7 +19,6 @@  #include <asm/mach-ralink/common.h>  #include <asm/mach-ralink/machine.h> -#include <ralink_soc.h>  unsigned char ramips_sys_type[RAMIPS_SYS_TYPE_LEN]; @@ -34,13 +33,13 @@ static void __init detect_mem_size(void)  	void *base;  	base = (void *) KSEG1ADDR(detect_mem_size); -	for (size = RALINK_SOC_MEM_SIZE_MIN; size < RALINK_SOC_MEM_SIZE_MAX; +	for (size = ramips_mem_size_min; size < ramips_mem_size_max;  	     size <<= 1 ) {  		if (!memcmp(base, base + size, 1024))  			break;  	} -	add_memory_region(RALINK_SOC_SDRAM_BASE, size, BOOT_MEM_RAM); +	add_memory_region(ramips_mem_base, size, BOOT_MEM_RAM);  }  void __init ramips_early_serial_setup(int line, unsigned base, unsigned freq, diff --git a/target/linux/ramips/files/arch/mips/ralink/rt288x/rt288x.c b/target/linux/ramips/files/arch/mips/ralink/rt288x/rt288x.c index 633e83d8c..c51ad98b3 100644 --- a/target/linux/ramips/files/arch/mips/ralink/rt288x/rt288x.c +++ b/target/linux/ramips/files/arch/mips/ralink/rt288x/rt288x.c @@ -42,6 +42,10 @@ void __init ramips_soc_prom_init(void)  		(char) ((n1 >> 16) & 0xff), (char) ((n1 >> 24) & 0xff),  		(id >> CHIP_ID_ID_SHIFT) & CHIP_ID_ID_MASK,  		(id & CHIP_ID_REV_MASK)); + +	ramips_mem_base = RT2880_SDRAM_BASE; +	ramips_mem_size_min = RT288X_MEM_SIZE_MIN; +	ramips_mem_size_max = RT288X_MEM_SIZE_MAX;  }  static struct ramips_gpio_chip rt288x_gpio_chips[] = { diff --git a/target/linux/ramips/files/arch/mips/ralink/rt305x/rt305x.c b/target/linux/ramips/files/arch/mips/ralink/rt305x/rt305x.c index fa0d0f6cc..956867830 100644 --- a/target/linux/ramips/files/arch/mips/ralink/rt305x/rt305x.c +++ b/target/linux/ramips/files/arch/mips/ralink/rt305x/rt305x.c @@ -42,6 +42,10 @@ void __init ramips_soc_prom_init(void)  		(char) ((n1 >> 16) & 0xff), (char) ((n1 >> 24) & 0xff),  		(id >> CHIP_ID_ID_SHIFT) & CHIP_ID_ID_MASK,  		(id & CHIP_ID_REV_MASK)); + +	ramips_mem_base = RT305X_SDRAM_BASE; +	ramips_mem_size_min = RT305X_MEM_SIZE_MIN; +	ramips_mem_size_max = RT305X_MEM_SIZE_MAX;  }  static struct ramips_gpio_chip rt305x_gpio_chips[] = { diff --git a/target/linux/ramips/files/arch/mips/ralink/rt3883/rt3883.c b/target/linux/ramips/files/arch/mips/ralink/rt3883/rt3883.c index 8f5994892..9f9141266 100644 --- a/target/linux/ramips/files/arch/mips/ralink/rt3883/rt3883.c +++ b/target/linux/ramips/files/arch/mips/ralink/rt3883/rt3883.c @@ -41,6 +41,10 @@ void __init ramips_soc_prom_init(void)  		(char) ((n1 >> 16) & 0xff), (char) ((n1 >> 24) & 0xff),  		(id >> RT3883_REVID_VER_ID_SHIFT) & RT3883_REVID_VER_ID_MASK,  		(id & RT3883_REVID_ECO_ID_MASK)); + +	ramips_mem_base = RT3883_SDRAM_BASE; +	ramips_mem_size_min = RT3883_MEM_SIZE_MIN; +	ramips_mem_size_max = RT3883_MEM_SIZE_MAX;  }  static struct ramips_gpio_chip rt3883_gpio_chips[] = { | 
