summaryrefslogtreecommitdiff
path: root/arch/sandbox
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sandbox')
-rw-r--r--arch/sandbox/Kconfig2
-rw-r--r--arch/sandbox/cpu/cpu.c2
-rw-r--r--arch/sandbox/dts/test.dts101
-rw-r--r--arch/sandbox/include/asm/serial.h2
-rw-r--r--arch/sandbox/include/asm/setjmp.h18
5 files changed, 108 insertions, 17 deletions
diff --git a/arch/sandbox/Kconfig b/arch/sandbox/Kconfig
index 4c169034d9a..d61a327f151 100644
--- a/arch/sandbox/Kconfig
+++ b/arch/sandbox/Kconfig
@@ -77,7 +77,7 @@ config SANDBOX_BITS_PER_LONG
config SYS_FDT_LOAD_ADDR
hex "Address at which to load devicetree"
- default 0x100
+ default 0x1000
help
With sandbox the devicetree is loaded into the emulated RAM. This sets
the address that is used. There must be enough space at this address
diff --git a/arch/sandbox/cpu/cpu.c b/arch/sandbox/cpu/cpu.c
index 6407193c5f1..6db8739e66b 100644
--- a/arch/sandbox/cpu/cpu.c
+++ b/arch/sandbox/cpu/cpu.c
@@ -10,10 +10,10 @@
#include <errno.h>
#include <log.h>
#include <os.h>
+#include <setjmp.h>
#include <asm/global_data.h>
#include <asm/io.h>
#include <asm/malloc.h>
-#include <asm/setjmp.h>
#include <asm/state.h>
#include <dm/ofnode.h>
#include <linux/delay.h>
diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts
index b8f3012873e..52e9ddbf50f 100644
--- a/arch/sandbox/dts/test.dts
+++ b/arch/sandbox/dts/test.dts
@@ -1047,6 +1047,31 @@
};
};
+ lvds-encoder {
+ compatible = "lvds-encoder";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ bridge_input: endpoint {
+ /* link to output */
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+
+ bridge_output: endpoint {
+ remote-endpoint = <&panel_input>;
+ };
+ };
+ };
+ };
+
wdt-gpio-toggle {
gpios = <&gpio_a 8 0>;
compatible = "linux,wdt-gpio";
@@ -1402,6 +1427,27 @@
panel {
compatible = "simple-panel";
backlight = <&backlight 0 100>;
+
+ display-timings {
+ timing@0 {
+ /* 1280x800@60Hz */
+ clock-frequency = <68000000>;
+ hactive = <1280>;
+ hfront-porch = <48>;
+ hback-porch = <18>;
+ hsync-len = <30>;
+ vactive = <800>;
+ vfront-porch = <3>;
+ vback-porch = <12>;
+ vsync-len = <5>;
+ };
+ };
+
+ port {
+ panel_input: endpoint {
+ remote-endpoint = <&bridge_output>;
+ };
+ };
};
scsi {
@@ -2048,6 +2094,61 @@
sandbox,err-step-size = <512>;
};
};
+
+ graph1 {
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ reg = <0>;
+
+ endpoint@0 {
+ reg = <0>;
+ };
+
+ endpoint@1 {
+ reg = <1>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+
+ endpoint {
+ test-property-0;
+ };
+ };
+
+ port@2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ reg = <2>;
+
+ graph2_link: endpoint@0 {
+ reg = <0>;
+ test-property-1;
+ remote-endpoint = <&graph1_link>;
+ };
+
+ endpoint@1 {
+ reg = <1>;
+ };
+ };
+ };
+ };
+
+ graph2 {
+ port {
+ graph1_link: endpoint {
+ remote-endpoint = <&graph2_link>;
+ };
+ };
+ };
};
#include "sandbox_pmic.dtsi"
diff --git a/arch/sandbox/include/asm/serial.h b/arch/sandbox/include/asm/serial.h
index 16589a1b219..41506341816 100644
--- a/arch/sandbox/include/asm/serial.h
+++ b/arch/sandbox/include/asm/serial.h
@@ -44,7 +44,7 @@ void sandbox_serial_endisable(bool enabled);
* @buf: holds input characters available to be read by this driver
*/
struct sandbox_serial_priv {
- struct membuff buf;
+ struct membuf buf;
char serial_buf[16];
bool start_of_line;
};
diff --git a/arch/sandbox/include/asm/setjmp.h b/arch/sandbox/include/asm/setjmp.h
index 001c7ea322d..3413c747783 100644
--- a/arch/sandbox/include/asm/setjmp.h
+++ b/arch/sandbox/include/asm/setjmp.h
@@ -4,8 +4,8 @@
* Written by Simon Glass <sjg@chromium.org>
*/
-#ifndef _SETJMP_H_
-#define _SETJMP_H_
+#ifndef _ASM_SETJMP_H_
+#define _ASM_SETJMP_H_
struct jmp_buf_data {
/*
@@ -19,17 +19,7 @@ struct jmp_buf_data {
* We don't need to worry about 16-byte alignment, since this does not
* run on Windows.
*/
- ulong data[128];
+ unsigned long data[128];
};
-typedef struct jmp_buf_data jmp_buf[1];
-
-/*
- * We have to directly link with the system versions of
- * setjmp/longjmp, because setjmp must not return as otherwise
- * the stack may become invalid.
- */
-int setjmp(jmp_buf jmp);
-__noreturn void longjmp(jmp_buf jmp, int ret);
-
-#endif /* _SETJMP_H_ */
+#endif /* _ASM_SETJMP_H_ */