Add four Loongson-3 based machine types:
MACH_LEMOTE_A1004/MACH_LEMOTE_A1201 are laptops;
MACH_LEMOTE_A1101 is mini-itx;
MACH_LEMOTE_A1205 is all-in-one machine.

The most significant differrent between A1004/A1201 and A1101/A1205 is
the laptops have EC but others don't.

Signed-off-by: Huacai Chen <che...@lemote.com>
Signed-off-by: Hongliang Tao <ta...@lemote.com>
Signed-off-by: Hua Yan <y...@lemote.com>
---
 arch/mips/include/asm/bootinfo.h              |   24 +++++++++++++++---------
 arch/mips/include/asm/mach-loongson/machine.h |    6 ++++++
 arch/mips/loongson/common/machtype.c          |   20 ++++++++++++--------
 3 files changed, 33 insertions(+), 17 deletions(-)

diff --git a/arch/mips/include/asm/bootinfo.h b/arch/mips/include/asm/bootinfo.h
index 7a51d87..118f525 100644
--- a/arch/mips/include/asm/bootinfo.h
+++ b/arch/mips/include/asm/bootinfo.h
@@ -61,15 +61,21 @@
 /*
  * Valid machtype for Loongson family
  */
-#define MACH_LOONGSON_UNKNOWN  0
-#define MACH_LEMOTE_FL2E       1
-#define MACH_LEMOTE_FL2F       2
-#define MACH_LEMOTE_ML2F7      3
-#define MACH_LEMOTE_YL2F89     4
-#define MACH_DEXXON_GDIUM2F10  5
-#define MACH_LEMOTE_NAS        6
-#define MACH_LEMOTE_LL2F       7
-#define MACH_LOONGSON_END      8
+enum loongson_machine_type {
+       MACH_LOONGSON_UNKNOWN,
+       MACH_LEMOTE_FL2E,
+       MACH_LEMOTE_FL2F,
+       MACH_LEMOTE_ML2F7,
+       MACH_LEMOTE_YL2F89,
+       MACH_DEXXON_GDIUM2F10,
+       MACH_LEMOTE_NAS,
+       MACH_LEMOTE_LL2F,
+       MACH_LEMOTE_A1004,
+       MACH_LEMOTE_A1101,
+       MACH_LEMOTE_A1201,
+       MACH_LEMOTE_A1205,
+       MACH_LOONGSON_END
+};
 
 /*
  * Valid machtype for group INGENIC
diff --git a/arch/mips/include/asm/mach-loongson/machine.h 
b/arch/mips/include/asm/mach-loongson/machine.h
index 4321338..89f6b9a5 100644
--- a/arch/mips/include/asm/mach-loongson/machine.h
+++ b/arch/mips/include/asm/mach-loongson/machine.h
@@ -24,4 +24,10 @@
 
 #endif
 
+#ifdef CONFIG_LEMOTE_MACH3A
+
+#define LOONGSON_MACHTYPE MACH_LEMOTE_A1101
+
+#endif /* CONFIG_LEMOTE_MACH3A */
+
 #endif /* __ASM_MACH_LOONGSON_MACHINE_H */
diff --git a/arch/mips/loongson/common/machtype.c 
b/arch/mips/loongson/common/machtype.c
index 2efd5d9..e13e13d 100644
--- a/arch/mips/loongson/common/machtype.c
+++ b/arch/mips/loongson/common/machtype.c
@@ -19,15 +19,19 @@
 #define MACHTYPE_LEN 50
 
 static const char *system_types[] = {
-       [MACH_LOONGSON_UNKNOWN]         "unknown loongson machine",
-       [MACH_LEMOTE_FL2E]              "lemote-fuloong-2e-box",
-       [MACH_LEMOTE_FL2F]              "lemote-fuloong-2f-box",
-       [MACH_LEMOTE_ML2F7]             "lemote-mengloong-2f-7inches",
-       [MACH_LEMOTE_YL2F89]            "lemote-yeeloong-2f-8.9inches",
-       [MACH_DEXXON_GDIUM2F10]         "dexxon-gdium-2f",
+       [MACH_LOONGSON_UNKNOWN]         "unknown loongson machine",
+       [MACH_LEMOTE_FL2E]              "lemote-fuloong-2e-box",
+       [MACH_LEMOTE_FL2F]              "lemote-fuloong-2f-box",
+       [MACH_LEMOTE_ML2F7]             "lemote-mengloong-2f-7inches",
+       [MACH_LEMOTE_YL2F89]            "lemote-yeeloong-2f-8.9inches",
+       [MACH_DEXXON_GDIUM2F10]         "dexxon-gdium-2f",
        [MACH_LEMOTE_NAS]               "lemote-nas-2f",
-       [MACH_LEMOTE_LL2F]              "lemote-lynloong-2f",
-       [MACH_LOONGSON_END]             NULL,
+       [MACH_LEMOTE_LL2F]              "lemote-lynloong-2f",
+       [MACH_LEMOTE_A1004]             "lemote-3a-notebook-a1004",
+       [MACH_LEMOTE_A1101]             "lemote-3a-itx-a1101",
+       [MACH_LEMOTE_A1201]             "lemote-2gq-notebook-a1201",
+       [MACH_LEMOTE_A1205]             "lemote-2gq-aio-a1205",
+       [MACH_LOONGSON_END]             NULL,
 };
 
 const char *get_system_type(void)
-- 
1.7.7.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to