diff -drupN a/arch/arm/kernel/devtree.c b/arch/arm/kernel/devtree.c
--- a/arch/arm/kernel/devtree.c	2018-08-06 17:23:04.000000000 +0300
+++ b/arch/arm/kernel/devtree.c	2022-06-12 05:28:14.000000000 +0300
@@ -130,12 +130,14 @@ void __init arm_dt_init_cpu_maps(void)
 		 * temp values were initialized to UINT_MAX
 		 * to avoid matching valid MPIDR[23:0] values.
 		 */
-		for (j = 0; j < cpuidx; j++)
-			if (WARN(tmp_map[j] == hwid,
-				 "Duplicate /cpu reg properties in the DT\n")) {
-				of_node_put(cpu);
-				return;
-			}
+		if (is_smp()) {
+			for (j = 0; j < cpuidx; j++)
+				if (WARN(tmp_map[j] == hwid,
+					 "Duplicate /cpu reg properties in the DT\n")) {
+					of_node_put(cpu);
+					return;
+				}
+		}
 
 		/*
 		 * Build a stashed array of MPIDR values. Numbering scheme