MIPS: Ingenic: Add system type for new Ingenic SoCs.
author周琰杰 (Zhou Yanjie) <zhouyanjie@wanyeetech.com>
Thu, 15 Jul 2021 16:57:07 +0000 (00:57 +0800)
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>
Mon, 19 Jul 2021 11:16:42 +0000 (13:16 +0200)
Add JZ4730, JZ4750, JZ4755, JZ4760, JZ4760B, X2000H, and X2100 system
type for cat /proc/cpuinfo to give out JZ4730, JZ4750, JZ4755, JZ4760,
JZ4760B, X2000H, and X2100.

Signed-off-by: 周琰杰 (Zhou Yanjie) <zhouyanjie@wanyeetech.com>
Reviewed-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
arch/mips/generic/board-ingenic.c
arch/mips/include/asm/bootinfo.h
arch/mips/include/asm/cpu.h

index 0cec0be..e86e001 100644 (file)
 static __init char *ingenic_get_system_type(unsigned long machtype)
 {
        switch (machtype) {
+       case MACH_INGENIC_X2100:
+               return "X2100";
+       case MACH_INGENIC_X2000H:
+               return "X2000H";
        case MACH_INGENIC_X2000E:
                return "X2000E";
        case MACH_INGENIC_X2000:
@@ -37,8 +41,18 @@ static __init char *ingenic_get_system_type(unsigned long machtype)
                return "JZ4775";
        case MACH_INGENIC_JZ4770:
                return "JZ4770";
+       case MACH_INGENIC_JZ4760B:
+               return "JZ4760B";
+       case MACH_INGENIC_JZ4760:
+               return "JZ4760";
+       case MACH_INGENIC_JZ4755:
+               return "JZ4755";
+       case MACH_INGENIC_JZ4750:
+               return "JZ4750";
        case MACH_INGENIC_JZ4725B:
                return "JZ4725B";
+       case MACH_INGENIC_JZ4730:
+               return "JZ4730";
        default:
                return "JZ4740";
        }
@@ -61,8 +75,13 @@ static __init const void *ingenic_fixup_fdt(const void *fdt, const void *match_d
 }
 
 static const struct of_device_id ingenic_of_match[] __initconst = {
+       { .compatible = "ingenic,jz4730", .data = (void *)MACH_INGENIC_JZ4730 },
        { .compatible = "ingenic,jz4740", .data = (void *)MACH_INGENIC_JZ4740 },
        { .compatible = "ingenic,jz4725b", .data = (void *)MACH_INGENIC_JZ4725B },
+       { .compatible = "ingenic,jz4750", .data = (void *)MACH_INGENIC_JZ4750 },
+       { .compatible = "ingenic,jz4755", .data = (void *)MACH_INGENIC_JZ4755 },
+       { .compatible = "ingenic,jz4760", .data = (void *)MACH_INGENIC_JZ4760 },
+       { .compatible = "ingenic,jz4760b", .data = (void *)MACH_INGENIC_JZ4760B },
        { .compatible = "ingenic,jz4770", .data = (void *)MACH_INGENIC_JZ4770 },
        { .compatible = "ingenic,jz4775", .data = (void *)MACH_INGENIC_JZ4775 },
        { .compatible = "ingenic,jz4780", .data = (void *)MACH_INGENIC_JZ4780 },
@@ -71,6 +90,8 @@ static const struct of_device_id ingenic_of_match[] __initconst = {
        { .compatible = "ingenic,x1830", .data = (void *)MACH_INGENIC_X1830 },
        { .compatible = "ingenic,x2000", .data = (void *)MACH_INGENIC_X2000 },
        { .compatible = "ingenic,x2000e", .data = (void *)MACH_INGENIC_X2000E },
+       { .compatible = "ingenic,x2000h", .data = (void *)MACH_INGENIC_X2000H },
+       { .compatible = "ingenic,x2100", .data = (void *)MACH_INGENIC_X2100 },
        {}
 };
 
index 4c2e817..2128ba9 100644 (file)
@@ -75,6 +75,7 @@ enum ingenic_machine_type {
        MACH_INGENIC_JZ4750,
        MACH_INGENIC_JZ4755,
        MACH_INGENIC_JZ4760,
+       MACH_INGENIC_JZ4760B,
        MACH_INGENIC_JZ4770,
        MACH_INGENIC_JZ4775,
        MACH_INGENIC_JZ4780,
@@ -83,6 +84,8 @@ enum ingenic_machine_type {
        MACH_INGENIC_X1830,
        MACH_INGENIC_X2000,
        MACH_INGENIC_X2000E,
+       MACH_INGENIC_X2000H,
+       MACH_INGENIC_X2100,
 };
 
 extern char *system_type;
index 9e6211e..d45a52f 100644 (file)
@@ -46,8 +46,8 @@
 #define PRID_COMP_NETLOGIC     0x0c0000
 #define PRID_COMP_CAVIUM       0x0d0000
 #define PRID_COMP_LOONGSON     0x140000
-#define PRID_COMP_INGENIC_13   0x130000        /* X2000 */
-#define PRID_COMP_INGENIC_D0   0xd00000        /* JZ4740, JZ4750, X1830 */
+#define PRID_COMP_INGENIC_13   0x130000        /* X2000, X2100 */
+#define PRID_COMP_INGENIC_D0   0xd00000        /* JZ4730, JZ4740, JZ4750, JZ4755, JZ4760, X1830 */
 #define PRID_COMP_INGENIC_D1   0xd10000        /* JZ4770, JZ4775, X1000 */
 #define PRID_COMP_INGENIC_E1   0xe10000        /* JZ4780 */