Commit 14d72af7 authored by 周琰杰 (Zhou Yanjie)'s avatar 周琰杰 (Zhou Yanjie) Committed by Thomas Bogendoerfer

MIPS: Ingenic: Add system type for new Ingenic SoCs.

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: default avatar周琰杰 (Zhou Yanjie) <zhouyanjie@wanyeetech.com>
Reviewed-by: default avatarPaul Cercueil <paul@crapouillou.net>
Signed-off-by: default avatarThomas Bogendoerfer <tsbogend@alpha.franken.de>
parent e73f0f0e
...@@ -21,6 +21,10 @@ ...@@ -21,6 +21,10 @@
static __init char *ingenic_get_system_type(unsigned long machtype) static __init char *ingenic_get_system_type(unsigned long machtype)
{ {
switch (machtype) { switch (machtype) {
case MACH_INGENIC_X2100:
return "X2100";
case MACH_INGENIC_X2000H:
return "X2000H";
case MACH_INGENIC_X2000E: case MACH_INGENIC_X2000E:
return "X2000E"; return "X2000E";
case MACH_INGENIC_X2000: case MACH_INGENIC_X2000:
...@@ -37,8 +41,18 @@ static __init char *ingenic_get_system_type(unsigned long machtype) ...@@ -37,8 +41,18 @@ static __init char *ingenic_get_system_type(unsigned long machtype)
return "JZ4775"; return "JZ4775";
case MACH_INGENIC_JZ4770: case MACH_INGENIC_JZ4770:
return "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: case MACH_INGENIC_JZ4725B:
return "JZ4725B"; return "JZ4725B";
case MACH_INGENIC_JZ4730:
return "JZ4730";
default: default:
return "JZ4740"; return "JZ4740";
} }
...@@ -61,8 +75,13 @@ static __init const void *ingenic_fixup_fdt(const void *fdt, const void *match_d ...@@ -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 = { 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,jz4740", .data = (void *)MACH_INGENIC_JZ4740 },
{ .compatible = "ingenic,jz4725b", .data = (void *)MACH_INGENIC_JZ4725B }, { .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,jz4770", .data = (void *)MACH_INGENIC_JZ4770 },
{ .compatible = "ingenic,jz4775", .data = (void *)MACH_INGENIC_JZ4775 }, { .compatible = "ingenic,jz4775", .data = (void *)MACH_INGENIC_JZ4775 },
{ .compatible = "ingenic,jz4780", .data = (void *)MACH_INGENIC_JZ4780 }, { .compatible = "ingenic,jz4780", .data = (void *)MACH_INGENIC_JZ4780 },
...@@ -71,6 +90,8 @@ static const struct of_device_id ingenic_of_match[] __initconst = { ...@@ -71,6 +90,8 @@ static const struct of_device_id ingenic_of_match[] __initconst = {
{ .compatible = "ingenic,x1830", .data = (void *)MACH_INGENIC_X1830 }, { .compatible = "ingenic,x1830", .data = (void *)MACH_INGENIC_X1830 },
{ .compatible = "ingenic,x2000", .data = (void *)MACH_INGENIC_X2000 }, { .compatible = "ingenic,x2000", .data = (void *)MACH_INGENIC_X2000 },
{ .compatible = "ingenic,x2000e", .data = (void *)MACH_INGENIC_X2000E }, { .compatible = "ingenic,x2000e", .data = (void *)MACH_INGENIC_X2000E },
{ .compatible = "ingenic,x2000h", .data = (void *)MACH_INGENIC_X2000H },
{ .compatible = "ingenic,x2100", .data = (void *)MACH_INGENIC_X2100 },
{} {}
}; };
......
...@@ -75,6 +75,7 @@ enum ingenic_machine_type { ...@@ -75,6 +75,7 @@ enum ingenic_machine_type {
MACH_INGENIC_JZ4750, MACH_INGENIC_JZ4750,
MACH_INGENIC_JZ4755, MACH_INGENIC_JZ4755,
MACH_INGENIC_JZ4760, MACH_INGENIC_JZ4760,
MACH_INGENIC_JZ4760B,
MACH_INGENIC_JZ4770, MACH_INGENIC_JZ4770,
MACH_INGENIC_JZ4775, MACH_INGENIC_JZ4775,
MACH_INGENIC_JZ4780, MACH_INGENIC_JZ4780,
...@@ -83,6 +84,8 @@ enum ingenic_machine_type { ...@@ -83,6 +84,8 @@ enum ingenic_machine_type {
MACH_INGENIC_X1830, MACH_INGENIC_X1830,
MACH_INGENIC_X2000, MACH_INGENIC_X2000,
MACH_INGENIC_X2000E, MACH_INGENIC_X2000E,
MACH_INGENIC_X2000H,
MACH_INGENIC_X2100,
}; };
extern char *system_type; extern char *system_type;
......
...@@ -46,8 +46,8 @@ ...@@ -46,8 +46,8 @@
#define PRID_COMP_NETLOGIC 0x0c0000 #define PRID_COMP_NETLOGIC 0x0c0000
#define PRID_COMP_CAVIUM 0x0d0000 #define PRID_COMP_CAVIUM 0x0d0000
#define PRID_COMP_LOONGSON 0x140000 #define PRID_COMP_LOONGSON 0x140000
#define PRID_COMP_INGENIC_13 0x130000 /* X2000 */ #define PRID_COMP_INGENIC_13 0x130000 /* X2000, X2100 */
#define PRID_COMP_INGENIC_D0 0xd00000 /* JZ4740, JZ4750, X1830 */ #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_D1 0xd10000 /* JZ4770, JZ4775, X1000 */
#define PRID_COMP_INGENIC_E1 0xe10000 /* JZ4780 */ #define PRID_COMP_INGENIC_E1 0xe10000 /* JZ4780 */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment