Skip to contentSkip to conversation

Cleanups of loongson support

PATCH Applied Wu Zhangjin 2 participants 6 messages Nov 11, 2009 MIPS

lore
Share & tools
lore
#0 lore raw

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(-)
#1 lore raw

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
index 45991af..312c765 100644
@@ -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
#2 lore raw

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
index 240a3ca..539c384 100644
@@ -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
index 5b83bea..008c768 100644
@@ -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
index 31ba908..a2b78fa 100644
@@ -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
index 743d357..000bebd 100644
@@ -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
index 312c765..467a91e 100644
@@ -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
index eac43b8..cc3fa17 100644
@@ -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
#3 lore raw

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_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
index 240a3ca..539c384 100644
@@ -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
index 5b83bea..008c768 100644
@@ -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
index 31ba908..a2b78fa 100644
@@ -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
index 743d357..000bebd 100644
@@ -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
index 312c765..467a91e 100644
@@ -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
index eac43b8..cc3fa17 100644
@@ -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
 	 */
Applied
#4 lore raw

Re: [PATCH -queue 2/2] [loongson] 2f: Cleanups of the #if clauses

In reply to Wu Zhangjin
Quoted 9 lines · Wu Zhangjin

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.

Queued with some minor changes. Thanks!

Ralf

#5 lore raw

Re: [PATCH -queue 1/2] [loongson] mem.c: indent the file with TAB instead of whitespaces

In reply to Wu Zhangjin

On 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