[PATCH 4/6] MIPS: generic: Add MACH_INGENIC type and compatible for X1600

From: H. Nikolaus Schaller

Date: Sun Oct 25 2026 - 15:23:10 EST


Add support for the Ingenic/Lumissil X1600 SoC by introducing the
MACH_INGENIC_X1600 machine type.

Update the system type string mapping and add the "ingenic,x1600"
compatible string to the DT match table in the generic Ingenic board
support.

Signed-off-by: H. Nikolaus Schaller <hns@xxxxxxxxxxxxx>
---
arch/mips/generic/board-ingenic.c | 3 +++
arch/mips/include/asm/bootinfo.h | 1 +
2 files changed, 4 insertions(+)

diff --git a/arch/mips/generic/board-ingenic.c b/arch/mips/generic/board-ingenic.c
index 1f4906875e7bc..d6b0e2523a191 100644
--- a/arch/mips/generic/board-ingenic.c
+++ b/arch/mips/generic/board-ingenic.c
@@ -34,6 +34,8 @@ static __init char *ingenic_get_system_type(unsigned long machtype)
return "X2000";
case MACH_INGENIC_X1830:
return "X1830";
+ case MACH_INGENIC_X1600:
+ return "X1600";
case MACH_INGENIC_X1000E:
return "X1000E";
case MACH_INGENIC_X1000:
@@ -146,6 +148,7 @@ static const struct of_device_id ingenic_of_match[] __initconst = {
{ .compatible = "ingenic,jz4780", .data = (void *)MACH_INGENIC_JZ4780 },
{ .compatible = "ingenic,x1000", .data = (void *)MACH_INGENIC_X1000 },
{ .compatible = "ingenic,x1000e", .data = (void *)MACH_INGENIC_X1000E },
+ { .compatible = "ingenic,x1600", .data = (void *)MACH_INGENIC_X1600 },
{ .compatible = "ingenic,x1830", .data = (void *)MACH_INGENIC_X1830 },
{ .compatible = "ingenic,x2000", .data = (void *)MACH_INGENIC_X2000 },
{ .compatible = "ingenic,x2000e", .data = (void *)MACH_INGENIC_X2000E },
diff --git a/arch/mips/include/asm/bootinfo.h b/arch/mips/include/asm/bootinfo.h
index 2128ba9033911..2e562aa1bb198 100644
--- a/arch/mips/include/asm/bootinfo.h
+++ b/arch/mips/include/asm/bootinfo.h
@@ -81,6 +81,7 @@ enum ingenic_machine_type {
MACH_INGENIC_JZ4780,
MACH_INGENIC_X1000,
MACH_INGENIC_X1000E,
+ MACH_INGENIC_X1600,
MACH_INGENIC_X1830,
MACH_INGENIC_X2000,
MACH_INGENIC_X2000E,
--
2.56.0