Cleanups of loongson support
cover Cleanups of loongson support
From: Wu Zhangjin <[email protected]>
This patchset is needed for the coming patchsets.
o [loongson] mem.c: indent the file with TAB instead of whitespaces The old mem.c use the whitespaces as the indent, fix it.
o [loongson] 2f: Cleanups of the #if clauses
add two new options for describing the features of loongson2f, and replaces the old ugly #if clauses by them.
Thanks & Regards,
Wu Zhangjin
Wu Zhangjin (2):
[loongson] mem.c: indent the file with TAB instead of whitespaces [loongson] 2f: Cleanups of the #if clauses
arch/mips/Kconfig | 8 ++++++ arch/mips/include/asm/mach-loongson/loongson.h | 6 ++-- arch/mips/include/asm/mach-loongson/pci.h | 4 +- arch/mips/loongson/common/init.c | 2 +- arch/mips/loongson/common/mem.c | 29 ++++++++++++----------- arch/mips/loongson/common/pci.c | 2 +- 6 files changed, 30 insertions(+), 21 deletions(-)
PATCH 1/2 mem.c: indent the file with TAB instead of whitespaces
From: Wu Zhangjin <[email protected]>
--- arch/mips/loongson/common/mem.c | 25 +++++++++++++------------ 1 files changed, 13 insertions(+), 12 deletions(-)
arch/mips/loongson/common/mem.c +13 -12
@@ -16,10 +16,11 @@void __init prom_init_memory (void ) { -add_memory_region (0x0 , (memsize <<20 ),BOOT_MEM_RAM ); +add_memory_region (0x0 , (memsize <<20 ),BOOT_MEM_RAM ); -add_memory_region (memsize <<20 ,LOONGSON_PCI_MEM_START - (memsize << -20 ),BOOT_MEM_RESERVED ); +add_memory_region (memsize <<20 , +LOONGSON_PCI_MEM_START - (memsize <<20 ), +BOOT_MEM_RESERVED ); #ifdef CONFIG_64BIT #ifdef CONFIG_CPU_LOONGSON2F {
@@ -36,16 +37,16 @@ void __init prom_init_memory(void) 0x80000000ul, (1 << bit));mmiowb (); } -#endif /* CONFIG_CPU_LOONGSON2F */ +#endif /* CONFIG_CPU_LOONGSON2F */ -if (highmemsize >0 ) -add_memory_region (LOONGSON_HIGHMEM_START , - highmemsize <<20 ,BOOT_MEM_RAM ); +if (highmemsize >0 ) +add_memory_region (LOONGSON_HIGHMEM_START , + highmemsize <<20 ,BOOT_MEM_RAM ); -add_memory_region (LOONGSON_PCI_MEM_END +1 ,LOONGSON_HIGHMEM_START - -LOONGSON_PCI_MEM_END -1 ,BOOT_MEM_RESERVED ); +add_memory_region (LOONGSON_PCI_MEM_END +1 ,LOONGSON_HIGHMEM_START - +LOONGSON_PCI_MEM_END -1 ,BOOT_MEM_RESERVED ); -#endif /* CONFIG_64BIT */ +#endif /* CONFIG_64BIT */ }/* override of arch/mips/mm/cache.c: __uncached_access */
@@ -55,6 +56,6 @@ int __uncached_access(struct file *file, unsigned long addr)return 1 ;return addr >=__pa (high_memory) || - ((addr >=LOONGSON_MMIO_MEM_START ) && - (addr <LOONGSON_MMIO_MEM_END )); + ((addr >=LOONGSON_MMIO_MEM_START ) && + (addr <LOONGSON_MMIO_MEM_END )); }
Signature · 1 line
1.6.2.1
PATCH 2/2 2f: Cleanups of the #if clauses
From: Wu Zhangjin <[email protected]>
This patch adds two new kernel options: CPU_SUPPORT_CPUFREQ and CPU_SUPPORT_ADDRWINCFG to describe the new features of loongons2f, and replaces the several ugly #if clauses by them.
These two options will be utilized by the future loongson revisions and/or by the relative drivers, such as the coming Loongson2F CPUFreq driver.
--- arch/mips/Kconfig | 8 ++++++++ arch/mips/include/asm/mach-loongson/loongson.h | 6 +++--- arch/mips/include/asm/mach-loongson/pci.h | 4 ++-- arch/mips/loongson/common/init.c | 2 +- arch/mips/loongson/common/mem.c | 8 ++++---- arch/mips/loongson/common/pci.c | 2 +- 6 files changed, 19 insertions(+), 11 deletions(-)
arch/mips/Kconfig +8 -0
@@ -1318,8 +1318,16 @@ config CPU_LOONGSON2 config SYS_HAS_CPU_LOONGSON2E bool +config CPU_SUPPORT_CPUFREQ + bool + +config CPU_SUPPORT_ADDRWINCFG + bool + config SYS_HAS_CPU_LOONGSON2F bool + select CPU_SUPPORT_CPUFREQ + select CPU_SUPPORT_ADDRWINCFG if 64BIT config SYS_HAS_CPU_MIPS32_R1 bool
arch/mips/include/asm/mach-loongson/loongson.h +3 -3
@@ -227,7 +227,7 @@ extern void mach_irq_dispatch(unsigned int pending); ((((ADDR )>>26 ) &LOONGSON_PCIMAP_PCIMAP_LO0 ) << ((WIN )*6 )) /* Chip Config */ -#ifdef CONFIG_CPU_LOONGSON2F +#ifdef CONFIG_CPU_SUPPORT_CPUFREQ #define LOONGSON_CHIPCFG0 LOONGSON_REG(LOONGSON_REGBASE + 0x80)#endif
@@ -236,7 +236,7 @@ extern void mach_irq_dispatch(unsigned int pending);* * loongson2e do not have this module */ -#if defined(CONFIG_CPU_LOONGSON2F ) && defined(CONFIG_64BIT ) +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG /* address window config module base address */ #define LOONGSON_ADDRWINCFG_BASE 0x3ff00000ul
@@ -306,6 +306,6 @@ extern unsigned long _loongson_addrwincfg_base;#define LOONGSON_ADDRWIN_PCITODDR (win, src, dst, size) \ LOONGSON_ADDRWIN_CFG(PCIDMA, DDR, win, src, dst, size) -#endif /* ! CONFIG_CPU_LOONGSON2F && CONFIG_64BIT */ +#endif /* ! CONFIG_CPU_SUPPORT_ADDRWINCFG */ #endif /* __ASM_MACH_LOONGSON_LOONGSON_H */
arch/mips/include/asm/mach-loongson/pci.h +2 -2
@@ -28,7 +28,7 @@ extern struct pci_ops loongson_pci_ops;/* this is an offset from mips_io_port_base */ #define LOONGSON_PCI_IO_START 0x00004000UL -#if defined(CONFIG_CPU_LOONGSON2F ) && defined(CONFIG_64BIT ) +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG /* * we use address window2 to map cpu address space to pci space
@@ -56,6 +56,6 @@ extern struct pci_ops loongson_pci_ops;/* this is an offset from mips_io_port_base */ #define LOONGSON_PCI_IO_START 0x00004000UL -#endif /* !(defined(CONFIG_CPU_LOONGSON2F) && defined(CONFIG_64BIT))*/ +#endif /* !CONFIG_CPU_SUPPORT_ADDRWINCFG */ #endif /* !__ASM_MACH_LOONGSON_PCI_H_ */
arch/mips/loongson/common/init.c +1 -1
@@ -21,7 +21,7 @@ void __init prom_init(void)set_io_port_base ((unsigned long )ioremap (LOONGSON_PCIIO_BASE ,LOONGSON_PCIIO_SIZE )); -#if defined(CONFIG_CPU_LOONGSON2F ) && defined(CONFIG_64BIT ) +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG _loongson_addrwincfg_base = (unsigned long )ioremap (LOONGSON_ADDRWINCFG_BASE ,LOONGSON_ADDRWINCFG_SIZE );#endif
arch/mips/loongson/common/mem.c +4 -4
@@ -21,8 +21,7 @@ void __init prom_init_memory(void)add_memory_region (memsize <<20 ,LOONGSON_PCI_MEM_START - (memsize <<20 ),BOOT_MEM_RESERVED ); -#ifdef CONFIG_64BIT -#ifdef CONFIG_CPU_LOONGSON2F +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG {int bit;
@@ -37,8 +36,9 @@ void __init prom_init_memory(void) 0x80000000ul, (1 << bit)); mmiowb(); } -#endif /* CONFIG_CPU_LOONGSON2F */ +#endif /* !CONFIG_CPU_SUPPORT_ADDRWINCFG */ +#ifdef CONFIG_64BIT if (highmemsize >0 )add_memory_region (LOONGSON_HIGHMEM_START , highmemsize <<20 ,BOOT_MEM_RAM );
@@ -46,7 +46,7 @@ void __init prom_init_memory(void)add_memory_region (LOONGSON_PCI_MEM_END +1 ,LOONGSON_HIGHMEM_START -LOONGSON_PCI_MEM_END -1 ,BOOT_MEM_RESERVED ); -#endif /* CONFIG_64BIT */ +#endif /* !CONFIG_64BIT */ }/* override of arch/mips/mm/cache.c: __uncached_access */
arch/mips/loongson/common/pci.c +1 -1
@@ -68,7 +68,7 @@ static void __init setup_pcimap(void)deassert for some broken device */ LOONGSON_PXARB_CFG =0x00fe0105ul ; -#if defined(CONFIG_CPU_LOONGSON2F ) && defined(CONFIG_64BIT ) +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG /* * set cpu addr window2 to map CPU address space to PCI address space */
Signature · 1 line
1.6.2.1
Re: [PATCH -queue 2/2] [loongson] 2f: Cleanups of the #if clauses
Hi Ralf,
Could you please apply this one?
This is needed by the coming CPUFreq and Suspend patchset, I plan to resend them respectively after incorporating their feedbacks.
Thanks & Regards,
Wu Zhangjin
Quoted 152 lines · Wu Zhangjin
From: Wu Zhangjin <[email protected]>
This patch adds two new kernel options:
CPU_SUPPORT_CPUFREQandCPU_SUPPORT_ADDRWINCFGto describe the new features of loongons2f, and replaces the several ugly #if clauses by them.These two options will be utilized by the future loongson revisions and/or by the relative drivers, such as the coming Loongson2F CPUFreq driver.
Signed-off-by Wu Zhangjin <[email protected]>--- arch/mips/Kconfig | 8 ++++++++ arch/mips/include/asm/mach-loongson/loongson.h | 6 +++--- arch/mips/include/asm/mach-loongson/pci.h | 4 ++-- arch/mips/loongson/common/init.c | 2 +- arch/mips/loongson/common/mem.c | 8 ++++---- arch/mips/loongson/common/pci.c | 2 +- 6 files changed, 19 insertions(+), 11 deletions(-)arch/mips/Kconfig +8
-0@@ -1318,8 +1318,16 @@ config CPU_LOONGSON2 config SYS_HAS_CPU_LOONGSON2E bool +config CPU_SUPPORT_CPUFREQ + bool + +config CPU_SUPPORT_ADDRWINCFG + bool + config SYS_HAS_CPU_LOONGSON2F bool + select CPU_SUPPORT_CPUFREQ + select CPU_SUPPORT_ADDRWINCFG if 64BIT config SYS_HAS_CPU_MIPS32_R1 boolarch/mips/include/asm/mach-loongson/loongson.h +3
-3@@ -227,7 +227,7 @@ extern void mach_irq_dispatch(unsigned int pending); ((((ADDR )>>26 ) &LOONGSON_PCIMAP_PCIMAP_LO0 ) << ((WIN )*6 )) /* Chip Config */ -#ifdef CONFIG_CPU_LOONGSON2F +#ifdef CONFIG_CPU_SUPPORT_CPUFREQ #define LOONGSON_CHIPCFG0 LOONGSON_REG(LOONGSON_REGBASE + 0x80)#endif @@ -236,7 +236,7 @@ extern void mach_irq_dispatch(unsigned int pending);* * loongson2e do not have this module */ -#if defined(CONFIG_CPU_LOONGSON2F ) && defined(CONFIG_64BIT ) +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG /* address window config module base address */ #define LOONGSON_ADDRWINCFG_BASE 0x3ff00000ul@@ -306,6 +306,6 @@ extern unsigned long _loongson_addrwincfg_base;#define LOONGSON_ADDRWIN_PCITODDR (win, src, dst, size) \ LOONGSON_ADDRWIN_CFG(PCIDMA, DDR, win, src, dst, size) -#endif /* ! CONFIG_CPU_LOONGSON2F && CONFIG_64BIT */ +#endif /* ! CONFIG_CPU_SUPPORT_ADDRWINCFG */ #endif /* __ASM_MACH_LOONGSON_LOONGSON_H */ arch/mips/include/asm/mach-loongson/pci.h +2
-2@@ -28,7 +28,7 @@ extern struct pci_ops loongson_pci_ops;/* this is an offset from mips_io_port_base */ #define LOONGSON_PCI_IO_START 0x00004000UL -#if defined(CONFIG_CPU_LOONGSON2F ) && defined(CONFIG_64BIT ) +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG /* * we use address window2 to map cpu address space to pci space @@ -56,6 +56,6 @@ extern struct pci_ops loongson_pci_ops;/* this is an offset from mips_io_port_base */ #define LOONGSON_PCI_IO_START 0x00004000UL -#endif /* !(defined(CONFIG_CPU_LOONGSON2F) && defined(CONFIG_64BIT))*/ +#endif /* !CONFIG_CPU_SUPPORT_ADDRWINCFG */ #endif /* !__ASM_MACH_LOONGSON_PCI_H_ */ arch/mips/loongson/common/init.c +1
-1@@ -21,7 +21,7 @@ void __init prom_init(void)set_io_port_base ((unsigned long )ioremap (LOONGSON_PCIIO_BASE ,LOONGSON_PCIIO_SIZE )); -#if defined(CONFIG_CPU_LOONGSON2F ) && defined(CONFIG_64BIT ) +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG _loongson_addrwincfg_base = (unsigned long )ioremap (LOONGSON_ADDRWINCFG_BASE ,LOONGSON_ADDRWINCFG_SIZE );#endif arch/mips/loongson/common/mem.c +4
-4@@ -21,8 +21,7 @@ void __init prom_init_memory(void)add_memory_region (memsize <<20 ,LOONGSON_PCI_MEM_START - (memsize <<20 ),BOOT_MEM_RESERVED ); -#ifdef CONFIG_64BIT -#ifdef CONFIG_CPU_LOONGSON2F +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG {int bit;@@ -37,8 +36,9 @@ void __init prom_init_memory(void) 0x80000000ul, (1 << bit)); mmiowb(); } -#endif /* CONFIG_CPU_LOONGSON2F */ +#endif /* !CONFIG_CPU_SUPPORT_ADDRWINCFG */ +#ifdef CONFIG_64BIT if (highmemsize >0 )add_memory_region (LOONGSON_HIGHMEM_START , highmemsize <<20 ,BOOT_MEM_RAM );@@ -46,7 +46,7 @@ void __init prom_init_memory(void)add_memory_region (LOONGSON_PCI_MEM_END +1 ,LOONGSON_HIGHMEM_START -LOONGSON_PCI_MEM_END -1 ,BOOT_MEM_RESERVED ); -#endif /* CONFIG_64BIT */ +#endif /* !CONFIG_64BIT */ }/* override of arch/mips/mm/cache.c: __uncached_access */ arch/mips/loongson/common/pci.c +1
-1@@ -68,7 +68,7 @@ static void __init setup_pcimap(void)deassert for some broken device */ LOONGSON_PXARB_CFG =0x00fe0105ul ; -#if defined(CONFIG_CPU_LOONGSON2F ) && defined(CONFIG_64BIT ) +#ifdef CONFIG_CPU_SUPPORT_ADDRWINCFG /* * set cpu addr window2 to map CPU address space to PCI address space */
Ralf Baechle
AppliedRe: [PATCH -queue 2/2] [loongson] 2f: Cleanups of the #if clauses
In reply to Wu ZhangjinQuoted 9 lines · Wu Zhangjin
From: Wu Zhangjin <[email protected]>
This patch adds two new kernel options:
CPU_SUPPORT_CPUFREQandCPU_SUPPORT_ADDRWINCFGto describe the new features of loongons2f, and replaces the several ugly #if clauses by them.These two options will be utilized by the future loongson revisions and/or by the relative drivers, such as the coming Loongson2F CPUFreq driver.
Queued with some minor changes. Thanks!
Ralf
Re: [PATCH -queue 1/2] [loongson] mem.c: indent the file with TAB instead of whitespaces
In reply to Wu ZhangjinOn Wed, Nov 11, 2009 at 01:39:11PM +0800, Wu Zhangjin wrote:
Folded into the existing patches
MIPS: Loongson: Register reserved memory pages
MIPS: Loongson: Add basic Loongson 2F support
Thanks,
Ralf