Commit ad0e4639545b0928a3673114962ee1f3e56402d7

Authored by Simon Glass
1 parent 1992dbfdb9

sandbox: Provide a build option to avoid using SDL

Some machines do not have SDL libraries installed, and it is still useful
to build sandbox without LCD/keyboard support.

Add an option for this, used as follows:

    make sandbox_config all NO_SDL=1

Signed-off-by: Simon Glass <sjg@chromium.org>

Showing 2 changed files with 20 additions and 2 deletions Inline Diff

arch/sandbox/config.mk
1 # Copyright (c) 2011 The Chromium OS Authors. 1 # Copyright (c) 2011 The Chromium OS Authors.
2 # SPDX-License-Identifier: GPL-2.0+ 2 # SPDX-License-Identifier: GPL-2.0+
3 3
4 PLATFORM_CPPFLAGS += -DCONFIG_SANDBOX -D__SANDBOX__ -U_FORTIFY_SOURCE 4 PLATFORM_CPPFLAGS += -DCONFIG_SANDBOX -D__SANDBOX__ -U_FORTIFY_SOURCE
5 PLATFORM_CPPFLAGS += -DCONFIG_ARCH_MAP_SYSMEM -DCONFIG_SYS_GENERIC_BOARD 5 PLATFORM_CPPFLAGS += -DCONFIG_ARCH_MAP_SYSMEM -DCONFIG_SYS_GENERIC_BOARD
6 PLATFORM_LIBS += -lrt 6 PLATFORM_LIBS += -lrt
7 7
8 ifdef CONFIG_SANDBOX_SDL 8 ifdef CONFIG_SANDBOX_SDL
9 PLATFORM_LIBS += $(shell sdl-config --libs) 9 PLATFORM_LIBS += $(shell sdl-config --libs)
10 PLATFORM_CPPFLAGS += $(shell sdl-config --cflags) 10 PLATFORM_CPPFLAGS += $(shell sdl-config --cflags)
11 endif 11 endif
12 12
13 # Support generic board on sandbox 13 # Support generic board on sandbox
14 __HAVE_ARCH_GENERIC_BOARD := y 14 __HAVE_ARCH_GENERIC_BOARD := y
15 15
16 cmd_u-boot__ = $(CC) -o $@ -T u-boot.lds \ 16 cmd_u-boot__ = $(CC) -o $@ -T u-boot.lds \
17 -Wl,--start-group $(u-boot-main) -Wl,--end-group \ 17 -Wl,--start-group $(u-boot-main) -Wl,--end-group \
18 $(PLATFORM_LIBS) -Wl,-Map -Wl,u-boot.map 18 $(PLATFORM_LIBS) -Wl,-Map -Wl,u-boot.map
19 19
20 CONFIG_ARCH_DEVICE_TREE := sandbox 20 CONFIG_ARCH_DEVICE_TREE := sandbox
21
22 # Define this to avoid linking with SDL, which requires SDL libraries
23 # This can solve 'sdl-config: Command not found' errors
24 ifneq ($(NO_SDL),)
25 PLATFORM_CPPFLAGS += -DSANDBOX_NO_SDL
26 endif
21 27
include/configs/sandbox.h
1 /* 1 /*
2 * Copyright (c) 2011 The Chromium OS Authors. 2 * Copyright (c) 2011 The Chromium OS Authors.
3 * SPDX-License-Identifier: GPL-2.0+ 3 * SPDX-License-Identifier: GPL-2.0+
4 */ 4 */
5 5
6 #ifndef __CONFIG_H 6 #ifndef __CONFIG_H
7 #define __CONFIG_H 7 #define __CONFIG_H
8 8
9 #ifdef FTRACE 9 #ifdef FTRACE
10 #define CONFIG_TRACE 10 #define CONFIG_TRACE
11 #define CONFIG_CMD_TRACE 11 #define CONFIG_CMD_TRACE
12 #define CONFIG_TRACE_BUFFER_SIZE (16 << 20) 12 #define CONFIG_TRACE_BUFFER_SIZE (16 << 20)
13 #define CONFIG_TRACE_EARLY_SIZE (8 << 20) 13 #define CONFIG_TRACE_EARLY_SIZE (8 << 20)
14 #define CONFIG_TRACE_EARLY 14 #define CONFIG_TRACE_EARLY
15 #define CONFIG_TRACE_EARLY_ADDR 0x00100000 15 #define CONFIG_TRACE_EARLY_ADDR 0x00100000
16 16
17 #endif 17 #endif
18 18
19 #define CONFIG_SYS_TIMER_RATE 1000000 19 #define CONFIG_SYS_TIMER_RATE 1000000
20 20
21 #define CONFIG_BOOTSTAGE 21 #define CONFIG_BOOTSTAGE
22 #define CONFIG_BOOTSTAGE_REPORT 22 #define CONFIG_BOOTSTAGE_REPORT
23 #define CONFIG_DM 23 #define CONFIG_DM
24 #define CONFIG_CMD_DEMO 24 #define CONFIG_CMD_DEMO
25 #define CONFIG_CMD_DM 25 #define CONFIG_CMD_DM
26 #define CONFIG_DM_DEMO 26 #define CONFIG_DM_DEMO
27 #define CONFIG_DM_DEMO_SIMPLE 27 #define CONFIG_DM_DEMO_SIMPLE
28 #define CONFIG_DM_DEMO_SHAPE 28 #define CONFIG_DM_DEMO_SHAPE
29 #define CONFIG_DM_GPIO 29 #define CONFIG_DM_GPIO
30 #define CONFIG_DM_TEST 30 #define CONFIG_DM_TEST
31 31
32 /* Number of bits in a C 'long' on this architecture */ 32 /* Number of bits in a C 'long' on this architecture */
33 #define CONFIG_SANDBOX_BITS_PER_LONG 64 33 #define CONFIG_SANDBOX_BITS_PER_LONG 64
34 34
35 #define CONFIG_OF_CONTROL 35 #define CONFIG_OF_CONTROL
36 #define CONFIG_OF_HOSTFILE 36 #define CONFIG_OF_HOSTFILE
37 #define CONFIG_OF_LIBFDT 37 #define CONFIG_OF_LIBFDT
38 #define CONFIG_LMB 38 #define CONFIG_LMB
39 #define CONFIG_FIT 39 #define CONFIG_FIT
40 #define CONFIG_FIT_SIGNATURE 40 #define CONFIG_FIT_SIGNATURE
41 #define CONFIG_RSA 41 #define CONFIG_RSA
42 #define CONFIG_CMD_FDT 42 #define CONFIG_CMD_FDT
43 #define CONFIG_DEFAULT_DEVICE_TREE sandbox 43 #define CONFIG_DEFAULT_DEVICE_TREE sandbox
44 44
45 #define CONFIG_FS_FAT 45 #define CONFIG_FS_FAT
46 #define CONFIG_FS_EXT4 46 #define CONFIG_FS_EXT4
47 #define CONFIG_EXT4_WRITE 47 #define CONFIG_EXT4_WRITE
48 #define CONFIG_CMD_FAT 48 #define CONFIG_CMD_FAT
49 #define CONFIG_CMD_EXT4 49 #define CONFIG_CMD_EXT4
50 #define CONFIG_CMD_EXT4_WRITE 50 #define CONFIG_CMD_EXT4_WRITE
51 #define CONFIG_CMD_PART 51 #define CONFIG_CMD_PART
52 #define CONFIG_DOS_PARTITION 52 #define CONFIG_DOS_PARTITION
53 #define CONFIG_HOST_MAX_DEVICES 4 53 #define CONFIG_HOST_MAX_DEVICES 4
54 #define CONFIG_CMD_FS_GENERIC 54 #define CONFIG_CMD_FS_GENERIC
55 55
56 #define CONFIG_SYS_VSNPRINTF 56 #define CONFIG_SYS_VSNPRINTF
57 57
58 #define CONFIG_CMD_GPIO 58 #define CONFIG_CMD_GPIO
59 #define CONFIG_SANDBOX_GPIO 59 #define CONFIG_SANDBOX_GPIO
60 #define CONFIG_SANDBOX_GPIO_COUNT 128 60 #define CONFIG_SANDBOX_GPIO_COUNT 128
61 61
62 #define CONFIG_CMD_GPT 62 #define CONFIG_CMD_GPT
63 #define CONFIG_PARTITION_UUIDS 63 #define CONFIG_PARTITION_UUIDS
64 #define CONFIG_EFI_PARTITION 64 #define CONFIG_EFI_PARTITION
65 65
66 /* 66 /*
67 * Size of malloc() pool, although we don't actually use this yet. 67 * Size of malloc() pool, although we don't actually use this yet.
68 */ 68 */
69 #define CONFIG_SYS_MALLOC_LEN (32 << 20) /* 32MB */ 69 #define CONFIG_SYS_MALLOC_LEN (32 << 20) /* 32MB */
70 70
71 #define CONFIG_SYS_HUSH_PARSER 71 #define CONFIG_SYS_HUSH_PARSER
72 #define CONFIG_SYS_LONGHELP /* #undef to save memory */ 72 #define CONFIG_SYS_LONGHELP /* #undef to save memory */
73 #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 73 #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */
74 74
75 /* Print Buffer Size */ 75 /* Print Buffer Size */
76 #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 76 #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
77 #define CONFIG_SYS_MAXARGS 16 77 #define CONFIG_SYS_MAXARGS 16
78 78
79 /* turn on command-line edit/c/auto */ 79 /* turn on command-line edit/c/auto */
80 #define CONFIG_CMDLINE_EDITING 80 #define CONFIG_CMDLINE_EDITING
81 #define CONFIG_COMMAND_HISTORY 81 #define CONFIG_COMMAND_HISTORY
82 #define CONFIG_AUTO_COMPLETE 82 #define CONFIG_AUTO_COMPLETE
83 #define CONFIG_BOOTDELAY 3 83 #define CONFIG_BOOTDELAY 3
84 84
85 #define CONFIG_ENV_SIZE 8192 85 #define CONFIG_ENV_SIZE 8192
86 #define CONFIG_ENV_IS_NOWHERE 86 #define CONFIG_ENV_IS_NOWHERE
87 87
88 /* SPI */ 88 /* SPI */
89 #define CONFIG_SANDBOX_SPI 89 #define CONFIG_SANDBOX_SPI
90 #define CONFIG_CMD_SF 90 #define CONFIG_CMD_SF
91 #define CONFIG_CMD_SF_TEST 91 #define CONFIG_CMD_SF_TEST
92 #define CONFIG_CMD_SPI 92 #define CONFIG_CMD_SPI
93 #define CONFIG_SPI_FLASH 93 #define CONFIG_SPI_FLASH
94 #define CONFIG_OF_SPI 94 #define CONFIG_OF_SPI
95 #define CONFIG_OF_SPI_FLASH 95 #define CONFIG_OF_SPI_FLASH
96 #define CONFIG_SPI_FLASH_SANDBOX 96 #define CONFIG_SPI_FLASH_SANDBOX
97 #define CONFIG_SPI_FLASH_STMICRO 97 #define CONFIG_SPI_FLASH_STMICRO
98 #define CONFIG_SPI_FLASH_WINBOND 98 #define CONFIG_SPI_FLASH_WINBOND
99 99
100 /* Memory things - we don't really want a memory test */ 100 /* Memory things - we don't really want a memory test */
101 #define CONFIG_SYS_LOAD_ADDR 0x00000000 101 #define CONFIG_SYS_LOAD_ADDR 0x00000000
102 #define CONFIG_SYS_MEMTEST_START 0x00100000 102 #define CONFIG_SYS_MEMTEST_START 0x00100000
103 #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + 0x1000) 103 #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + 0x1000)
104 #define CONFIG_SYS_FDT_LOAD_ADDR 0x100 104 #define CONFIG_SYS_FDT_LOAD_ADDR 0x100
105 105
106 #define CONFIG_PHYSMEM 106 #define CONFIG_PHYSMEM
107 107
108 /* Size of our emulated memory */ 108 /* Size of our emulated memory */
109 #define CONFIG_SYS_SDRAM_BASE 0 109 #define CONFIG_SYS_SDRAM_BASE 0
110 #define CONFIG_SYS_SDRAM_SIZE (128 << 20) 110 #define CONFIG_SYS_SDRAM_SIZE (128 << 20)
111 #define CONFIG_SYS_TEXT_BASE 0 111 #define CONFIG_SYS_TEXT_BASE 0
112 #define CONFIG_SYS_MONITOR_BASE 0 112 #define CONFIG_SYS_MONITOR_BASE 0
113 #define CONFIG_NR_DRAM_BANKS 1 113 #define CONFIG_NR_DRAM_BANKS 1
114 114
115 #define CONFIG_BAUDRATE 115200 115 #define CONFIG_BAUDRATE 115200
116 #define CONFIG_SYS_BAUDRATE_TABLE {4800, 9600, 19200, 38400, 57600,\ 116 #define CONFIG_SYS_BAUDRATE_TABLE {4800, 9600, 19200, 38400, 57600,\
117 115200} 117 115200}
118 #define CONFIG_SANDBOX_SERIAL 118 #define CONFIG_SANDBOX_SERIAL
119 119
120 #define CONFIG_SYS_NO_FLASH 120 #define CONFIG_SYS_NO_FLASH
121 121
122 /* include default commands */ 122 /* include default commands */
123 #include <config_cmd_default.h> 123 #include <config_cmd_default.h>
124 124
125 /* We don't have networking support yet */ 125 /* We don't have networking support yet */
126 #undef CONFIG_CMD_NET 126 #undef CONFIG_CMD_NET
127 #undef CONFIG_CMD_NFS 127 #undef CONFIG_CMD_NFS
128 128
129 #define CONFIG_CMD_HASH 129 #define CONFIG_CMD_HASH
130 #define CONFIG_HASH_VERIFY 130 #define CONFIG_HASH_VERIFY
131 #define CONFIG_SHA1 131 #define CONFIG_SHA1
132 #define CONFIG_SHA256 132 #define CONFIG_SHA256
133 133
134 #define CONFIG_TPM_TIS_SANDBOX 134 #define CONFIG_TPM_TIS_SANDBOX
135 135
136 #define CONFIG_CMD_SANDBOX 136 #define CONFIG_CMD_SANDBOX
137 137
138 #define CONFIG_BOOTARGS "" 138 #define CONFIG_BOOTARGS ""
139 139
140 #define CONFIG_CROS_EC 140 #define CONFIG_CROS_EC
141 #define CONFIG_CMD_CROS_EC 141 #define CONFIG_CMD_CROS_EC
142 #define CONFIG_CROS_EC_SANDBOX 142 #define CONFIG_CROS_EC_SANDBOX
143 #define CONFIG_KEYBOARD
144 #define CONFIG_CROS_EC_KEYB
145 #define CONFIG_ARCH_EARLY_INIT_R 143 #define CONFIG_ARCH_EARLY_INIT_R
146 #define CONFIG_BOARD_LATE_INIT 144 #define CONFIG_BOARD_LATE_INIT
147 145
148 #define CONFIG_SOUND 146 #define CONFIG_SOUND
149 #define CONFIG_SOUND_SANDBOX 147 #define CONFIG_SOUND_SANDBOX
150 #define CONFIG_CMD_SOUND 148 #define CONFIG_CMD_SOUND
151 149
150 #ifndef SANDBOX_NO_SDL
152 #define CONFIG_SANDBOX_SDL 151 #define CONFIG_SANDBOX_SDL
152 #endif
153
154 /* LCD and keyboard require SDL support */
155 #ifdef CONFIG_SANDBOX_SDL
153 #define CONFIG_LCD 156 #define CONFIG_LCD
154 #define CONFIG_VIDEO_SANDBOX_SDL 157 #define CONFIG_VIDEO_SANDBOX_SDL
155 #define CONFIG_CMD_BMP 158 #define CONFIG_CMD_BMP
156 #define CONFIG_BOARD_EARLY_INIT_F 159 #define CONFIG_BOARD_EARLY_INIT_F
157 #define CONFIG_CONSOLE_MUX 160 #define CONFIG_CONSOLE_MUX
158 #define CONFIG_SYS_CONSOLE_IS_IN_ENV 161 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
159 #define LCD_BPP LCD_COLOR16 162 #define LCD_BPP LCD_COLOR16
160 163
164 #define CONFIG_CROS_EC_KEYB
165 #define CONFIG_KEYBOARD
166
161 #define CONFIG_EXTRA_ENV_SETTINGS "stdin=serial,cros-ec-keyb\0" \ 167 #define CONFIG_EXTRA_ENV_SETTINGS "stdin=serial,cros-ec-keyb\0" \
162 "stdout=serial,lcd\0" \ 168 "stdout=serial,lcd\0" \
163 "stderr=serial,lcd\0" 169 "stderr=serial,lcd\0"
170 #else
171
172 #define CONFIG_EXTRA_ENV_SETTINGS "stdin=serial\0" \
173 "stdout=serial,lcd\0" \
174 "stderr=serial,lcd\0"
175 #endif
164 176
165 #define CONFIG_GZIP_COMPRESSED 177 #define CONFIG_GZIP_COMPRESSED
166 #define CONFIG_BZIP2 178 #define CONFIG_BZIP2
167 #define CONFIG_LZO 179 #define CONFIG_LZO
168 #define CONFIG_LZMA 180 #define CONFIG_LZMA
169 181
170 #define CONFIG_TPM_TIS_SANDBOX 182 #define CONFIG_TPM_TIS_SANDBOX
171 183
172 #define CONFIG_CMD_LZMADEC 184 #define CONFIG_CMD_LZMADEC
173 185