sandbox: Add a test device that uses of-platdata
authorSimon Glass <sjg@chromium.org>
Mon, 4 Jul 2016 17:57:55 +0000 (11:57 -0600)
committerSimon Glass <sjg@chromium.org>
Fri, 15 Jul 2016 02:40:24 +0000 (20:40 -0600)
Start up the test devices. These print out of-platdata contents, providing a
check that the of-platdata feature is working correctly.

The device-tree changes are made to sandbox.dts rather than test.dts. since
the former controls the of-platdata generation.

Signed-off-by: Simon Glass <sjg@chromium.org>
arch/sandbox/cpu/spl.c
arch/sandbox/dts/sandbox.dts
include/configs/sandbox_spl.h

index e17c0ed0875e46c21dbc2b8ea4b3fffddea09fb5..e8349c0b932d7202d1daac766a4a657f04e3a1c5 100644 (file)
@@ -6,6 +6,7 @@
 #include <common.h>
 #include <dm.h>
 #include <os.h>
+#include <spl.h>
 #include <asm/spl.h>
 #include <asm/state.h>
 
@@ -49,3 +50,19 @@ int spl_board_load_image(void)
        /* Hopefully this will not return */
        return os_spl_to_uboot(fname);
 }
+
+void spl_board_init(void)
+{
+       struct udevice *dev;
+
+       preloader_console_init();
+
+       /*
+       * Scan all the devices so that we can output their platform data. See
+       * sandbox_spl_probe().
+       */
+       for (uclass_first_device(UCLASS_MISC, &dev);
+       dev;
+       uclass_next_device(&dev))
+               ;
+}
index 2ae40148b09a3976f488b39a0df503ace67ab21f..e6d336f16ab3357f25fdef2e7cf06b3245e353b5 100644 (file)
                };
        };
 
+       spl-test {
+               u-boot,dm-pre-reloc;
+               compatible = "sandbox,spl-test";
+               boolval;
+               intval = <1>;
+               intarray = <2 3 4>;
+               byteval = [05];
+               bytearray = [06];
+               longbytearray = [09 0a 0b 0c 0d 0e 0f 10 11];
+               stringval = "message";
+               stringarray = "multi-word", "message";
+       };
+
+       spl-test2 {
+               u-boot,dm-pre-reloc;
+               compatible = "sandbox,spl-test";
+               intval = <3>;
+               intarray = <5>;
+               byteval = [08];
+               bytearray = [01 23 34];
+               longbytearray = [09 0a 0b 0c];
+               stringval = "message2";
+               stringarray = "another", "multi-word", "message";
+       };
+
+       spl-test3 {
+               u-boot,dm-pre-reloc;
+               compatible = "sandbox,spl-test";
+               stringarray = "one";
+       };
+
        square {
                compatible = "demo-shape";
                colour = "blue";
index 7b5c3f3e033ae5cfc5b32132b5b01c2cfe705093..ffc309867a2ed5baf18bf74115bf4fb1c05b2366 100644 (file)
@@ -8,6 +8,8 @@
 
 #include <configs/sandbox.h>
 
+#define CONFIG_SPL_BOARD_INIT
+
 #define CONFIG_SPL_DRIVERS_MISC_SUPPORT
 #define CONFIG_SPL_ENV_SUPPORT
 #define CONFIG_SPL_FRAMEWORK