[U-Boot] [PATCH] sandbox: fix cpu property in test.dts for pytest

AKASHI Takahiro takahiro.akashi at linaro.org
Tue Aug 27 08:17:03 UTC 2019


When I tried to run some new efi tests with pytest, efi_smbios_register()
triggered a segmentation fault. Here is the location where it happened:
efi_init_obj_list()
  efi_smbios_register()
    write_smbios_table()
      smbios_write_type4()
        smbios_write_type4_dm()

where dev_get_parent_platdata() should return a pointer to struct
cpu_platdata, but it is actually NULL because any cpu device on
sandbox is attached to "root_driver."

With this patch, this issue will be fixed by moving all the definitions
of cpus under "cpus" node so that they have a "cpu_bus" parent.

Signed-off-by: AKASHI Takahiro <takahiro.akashi at linaro.org>
---
 arch/sandbox/dts/test.dts | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts
index 27b0baab2781..c549d9e50fb8 100644
--- a/arch/sandbox/dts/test.dts
+++ b/arch/sandbox/dts/test.dts
@@ -389,19 +389,21 @@
 		mbox-names = "other", "test";
 	};
 
-	cpu-test1 {
-		compatible = "sandbox,cpu_sandbox";
-		u-boot,dm-pre-reloc;
-	};
+	cpus {
+		cpu-test1 {
+			compatible = "sandbox,cpu_sandbox";
+			u-boot,dm-pre-reloc;
+		};
 
-	cpu-test2 {
-		compatible = "sandbox,cpu_sandbox";
-		u-boot,dm-pre-reloc;
-	};
+		cpu-test2 {
+			compatible = "sandbox,cpu_sandbox";
+			u-boot,dm-pre-reloc;
+		};
 
-	cpu-test3 {
-		compatible = "sandbox,cpu_sandbox";
-		u-boot,dm-pre-reloc;
+		cpu-test3 {
+			compatible = "sandbox,cpu_sandbox";
+			u-boot,dm-pre-reloc;
+		};
 	};
 
 	i2s: i2s {
-- 
2.21.0



More information about the U-Boot mailing list