MIPS: Loongson: Change naming methods
authorWu Zhangjin <wuzhangjin@gmail.com>
Thu, 2 Jul 2009 15:26:08 +0000 (23:26 +0800)
committerRalf Baechle <ralf@linux-mips.org>
Thu, 17 Sep 2009 18:07:47 +0000 (20:07 +0200)
To make source code of loongson sharable to the machines(such as gdium)
made by the other companies, we rename arch/mips/lemote to
arch/mips/loongson, asm/mach-lemote to asm/mach-loongson, and rename lm2e
to the name of the machine: fuloong-2e. accordingly, FULONG are renamed to
FULOONG2E to make it distinguishable to the future FULOONG2F.  and also,
some other relative tuning is needed.

Signed-off-by: Wu Zhangjin <wuzhangjin@gmail.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
25 files changed:
arch/mips/Kconfig
arch/mips/Makefile
arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h [moved from arch/mips/include/asm/mach-lemote/cpu-feature-overrides.h with 90% similarity]
arch/mips/include/asm/mach-loongson/dma-coherence.h [moved from arch/mips/include/asm/mach-lemote/dma-coherence.h with 91% similarity]
arch/mips/include/asm/mach-loongson/loongson.h [moved from arch/mips/include/asm/mach-lemote/loongson.h with 95% similarity]
arch/mips/include/asm/mach-loongson/mc146818rtc.h [moved from arch/mips/include/asm/mach-lemote/mc146818rtc.h with 85% similarity]
arch/mips/include/asm/mach-loongson/pci.h [moved from arch/mips/include/asm/mach-lemote/pci.h with 89% similarity]
arch/mips/include/asm/mach-loongson/war.h [moved from arch/mips/include/asm/mach-lemote/war.h with 85% similarity]
arch/mips/include/asm/mips-boards/bonito64.h
arch/mips/lemote/lm2e/setup.c [deleted file]
arch/mips/loongson/fuloong-2e/Makefile [moved from arch/mips/lemote/lm2e/Makefile with 81% similarity]
arch/mips/loongson/fuloong-2e/bonito-irq.c [moved from arch/mips/lemote/lm2e/bonito-irq.c with 100% similarity]
arch/mips/loongson/fuloong-2e/cmdline.c [moved from arch/mips/lemote/lm2e/cmdline.c with 100% similarity]
arch/mips/loongson/fuloong-2e/early_printk.c [moved from arch/mips/lemote/lm2e/early_printk.c with 100% similarity]
arch/mips/loongson/fuloong-2e/env.c [moved from arch/mips/lemote/lm2e/env.c with 100% similarity]
arch/mips/loongson/fuloong-2e/init.c [moved from arch/mips/lemote/lm2e/init.c with 100% similarity]
arch/mips/loongson/fuloong-2e/irq.c [moved from arch/mips/lemote/lm2e/irq.c with 100% similarity]
arch/mips/loongson/fuloong-2e/machtype.c [moved from arch/mips/lemote/lm2e/machtype.c with 92% similarity]
arch/mips/loongson/fuloong-2e/mem.c [moved from arch/mips/lemote/lm2e/mem.c with 100% similarity]
arch/mips/loongson/fuloong-2e/pci.c [moved from arch/mips/lemote/lm2e/pci.c with 100% similarity]
arch/mips/loongson/fuloong-2e/reset.c [new file with mode: 0644]
arch/mips/loongson/fuloong-2e/time.c [moved from arch/mips/lemote/lm2e/time.c with 100% similarity]
arch/mips/pci/Makefile
arch/mips/pci/fixup-fuloong2e.c [moved from arch/mips/pci/fixup-lm2e.c with 100% similarity]
arch/mips/pci/ops-bonito64.c

index a383dac..3414e23 100644 (file)
@@ -6,7 +6,7 @@ config MIPS
        select HAVE_ARCH_KGDB
        # Horrible source of confusion.  Die, die, die ...
        select EMBEDDED
-       select RTC_LIB if !LEMOTE_FULONG
+       select RTC_LIB if !LEMOTE_FULOONG2E
 
 mainmenu "Linux/MIPS Kernel Configuration"
 
@@ -174,8 +174,8 @@ config LASAT
        select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
        select SYS_SUPPORTS_LITTLE_ENDIAN
 
-config LEMOTE_FULONG
-       bool "Lemote Fulong mini-PC"
+config LEMOTE_FULOONG2E
+       bool "Lemote Fuloong2e mini-PC"
        select ARCH_SPARSEMEM_ENABLE
        select CEVT_R4K
        select CSRC_R4K
@@ -196,7 +196,7 @@ config LEMOTE_FULONG
        select GENERIC_ISA_DMA_SUPPORT_BROKEN
        select CPU_HAS_WB
        help
-         Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
+         Lemote Fuloong2e mini-PC board based on the Chinese Loongson-2E CPU and
          an FPGA northbridge
 
 config MIPS_MALTA
index 861da51..7754cbb 100644 (file)
@@ -314,11 +314,11 @@ cflags-$(CONFIG_WR_PPMC)          += -I$(srctree)/arch/mips/include/asm/mach-wrppmc
 load-$(CONFIG_WR_PPMC)         += 0xffffffff80100000
 
 #
-# lemote fulong mini-PC board
+# lemote fuloong2e mini-PC board
 #
-core-$(CONFIG_LEMOTE_FULONG) +=arch/mips/lemote/lm2e/
-load-$(CONFIG_LEMOTE_FULONG) +=0xffffffff80100000
-cflags-$(CONFIG_LEMOTE_FULONG) += -I$(srctree)/arch/mips/include/asm/mach-lemote
+core-$(CONFIG_LEMOTE_FULOONG2E) +=arch/mips/loongson/fuloong-2e/
+load-$(CONFIG_LEMOTE_FULOONG2E) +=0xffffffff80100000
+cflags-$(CONFIG_LEMOTE_FULOONG2E) += -I$(srctree)/arch/mips/include/asm/mach-loongson/
 
 #
 # MIPS Malta board
@@ -13,8 +13,8 @@
  *      loongson2f user manual.
  */
 
-#ifndef __ASM_MACH_LEMOTE_CPU_FEATURE_OVERRIDES_H
-#define __ASM_MACH_LEMOTE_CPU_FEATURE_OVERRIDES_H
+#ifndef __ASM_MACH_LOONGSON_CPU_FEATURE_OVERRIDES_H
+#define __ASM_MACH_LOONGSON_CPU_FEATURE_OVERRIDES_H
 
 #define cpu_dcache_line_size() 32
 #define cpu_icache_line_size() 32
@@ -56,4 +56,4 @@
 #define cpu_has_watch          1
 #define cpu_icache_snoops_remote_store 1
 
-#endif /* __ASM_MACH_LEMOTE_CPU_FEATURE_OVERRIDES_H */
+#endif /* __ASM_MACH_LOONGSON_CPU_FEATURE_OVERRIDES_H */
@@ -8,8 +8,8 @@
  * Author: Fuxin Zhang, zhangfx@lemote.com
  *
  */
-#ifndef __ASM_MACH_LEMOTE_DMA_COHERENCE_H
-#define __ASM_MACH_LEMOTE_DMA_COHERENCE_H
+#ifndef __ASM_MACH_LOONGSON_DMA_COHERENCE_H
+#define __ASM_MACH_LOONGSON_DMA_COHERENCE_H
 
 struct device;
 
@@ -65,4 +65,4 @@ static inline int plat_device_is_coherent(struct device *dev)
        return 0;
 }
 
-#endif /* __ASM_MACH_LEMOTE_DMA_COHERENCE_H */
+#endif /* __ASM_MACH_LOONGSON_DMA_COHERENCE_H */
@@ -21,9 +21,6 @@
 /* loongson internal northbridge initialization */
 extern void bonito_irq_init(void);
 
-/* loongson-based machines specific reboot setup */
-extern void mips_reboot_setup(void);
-
 /* environment arguments from bootloader */
 extern unsigned long bus_clock, cpu_clock_freq;
 extern unsigned long memsize, highmemsize;
@@ -7,8 +7,8 @@
  *
  * RTC routines for PC style attached Dallas chip.
  */
-#ifndef __ASM_MACH_LEMOTE_MC146818RTC_H
-#define __ASM_MACH_LEMOTE_MC146818RTC_H
+#ifndef __ASM_MACH_LOONGSON_MC146818RTC_H
+#define __ASM_MACH_LOONGSON_MC146818RTC_H
 
 #include <linux/io.h>
 
@@ -33,4 +33,4 @@ static inline void CMOS_WRITE(unsigned char data, unsigned long addr)
 #define mc146818_decode_year(year) ((year) < 70 ? (year) + 2000 : (year) + 1970)
 #endif
 
-#endif /* __ASM_MACH_LEMOTE_MC146818RTC_H */
+#endif /* __ASM_MACH_LOONGSON_MC146818RTC_H */
similarity index 89%
rename from arch/mips/include/asm/mach-lemote/pci.h
rename to arch/mips/include/asm/mach-loongson/pci.h
index 3e6b130..e229b29 100644 (file)
@@ -19,8 +19,8 @@
  * 02139, USA.
  */
 
-#ifndef __ASM_MACH_LEMOTE_PCI_H_
-#define __ASM_MACH_LEMOTE_PCI_H_
+#ifndef __ASM_MACH_LOONGSON_PCI_H_
+#define __ASM_MACH_LOONGSON_PCI_H_
 
 extern struct pci_ops bonito64_pci_ops;
 
@@ -28,4 +28,4 @@ extern struct pci_ops bonito64_pci_ops;
 #define LOONGSON2E_PCI_MEM_END         (BONITO_PCILO1_BASE + 0x04000000 * 2)
 #define LOONGSON2E_PCI_IO_START                0x00004000UL
 
-#endif /* !__ASM_MACH_LEMOTE_PCI_H_ */
+#endif /* !__ASM_MACH_LOONGSON_PCI_H_ */
similarity index 85%
rename from arch/mips/include/asm/mach-lemote/war.h
rename to arch/mips/include/asm/mach-loongson/war.h
index 05f89e0..4b971c3 100644 (file)
@@ -5,8 +5,8 @@
  *
  * Copyright (C) 2002, 2004, 2007 by Ralf Baechle <ralf@linux-mips.org>
  */
-#ifndef __ASM_MIPS_MACH_LEMOTE_WAR_H
-#define __ASM_MIPS_MACH_LEMOTE_WAR_H
+#ifndef __ASM_MACH_LOONGSON_WAR_H
+#define __ASM_MACH_LOONGSON_WAR_H
 
 #define R4600_V1_INDEX_ICACHEOP_WAR    0
 #define R4600_V1_HIT_CACHEOP_WAR       0
@@ -22,4 +22,4 @@
 #define R10000_LLSC_WAR                        0
 #define MIPS34K_MISSED_ITLB_WAR                0
 
-#endif /* __ASM_MIPS_MACH_LEMOTE_WAR_H */
+#endif /* __ASM_MACH_LEMOTE_WAR_H */
index a0f04bb..a576ce0 100644 (file)
@@ -26,7 +26,7 @@
 /* offsets from base register */
 #define BONITO(x)      (x)
 
-#elif defined(CONFIG_LEMOTE_FULONG)
+#elif defined(CONFIG_LEMOTE_FULOONG2E)
 
 #define BONITO(x) (*(volatile u32 *)((char *)CKSEG1ADDR(BONITO_REG_BASE) + (x)))
 #define BONITO_IRQ_BASE   32
diff --git a/arch/mips/lemote/lm2e/setup.c b/arch/mips/lemote/lm2e/setup.c
deleted file mode 100644 (file)
index 6639021..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (C) 2007 Lemote Inc. & Insititute of Computing Technology
- * Author: Fuxin Zhang, zhangfx@lemote.com
- *
- *  This program is free software; you can redistribute  it and/or modify it
- *  under  the terms of  the GNU General  Public License as published by the
- *  Free Software Foundation;  either version 2 of the  License, or (at your
- *  option) any later version.
- */
-#include <linux/module.h>
-
-#include <asm/wbflush.h>
-
-#include <loongson.h>
-
-#ifdef CONFIG_VT
-#include <linux/console.h>
-#include <linux/screen_info.h>
-#endif
-
-void (*__wbflush)(void);
-EXPORT_SYMBOL(__wbflush);
-
-static void wbflush_loongson2e(void)
-{
-       asm(".set\tpush\n\t"
-           ".set\tnoreorder\n\t"
-           ".set mips3\n\t"
-           "sync\n\t"
-           "nop\n\t"
-           ".set\tpop\n\t"
-           ".set mips0\n\t");
-}
-
-void __init plat_mem_setup(void)
-{
-       __wbflush = wbflush_loongson2e;
-
-#ifdef CONFIG_VT
-#if defined(CONFIG_VGA_CONSOLE)
-       conswitchp = &vga_con;
-
-       screen_info = (struct screen_info) {
-               0, 25,          /* orig-x, orig-y */
-                   0,          /* unused */
-                   0,          /* orig-video-page */
-                   0,          /* orig-video-mode */
-                   80,         /* orig-video-cols */
-                   0, 0, 0,    /* ega_ax, ega_bx, ega_cx */
-                   25,         /* orig-video-lines */
-                   VIDEO_TYPE_VGAC,    /* orig-video-isVGA */
-                   16          /* orig-video-points */
-       };
-#elif defined(CONFIG_DUMMY_CONSOLE)
-       conswitchp = &dummy_con;
-#endif
-#endif
-}
similarity index 81%
rename from arch/mips/lemote/lm2e/Makefile
rename to arch/mips/loongson/fuloong-2e/Makefile
index a5bc1ef..feb1d6b 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Makefile for Lemote Fulong mini-PC board.
+# Makefile for Lemote Fuloong2e mini-PC board.
 #
 
 obj-y += setup.o init.o reset.o irq.o pci.o bonito-irq.o mem.o \
similarity index 92%
rename from arch/mips/lemote/lm2e/machtype.c
rename to arch/mips/loongson/fuloong-2e/machtype.c
index 8d803ee..e03aa0d 100644 (file)
@@ -10,6 +10,6 @@
 
 const char *get_system_type(void)
 {
-       return "lemote-fulong";
+       return "lemote-fuloong-2e-box";
 }
 
diff --git a/arch/mips/loongson/fuloong-2e/reset.c b/arch/mips/loongson/fuloong-2e/reset.c
new file mode 100644 (file)
index 0000000..c21299a
--- /dev/null
@@ -0,0 +1,44 @@
+/*
+ * This program is free software; you can redistribute  it and/or modify it
+ * under  the terms of  the GNU General  Public License as published by the
+ * Free Software Foundation;  either version 2 of the  License, or (at your
+ * option) any later version.
+ *
+ * Copyright (C) 2007 Lemote, Inc. & Institute of Computing Technology
+ * Author: Fuxin Zhang, zhangfx@lemote.com
+ * Copyright (C) 2009 Lemote, Inc. & Institute of Computing Technology
+ * Author: Zhangjin Wu, wuzj@lemote.com
+ */
+#include <linux/init.h>
+#include <linux/pm.h>
+
+#include <asm/reboot.h>
+
+#include <loongson.h>
+
+static void loongson2e_restart(char *command)
+{
+       /* do preparation for reboot */
+       BONITO_BONGENCFG &= ~(1 << 2);
+       BONITO_BONGENCFG |= (1 << 2);
+
+       /* reboot via jumping to boot base address */
+       ((void (*)(void))ioremap_nocache(BONITO_BOOT_BASE, 4)) ();
+}
+
+static void loongson2e_halt(void)
+{
+       while (1)
+               ;
+}
+
+static int __init mips_reboot_setup(void)
+{
+       _machine_restart = loongson2e_restart;
+       _machine_halt = loongson2e_halt;
+       pm_power_off = loongson2e_halt;
+
+       return 0;
+}
+
+arch_initcall(mips_reboot_setup);
index 63d8a29..0d4d5ea 100644 (file)
@@ -26,7 +26,7 @@ obj-$(CONFIG_MIPS_COBALT)     += fixup-cobalt.o
 obj-$(CONFIG_SOC_AU1500)       += fixup-au1000.o ops-au1000.o
 obj-$(CONFIG_SOC_AU1550)       += fixup-au1000.o ops-au1000.o
 obj-$(CONFIG_SOC_PNX8550)      += fixup-pnx8550.o ops-pnx8550.o
-obj-$(CONFIG_LEMOTE_FULONG)    += fixup-lm2e.o ops-bonito64.o
+obj-$(CONFIG_LEMOTE_FULOONG2E) += fixup-fuloong2e.o ops-bonito64.o
 obj-$(CONFIG_MIPS_MALTA)       += fixup-malta.o
 obj-$(CONFIG_PMC_MSP7120_GW)   += fixup-pmcmsp.o ops-pmcmsp.o
 obj-$(CONFIG_PMC_MSP7120_EVAL) += fixup-pmcmsp.o ops-pmcmsp.o
index f742c51..54e55e7 100644 (file)
@@ -29,7 +29,7 @@
 #define PCI_ACCESS_READ  0
 #define PCI_ACCESS_WRITE 1
 
-#ifdef CONFIG_LEMOTE_FULONG
+#ifdef CONFIG_LEMOTE_FULOONG2E
 #define CFG_SPACE_REG(offset) (void *)CKSEG1ADDR(BONITO_PCICFG_BASE | (offset))
 #define ID_SEL_BEGIN 11
 #else
@@ -77,7 +77,7 @@ static int bonito64_pcibios_config_access(unsigned char access_type,
        addrp = CFG_SPACE_REG(addr & 0xffff);
        if (access_type == PCI_ACCESS_WRITE) {
                writel(cpu_to_le32(*data), addrp);
-#ifndef CONFIG_LEMOTE_FULONG
+#ifndef CONFIG_LEMOTE_FULOONG2E
                /* Wait till done */
                while (BONITO_PCIMSTAT & 0xF);
 #endif