Tom Rini | e33610c | 2021-12-14 13:36:35 -0500 | [diff] [blame] | 1 | config ARCH_MAP_SYSMEM |
Tom Rini | 5332012 | 2022-04-06 09:21:25 -0400 | [diff] [blame] | 2 | depends on SANDBOX |
Tom Rini | e33610c | 2021-12-14 13:36:35 -0500 | [diff] [blame] | 3 | def_bool y |
| 4 | |
Masahiro Yamada | 5865450 | 2015-07-15 20:59:29 +0900 | [diff] [blame] | 5 | config CREATE_ARCH_SYMLINK |
| 6 | bool |
| 7 | |
Masahiro Yamada | 332b829 | 2016-06-28 10:48:42 +0900 | [diff] [blame] | 8 | config HAVE_ARCH_IOREMAP |
| 9 | bool |
| 10 | |
Tom Rini | 3ef67ae | 2021-08-26 11:47:59 -0400 | [diff] [blame] | 11 | config SYS_CACHE_SHIFT_4 |
| 12 | bool |
| 13 | |
| 14 | config SYS_CACHE_SHIFT_5 |
| 15 | bool |
| 16 | |
| 17 | config SYS_CACHE_SHIFT_6 |
| 18 | bool |
| 19 | |
| 20 | config SYS_CACHE_SHIFT_7 |
| 21 | bool |
| 22 | |
| 23 | config SYS_CACHELINE_SIZE |
| 24 | int |
| 25 | default 128 if SYS_CACHE_SHIFT_7 |
| 26 | default 64 if SYS_CACHE_SHIFT_6 |
| 27 | default 32 if SYS_CACHE_SHIFT_5 |
| 28 | default 16 if SYS_CACHE_SHIFT_4 |
| 29 | # Fall-back for MIPS |
| 30 | default 32 if MIPS |
| 31 | |
Simon Glass | b87153c | 2020-12-16 21:20:06 -0700 | [diff] [blame] | 32 | config LINKER_LIST_ALIGN |
| 33 | int |
| 34 | default 32 if SANDBOX |
| 35 | default 8 if ARM64 || X86 |
| 36 | default 4 |
| 37 | help |
| 38 | Force the each linker list to be aligned to this boundary. This |
| 39 | is required if ll_entry_get() is used, since otherwise the linker |
| 40 | may add padding into the table, thus breaking it. |
| 41 | See linker_lists.rst for full details. |
| 42 | |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 43 | choice |
| 44 | prompt "Architecture select" |
| 45 | default SANDBOX |
| 46 | |
| 47 | config ARC |
| 48 | bool "ARC architecture" |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 49 | select ARC_TIMER |
Vlad Zakharov | a465df7 | 2017-03-21 14:49:49 +0300 | [diff] [blame] | 50 | select CLK |
Michal Simek | d5d59bd | 2020-08-19 10:44:20 +0200 | [diff] [blame] | 51 | select DM |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 52 | select HAVE_PRIVATE_LIBGCC |
| 53 | select SUPPORT_OF_CONTROL |
Tom Rini | 3ef67ae | 2021-08-26 11:47:59 -0400 | [diff] [blame] | 54 | select SYS_CACHE_SHIFT_7 |
Vlad Zakharov | a465df7 | 2017-03-21 14:49:49 +0300 | [diff] [blame] | 55 | select TIMER |
Tom Rini | 7b7e0ad | 2022-07-31 21:08:23 -0400 | [diff] [blame] | 56 | select SYS_BIG_ENDIAN if CPU_BIG_ENDIAN |
| 57 | select SYS_LITTLE_ENDIAN if !CPU_BIG_ENDIAN |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 58 | |
| 59 | config ARM |
| 60 | bool "ARM architecture" |
Marek Behún | 4778a58 | 2021-05-20 13:24:22 +0200 | [diff] [blame] | 61 | select ARCH_SUPPORTS_LTO |
Masahiro Yamada | 5865450 | 2015-07-15 20:59:29 +0900 | [diff] [blame] | 62 | select CREATE_ARCH_SYMLINK |
Masahiro Yamada | 0628059 | 2015-07-03 16:13:09 +0900 | [diff] [blame] | 63 | select HAVE_PRIVATE_LIBGCC if !ARM64 |
Simon Glass | e170f68 | 2021-12-01 09:02:38 -0700 | [diff] [blame] | 64 | select SUPPORT_ACPI |
Masahiro Yamada | 9fadbc8 | 2014-09-22 19:59:05 +0900 | [diff] [blame] | 65 | select SUPPORT_OF_CONTROL |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 66 | |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 67 | config M68K |
| 68 | bool "M68000 architecture" |
angelo@sysam.it | 5e79817 | 2015-12-06 17:47:59 +0100 | [diff] [blame] | 69 | select HAVE_PRIVATE_LIBGCC |
Angelo Dureghello | 6000ebc | 2023-02-07 23:45:03 +0100 | [diff] [blame] | 70 | select USE_PRIVATE_LIBGCC |
Derald D. Woods | eb730bd | 2018-01-22 17:17:10 -0600 | [diff] [blame] | 71 | select SYS_BOOT_GET_CMDLINE |
| 72 | select SYS_BOOT_GET_KBD |
Tom Rini | 3ef67ae | 2021-08-26 11:47:59 -0400 | [diff] [blame] | 73 | select SYS_CACHE_SHIFT_4 |
Angelo Dureghello | e007b15 | 2019-03-13 21:46:51 +0100 | [diff] [blame] | 74 | select SUPPORT_OF_CONTROL |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 75 | |
| 76 | config MICROBLAZE |
| 77 | bool "MicroBlaze architecture" |
Masahiro Yamada | 9fadbc8 | 2014-09-22 19:59:05 +0900 | [diff] [blame] | 78 | select SUPPORT_OF_CONTROL |
Michal Simek | e8e5277 | 2022-06-24 14:16:32 +0200 | [diff] [blame] | 79 | imply CMD_TIMER |
| 80 | imply SPL_REGMAP if SPL |
| 81 | imply SPL_TIMER if SPL |
| 82 | imply TIMER |
| 83 | imply XILINX_TIMER |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 84 | |
| 85 | config MIPS |
| 86 | bool "MIPS architecture" |
Masahiro Yamada | 332b829 | 2016-06-28 10:48:42 +0900 | [diff] [blame] | 87 | select HAVE_ARCH_IOREMAP |
Masahiro Yamada | 9520b71 | 2014-10-24 01:30:43 +0900 | [diff] [blame] | 88 | select HAVE_PRIVATE_LIBGCC |
Daniel Schwierzeck | de5b6e2 | 2015-12-19 20:20:48 +0100 | [diff] [blame] | 89 | select SUPPORT_OF_CONTROL |
Sean Anderson | 13871e1 | 2022-04-12 10:59:04 -0400 | [diff] [blame] | 90 | select SPL_SEPARATE_BSS if SPL |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 91 | |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 92 | config NIOS2 |
| 93 | bool "Nios II architecture" |
Thomas Chou | c617026 | 2015-10-21 21:34:57 +0800 | [diff] [blame] | 94 | select CPU |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 95 | select DM |
Tom Rini | 7d3684a | 2023-01-16 15:46:49 -0500 | [diff] [blame] | 96 | select DM_EVENT |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 97 | select OF_CONTROL |
| 98 | select SUPPORT_OF_CONTROL |
Michal Simek | 2e7c819 | 2018-07-23 15:55:14 +0200 | [diff] [blame] | 99 | imply CMD_DM |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 100 | |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 101 | config PPC |
| 102 | bool "PowerPC architecture" |
Masahiro Yamada | 9520b71 | 2014-10-24 01:30:43 +0900 | [diff] [blame] | 103 | select HAVE_PRIVATE_LIBGCC |
Simon Glass | 90f83c8 | 2015-02-07 11:51:35 -0700 | [diff] [blame] | 104 | select SUPPORT_OF_CONTROL |
Derald D. Woods | eb730bd | 2018-01-22 17:17:10 -0600 | [diff] [blame] | 105 | select SYS_BOOT_GET_CMDLINE |
| 106 | select SYS_BOOT_GET_KBD |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 107 | |
Rick Chen | 3301bfc | 2017-12-26 13:55:58 +0800 | [diff] [blame] | 108 | config RISCV |
Bin Meng | 6b69775 | 2018-09-26 06:55:06 -0700 | [diff] [blame] | 109 | bool "RISC-V architecture" |
Anup Patel | 0af3e85 | 2019-02-25 08:14:04 +0000 | [diff] [blame] | 110 | select CREATE_ARCH_SYMLINK |
Heinrich Schuchardt | 934addc | 2023-12-19 16:04:06 +0100 | [diff] [blame] | 111 | select SUPPORT_ACPI |
Rick Chen | 3301bfc | 2017-12-26 13:55:58 +0800 | [diff] [blame] | 112 | select SUPPORT_OF_CONTROL |
Bin Meng | a760eba | 2018-09-26 06:55:19 -0700 | [diff] [blame] | 113 | select OF_CONTROL |
| 114 | select DM |
Tom Rini | 7d3684a | 2023-01-16 15:46:49 -0500 | [diff] [blame] | 115 | select DM_EVENT |
Zong Li | 324463e | 2022-11-16 07:08:39 +0000 | [diff] [blame] | 116 | imply SPL_SEPARATE_BSS if SPL |
Bin Meng | 3880c38 | 2018-09-26 06:55:20 -0700 | [diff] [blame] | 117 | imply DM_SERIAL |
Bin Meng | 3880c38 | 2018-09-26 06:55:20 -0700 | [diff] [blame] | 118 | imply DM_MMC |
| 119 | imply DM_SPI |
| 120 | imply DM_SPI_FLASH |
| 121 | imply BLK |
| 122 | imply CLK |
| 123 | imply MTD |
| 124 | imply TIMER |
Bin Meng | a760eba | 2018-09-26 06:55:19 -0700 | [diff] [blame] | 125 | imply CMD_DM |
Lukas Auer | 396f0bd | 2019-08-21 21:14:45 +0200 | [diff] [blame] | 126 | imply SPL_DM |
| 127 | imply SPL_OF_CONTROL |
| 128 | imply SPL_LIBCOMMON_SUPPORT |
| 129 | imply SPL_LIBGENERIC_SUPPORT |
Simon Glass | f4d6039 | 2021-08-08 12:20:12 -0600 | [diff] [blame] | 130 | imply SPL_SERIAL |
Lukas Auer | 396f0bd | 2019-08-21 21:14:45 +0200 | [diff] [blame] | 131 | imply SPL_TIMER |
Rick Chen | 3301bfc | 2017-12-26 13:55:58 +0800 | [diff] [blame] | 132 | |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 133 | config SANDBOX |
| 134 | bool "Sandbox" |
Marek Behún | 7243493 | 2021-05-20 13:24:07 +0200 | [diff] [blame] | 135 | select ARCH_SUPPORTS_LTO |
Tom Rini | 22d567e | 2017-01-22 19:43:11 -0500 | [diff] [blame] | 136 | select BOARD_LATE_INIT |
Michael Walle | 8ffe86c | 2020-05-22 14:07:38 +0200 | [diff] [blame] | 137 | select BZIP2 |
Simon Glass | c13bbdc | 2023-10-26 14:31:34 -0400 | [diff] [blame] | 138 | select CMD_POWEROFF if CMDLINE |
Masahiro Yamada | 5ef5ccc | 2015-03-31 12:47:53 +0900 | [diff] [blame] | 139 | select DM |
Tom Rini | 7d3684a | 2023-01-16 15:46:49 -0500 | [diff] [blame] | 140 | select DM_EVENT |
Andrew Scull | 451b8b1 | 2022-05-30 10:00:12 +0000 | [diff] [blame] | 141 | select DM_FUZZING_ENGINE |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 142 | select DM_GPIO |
| 143 | select DM_I2C |
Masahiro Yamada | b11b235 | 2016-09-08 18:47:35 +0900 | [diff] [blame] | 144 | select DM_KEYBOARD |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 145 | select DM_MMC |
Masahiro Yamada | 5ef5ccc | 2015-03-31 12:47:53 +0900 | [diff] [blame] | 146 | select DM_SERIAL |
Masahiro Yamada | 5ef5ccc | 2015-03-31 12:47:53 +0900 | [diff] [blame] | 147 | select DM_SPI |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 148 | select DM_SPI_FLASH |
Michael Walle | 8ffe86c | 2020-05-22 14:07:38 +0200 | [diff] [blame] | 149 | select GZIP_COMPRESSED |
Tom Rini | 6a4a908 | 2022-11-19 18:45:23 -0500 | [diff] [blame] | 150 | select IO_TRACE |
Tom Rini | c20bb73 | 2017-07-22 18:36:16 -0400 | [diff] [blame] | 151 | select LZO |
Tom Rini | ddb1ec1 | 2024-01-10 13:46:10 -0500 | [diff] [blame] | 152 | select MTD |
Heinrich Schuchardt | a3fc9a4 | 2020-03-14 12:13:40 +0100 | [diff] [blame] | 153 | select OF_BOARD_SETUP |
Ramon Fried | c64f19b | 2019-04-27 11:15:23 +0300 | [diff] [blame] | 154 | select PCI_ENDPOINT |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 155 | select SPI |
| 156 | select SUPPORT_OF_CONTROL |
Simon Glass | c13bbdc | 2023-10-26 14:31:34 -0400 | [diff] [blame] | 157 | select SYSRESET_CMD_POWEROFF if CMD_POWEROFF |
Tom Rini | 3ef67ae | 2021-08-26 11:47:59 -0400 | [diff] [blame] | 158 | select SYS_CACHE_SHIFT_4 |
Wasim Khan | 4dab60b | 2021-03-08 16:48:16 +0100 | [diff] [blame] | 159 | select IRQ |
Simon Glass | c13bbdc | 2023-10-26 14:31:34 -0400 | [diff] [blame] | 160 | select SUPPORT_EXTENSION_SCAN if CMDLINE |
Simon Glass | a6cee93 | 2021-12-01 09:02:36 -0700 | [diff] [blame] | 161 | select SUPPORT_ACPI |
Bin Meng | 0c0d9b0 | 2018-08-02 23:58:03 -0700 | [diff] [blame] | 162 | imply BITREVERSE |
Simon Glass | 78b0ef5 | 2018-11-15 18:43:53 -0700 | [diff] [blame] | 163 | select BLOBLIST |
Marek Behún | f8bd43f | 2021-05-20 13:24:08 +0200 | [diff] [blame] | 164 | imply LTO |
Michal Simek | 2e7c819 | 2018-07-23 15:55:14 +0200 | [diff] [blame] | 165 | imply CMD_DM |
Heinrich Schuchardt | 0e29873 | 2020-11-12 00:29:59 +0100 | [diff] [blame] | 166 | imply CMD_EXCEPTION |
Simon Glass | f4cb474 | 2017-05-17 03:25:44 -0600 | [diff] [blame] | 167 | imply CMD_GETTIME |
Simon Glass | 027608e | 2017-05-17 03:25:25 -0600 | [diff] [blame] | 168 | imply CMD_HASH |
Simon Glass | 3bebbe6 | 2017-05-17 03:25:34 -0600 | [diff] [blame] | 169 | imply CMD_IO |
Simon Glass | 30daabc | 2017-05-17 03:25:36 -0600 | [diff] [blame] | 170 | imply CMD_IOTRACE |
Simon Glass | becaa8f | 2017-05-17 03:25:43 -0600 | [diff] [blame] | 171 | imply CMD_LZMADEC |
Tom Rini | e5289a7 | 2019-05-29 17:01:28 -0400 | [diff] [blame] | 172 | imply CMD_SF |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 173 | imply CMD_SF_TEST |
Tom Rini | d8532af | 2017-06-02 11:03:50 -0400 | [diff] [blame] | 174 | imply CRC32_VERIFY |
| 175 | imply FAT_WRITE |
Rajan Vaja | b3b2ddb | 2018-09-19 03:43:46 -0700 | [diff] [blame] | 176 | imply FIRMWARE |
Andrew Scull | 451b8b1 | 2022-05-30 10:00:12 +0000 | [diff] [blame] | 177 | imply FUZZING_ENGINE_SANDBOX |
Daniel Thompson | a9e2c67 | 2017-05-19 17:26:58 +0100 | [diff] [blame] | 178 | imply HASH_VERIFY |
Tom Rini | d8532af | 2017-06-02 11:03:50 -0400 | [diff] [blame] | 179 | imply LZMA |
Jens Wiklander | dca252d | 2018-09-25 16:40:17 +0200 | [diff] [blame] | 180 | imply TEE |
Jens Wiklander | f1edae9 | 2018-09-25 16:40:23 +0200 | [diff] [blame] | 181 | imply AVB_VERIFY |
| 182 | imply LIBAVB |
| 183 | imply CMD_AVB |
Heinrich Schuchardt | ce33bcd | 2022-01-16 13:04:06 +0100 | [diff] [blame] | 184 | imply PARTITION_TYPE_GUID |
Igor Opaniuk | 623369c | 2021-02-14 16:27:27 +0100 | [diff] [blame] | 185 | imply SCP03 |
| 186 | imply CMD_SCP03 |
Jens Wiklander | f1edae9 | 2018-09-25 16:40:23 +0200 | [diff] [blame] | 187 | imply UDP_FUNCTION_FASTBOOT |
Bin Meng | 1bb290d | 2018-10-15 02:21:26 -0700 | [diff] [blame] | 188 | imply VIRTIO_MMIO |
| 189 | imply VIRTIO_PCI |
| 190 | imply VIRTIO_SANDBOX |
| 191 | imply VIRTIO_BLK |
| 192 | imply VIRTIO_NET |
Simon Glass | 799b29b | 2018-12-10 10:37:31 -0700 | [diff] [blame] | 193 | imply DM_SOUND |
Ramon Fried | c64f19b | 2019-04-27 11:15:23 +0300 | [diff] [blame] | 194 | imply PCI_SANDBOX_EP |
Simon Glass | 98d88f8 | 2019-02-16 20:24:49 -0700 | [diff] [blame] | 195 | imply PCH |
Alex Marginean | 0daa53a | 2019-06-03 19:12:28 +0300 | [diff] [blame] | 196 | imply PHYLIB |
| 197 | imply DM_MDIO |
Alex Marginean | 0649be5 | 2019-07-12 10:13:53 +0300 | [diff] [blame] | 198 | imply DM_MDIO_MUX |
Simon Glass | e264be4 | 2023-05-04 16:54:57 -0600 | [diff] [blame] | 199 | imply ACPI |
Simon Glass | 8c50102 | 2019-12-06 21:41:54 -0700 | [diff] [blame] | 200 | imply ACPI_PMC |
| 201 | imply ACPI_PMC_SANDBOX |
| 202 | imply CMD_PMC |
John Chau | fce6f98 | 2020-07-02 12:01:21 +0800 | [diff] [blame] | 203 | imply CMD_CLONE |
Simon Glass | 07a8886 | 2020-11-05 10:33:38 -0700 | [diff] [blame] | 204 | imply SILENT_CONSOLE |
Simon Glass | 529e208 | 2020-11-05 10:33:48 -0700 | [diff] [blame] | 205 | imply BOOTARGS_SUBST |
Claudiu Manoil | d9eaa92 | 2021-03-14 20:14:57 +0800 | [diff] [blame] | 206 | imply PHY_FIXED |
| 207 | imply DM_DSA |
Kory Maincent | 965a34f | 2021-05-04 19:31:23 +0200 | [diff] [blame] | 208 | imply CMD_EXTENSION |
Simon Glass | 278efc68 | 2021-11-24 09:26:44 -0700 | [diff] [blame] | 209 | imply KEYBOARD |
Simon Glass | ef9e762 | 2021-11-24 09:26:42 -0700 | [diff] [blame] | 210 | imply PHYSMEM |
Simon Glass | 29e64b5 | 2021-12-01 09:02:43 -0700 | [diff] [blame] | 211 | imply GENERATE_ACPI_TABLE |
Philippe Reynes | 462d163 | 2022-03-28 22:56:53 +0200 | [diff] [blame] | 212 | imply BINMAN |
Alexander Gendin | 038cb02 | 2023-10-09 01:24:36 +0000 | [diff] [blame] | 213 | imply CMD_MBR |
| 214 | imply CMD_MMC |
Simon Glass | b1dee9e | 2023-10-26 14:31:33 -0400 | [diff] [blame] | 215 | imply BOOTSTD_DEFAULTS if BOOTSTD_FULL && CMDLINE |
| 216 | imply BOOTMETH_DISTRO if BOOTSTD_FULL && CMDLINE |
| 217 | imply CMD_SYSBOOT if BOOTSTD_FULL |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 218 | |
| 219 | config SH |
| 220 | bool "SuperH architecture" |
Masahiro Yamada | 9520b71 | 2014-10-24 01:30:43 +0900 | [diff] [blame] | 221 | select HAVE_PRIVATE_LIBGCC |
Marek Vasut | 8fc9fa1 | 2019-08-31 18:27:58 +0200 | [diff] [blame] | 222 | select SUPPORT_OF_CONTROL |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 223 | |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 224 | config X86 |
| 225 | bool "x86 architecture" |
Simon Glass | c9ae1ae | 2019-04-25 21:58:45 -0600 | [diff] [blame] | 226 | select SUPPORT_SPL |
| 227 | select SUPPORT_TPL |
Masahiro Yamada | 5865450 | 2015-07-15 20:59:29 +0900 | [diff] [blame] | 228 | select CREATE_ARCH_SYMLINK |
Masahiro Yamada | 5ef5ccc | 2015-03-31 12:47:53 +0900 | [diff] [blame] | 229 | select DM |
Bin Meng | 59c4aa4 | 2018-10-15 02:21:16 -0700 | [diff] [blame] | 230 | select HAVE_ARCH_IOMAP |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 231 | select HAVE_PRIVATE_LIBGCC |
| 232 | select OF_CONTROL |
Bin Meng | 0e0204d | 2017-07-30 06:23:16 -0700 | [diff] [blame] | 233 | select PCI |
Simon Glass | a6cee93 | 2021-12-01 09:02:36 -0700 | [diff] [blame] | 234 | select SUPPORT_ACPI |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 235 | select SUPPORT_OF_CONTROL |
Tom Rini | 3ef67ae | 2021-08-26 11:47:59 -0400 | [diff] [blame] | 236 | select SYS_CACHE_SHIFT_6 |
Bin Meng | f0e1c3e | 2017-07-30 06:23:07 -0700 | [diff] [blame] | 237 | select TIMER |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 238 | select USE_PRIVATE_LIBGCC |
Bin Meng | f0e1c3e | 2017-07-30 06:23:07 -0700 | [diff] [blame] | 239 | select X86_TSC_TIMER |
Wasim Khan | 4a7fef7 | 2021-03-08 16:48:15 +0100 | [diff] [blame] | 240 | select IRQ |
Simon Glass | f69c009 | 2020-07-19 13:55:52 -0600 | [diff] [blame] | 241 | imply HAS_ROM if X86_RESET_VECTOR |
Bin Meng | 73f5bc1 | 2017-07-30 19:24:02 -0700 | [diff] [blame] | 242 | imply BLK |
Michal Simek | 2e7c819 | 2018-07-23 15:55:14 +0200 | [diff] [blame] | 243 | imply CMD_DM |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 244 | imply CMD_FPGA_LOADMK |
| 245 | imply CMD_GETTIME |
| 246 | imply CMD_IO |
| 247 | imply CMD_IRQ |
| 248 | imply CMD_PCI |
Tom Rini | e5289a7 | 2019-05-29 17:01:28 -0400 | [diff] [blame] | 249 | imply CMD_SF |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 250 | imply CMD_SF_TEST |
| 251 | imply CMD_ZBOOT |
Bin Meng | 0e0204d | 2017-07-30 06:23:16 -0700 | [diff] [blame] | 252 | imply DM_GPIO |
| 253 | imply DM_KEYBOARD |
Simon Glass | 828b725 | 2017-07-30 19:24:01 -0700 | [diff] [blame] | 254 | imply DM_MMC |
Bin Meng | 0e0204d | 2017-07-30 06:23:16 -0700 | [diff] [blame] | 255 | imply DM_RTC |
Tom Rini | 15a2ab5 | 2023-10-27 20:59:51 -0400 | [diff] [blame] | 256 | imply SCSI |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 257 | imply DM_SERIAL |
Tom Rini | ddb1ec1 | 2024-01-10 13:46:10 -0500 | [diff] [blame] | 258 | imply MTD |
Bin Meng | 0e0204d | 2017-07-30 06:23:16 -0700 | [diff] [blame] | 259 | imply DM_SPI |
| 260 | imply DM_SPI_FLASH |
| 261 | imply DM_USB |
Simon Glass | 1cedca1 | 2023-08-21 21:17:01 -0600 | [diff] [blame] | 262 | imply LAST_STAGE_INIT |
Simon Glass | 52cb504 | 2022-10-18 07:46:31 -0600 | [diff] [blame] | 263 | imply VIDEO |
Bin Meng | af5b8d2 | 2018-07-19 03:07:33 -0700 | [diff] [blame] | 264 | imply SYSRESET |
Kever Yang | 525ea47 | 2019-04-02 20:41:25 +0800 | [diff] [blame] | 265 | imply SPL_SYSRESET |
Bin Meng | af5b8d2 | 2018-07-19 03:07:33 -0700 | [diff] [blame] | 266 | imply SYSRESET_X86 |
Chris Packham | b110e11 | 2017-08-28 20:50:46 +1200 | [diff] [blame] | 267 | imply USB_ETHER_ASIX |
| 268 | imply USB_ETHER_SMSC95XX |
Michal Simek | 84f3dec | 2018-07-23 15:55:13 +0200 | [diff] [blame] | 269 | imply USB_HOST_ETHER |
Simon Glass | 98d88f8 | 2019-02-16 20:24:49 -0700 | [diff] [blame] | 270 | imply PCH |
Simon Glass | ef9e762 | 2021-11-24 09:26:42 -0700 | [diff] [blame] | 271 | imply PHYSMEM |
Simon Glass | 56382fb | 2019-05-02 10:52:24 -0600 | [diff] [blame] | 272 | imply RTC_MC146818 |
Simon Glass | e264be4 | 2023-05-04 16:54:57 -0600 | [diff] [blame] | 273 | imply ACPI |
Simon Glass | b028228 | 2021-12-01 09:02:39 -0700 | [diff] [blame] | 274 | imply ACPIGEN if !QEMU && !EFI_APP |
Simon Glass | bee77f6 | 2020-11-05 06:32:17 -0700 | [diff] [blame] | 275 | imply SYSINFO if GENERATE_SMBIOS_TABLE |
| 276 | imply SYSINFO_SMBIOS if GENERATE_SMBIOS_TABLE |
Simon Glass | 65831d9 | 2021-12-18 11:27:50 -0700 | [diff] [blame] | 277 | imply TIMESTAMP |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 278 | |
Simon Glass | c9ae1ae | 2019-04-25 21:58:45 -0600 | [diff] [blame] | 279 | # Thing to enable for when SPL/TPL are enabled: SPL |
| 280 | imply SPL_DM |
| 281 | imply SPL_OF_LIBFDT |
Simon Glass | 284cb9c | 2021-07-10 21:14:31 -0600 | [diff] [blame] | 282 | imply SPL_DRIVERS_MISC |
Simon Glass | 035939e | 2021-07-10 21:14:30 -0600 | [diff] [blame] | 283 | imply SPL_GPIO |
Simon Glass | 7b1ecb8 | 2019-12-06 21:42:51 -0700 | [diff] [blame] | 284 | imply SPL_PINCTRL |
Simon Glass | c9ae1ae | 2019-04-25 21:58:45 -0600 | [diff] [blame] | 285 | imply SPL_LIBCOMMON_SUPPORT |
| 286 | imply SPL_LIBGENERIC_SUPPORT |
Simon Glass | f4d6039 | 2021-08-08 12:20:12 -0600 | [diff] [blame] | 287 | imply SPL_SERIAL |
Simon Glass | c9ae1ae | 2019-04-25 21:58:45 -0600 | [diff] [blame] | 288 | imply SPL_SPI_FLASH_SUPPORT |
Simon Glass | a582047 | 2021-08-08 12:20:14 -0600 | [diff] [blame] | 289 | imply SPL_SPI |
Simon Glass | c9ae1ae | 2019-04-25 21:58:45 -0600 | [diff] [blame] | 290 | imply SPL_OF_CONTROL |
| 291 | imply SPL_TIMER |
| 292 | imply SPL_REGMAP |
| 293 | imply SPL_SYSCON |
| 294 | # TPL |
| 295 | imply TPL_DM |
Simon Glass | 284cb9c | 2021-07-10 21:14:31 -0600 | [diff] [blame] | 296 | imply TPL_DRIVERS_MISC |
Simon Glass | 035939e | 2021-07-10 21:14:30 -0600 | [diff] [blame] | 297 | imply TPL_GPIO |
Simon Glass | 7b1ecb8 | 2019-12-06 21:42:51 -0700 | [diff] [blame] | 298 | imply TPL_PINCTRL |
Simon Glass | c9ae1ae | 2019-04-25 21:58:45 -0600 | [diff] [blame] | 299 | imply TPL_LIBCOMMON_SUPPORT |
| 300 | imply TPL_LIBGENERIC_SUPPORT |
Simon Glass | f4d6039 | 2021-08-08 12:20:12 -0600 | [diff] [blame] | 301 | imply TPL_SERIAL |
Simon Glass | c9ae1ae | 2019-04-25 21:58:45 -0600 | [diff] [blame] | 302 | imply TPL_OF_CONTROL |
| 303 | imply TPL_TIMER |
| 304 | imply TPL_REGMAP |
| 305 | imply TPL_SYSCON |
| 306 | |
Chris Zankel | 1387dab | 2016-08-10 18:36:44 +0300 | [diff] [blame] | 307 | config XTENSA |
| 308 | bool "Xtensa architecture" |
| 309 | select CREATE_ARCH_SYMLINK |
| 310 | select SUPPORT_OF_CONTROL |
| 311 | |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 312 | endchoice |
| 313 | |
Masahiro Yamada | 52a5f97 | 2014-09-14 03:01:48 +0900 | [diff] [blame] | 314 | config SYS_ARCH |
| 315 | string |
| 316 | help |
| 317 | This option should contain the architecture name to build the |
| 318 | appropriate arch/<CONFIG_SYS_ARCH> directory. |
| 319 | All the architectures should specify this option correctly. |
| 320 | |
| 321 | config SYS_CPU |
| 322 | string |
| 323 | help |
| 324 | This option should contain the CPU name to build the correct |
| 325 | arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU> directory. |
| 326 | |
| 327 | This is optional. For those targets without the CPU directory, |
| 328 | leave this option empty. |
| 329 | |
| 330 | config SYS_SOC |
| 331 | string |
| 332 | help |
| 333 | This option should contain the SoC name to build the directory |
| 334 | arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU>/<CONFIG_SYS_SOC>. |
| 335 | |
| 336 | This is optional. For those targets without the SoC directory, |
| 337 | leave this option empty. |
| 338 | |
| 339 | config SYS_VENDOR |
| 340 | string |
| 341 | help |
| 342 | This option should contain the vendor name of the target board. |
| 343 | If it is set and |
| 344 | board/<CONFIG_SYS_VENDOR>/common/Makefile exists, the vendor common |
| 345 | directory is compiled. |
| 346 | If CONFIG_SYS_BOARD is also set, the sources under |
| 347 | board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD> directory are compiled. |
| 348 | |
| 349 | This is optional. For those targets without the vendor directory, |
| 350 | leave this option empty. |
| 351 | |
| 352 | config SYS_BOARD |
| 353 | string |
| 354 | help |
| 355 | This option should contain the name of the target board. |
| 356 | If it is set, either board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD> |
| 357 | or board/<CONFIG_SYS_BOARD> directory is compiled depending on |
| 358 | whether CONFIG_SYS_VENDOR is set or not. |
| 359 | |
| 360 | This is optional. For those targets without the board directory, |
| 361 | leave this option empty. |
| 362 | |
| 363 | config SYS_CONFIG_NAME |
Tom Rini | bce01ee | 2024-01-22 17:39:20 -0500 | [diff] [blame] | 364 | string "Board header file" if ARCH_MESON || ARCH_VERSAL || \ |
| 365 | ARCH_VERSAL_NET || ARCH_ZYNQ || ARCH_ZYNQMP || \ |
| 366 | ARCH_ZYNQMP_R5 || MICROBLAZE || NIOS2 |
| 367 | default "meson64" if ARCH_MESON |
| 368 | default "microblaze-generic" if MICROBLAZE |
| 369 | default "xilinx_versal" if ARCH_VERSAL |
| 370 | default "xilinx_versal_net" if ARCH_VERSAL_NET |
| 371 | default "xilinx_zynqmp" if ARCH_ZYNQMP |
| 372 | default "xilinx_zynqmp_r5" if ARCH_ZYNQMP_R5 |
| 373 | default "zynq-common" if ARCH_ZYNQ |
Masahiro Yamada | 52a5f97 | 2014-09-14 03:01:48 +0900 | [diff] [blame] | 374 | help |
| 375 | This option should contain the base name of board header file. |
| 376 | The header file include/configs/<CONFIG_SYS_CONFIG_NAME>.h |
| 377 | should be included from include/config.h. |
| 378 | |
Vignesh Raghavendra | 384c141 | 2019-04-22 21:43:32 +0530 | [diff] [blame] | 379 | config SYS_DISABLE_DCACHE_OPS |
| 380 | bool |
| 381 | help |
| 382 | This option disables dcache flush and dcache invalidation |
| 383 | operations. For example, on coherent systems where cache |
| 384 | operatios are not required, enable this option to avoid them. |
| 385 | Note that, its up to the individual architectures to implement |
| 386 | this functionality. |
| 387 | |
Tom Rini | e9269a0 | 2021-12-12 22:12:30 -0500 | [diff] [blame] | 388 | config SYS_IMMR |
Tom Rini | 0c4dded | 2022-03-30 09:30:15 -0400 | [diff] [blame] | 389 | hex "Address for the Internal Memory-Mapped Registers (IMMR) window" |
Tom Rini | e9269a0 | 2021-12-12 22:12:30 -0500 | [diff] [blame] | 390 | depends on PPC || FSL_LSCH2 || FSL_LSCH3 || ARCH_LS1021A |
| 391 | default 0xFF000000 if MPC8xx |
| 392 | default 0xF0000000 if ARCH_MPC8313 |
| 393 | default 0xE0000000 if MPC83xx && !ARCH_MPC8313 |
| 394 | default 0x01000000 if ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3 |
Pali Rohár | c68991e | 2022-05-02 18:29:25 +0200 | [diff] [blame] | 395 | default 0xFFE00000 if ARCH_P1010 || ARCH_P1011 || ARCH_P1020 || \ |
| 396 | ARCH_P1021 || ARCH_P1024 || ARCH_P1025 || \ |
| 397 | ARCH_P2020 |
Tom Rini | e9269a0 | 2021-12-12 22:12:30 -0500 | [diff] [blame] | 398 | default SYS_CCSRBAR_DEFAULT |
| 399 | help |
| 400 | Address for the Internal Memory-Mapped Registers (IMMR) window used |
| 401 | to configure the features of many Freescale / NXP SoCs. |
| 402 | |
Tom Rini | b73cd90 | 2022-12-02 16:42:36 -0500 | [diff] [blame] | 403 | config MONITOR_IS_IN_RAM |
| 404 | bool "U-Boot is loaded in to RAM by a pre-loader" |
| 405 | depends on M68K || NIOS2 |
| 406 | |
Heinrich Schuchardt | e6e7cb6 | 2022-12-30 19:41:28 +0100 | [diff] [blame] | 407 | menu "Skipping low level initialization functions" |
Tom Rini | 5332012 | 2022-04-06 09:21:25 -0400 | [diff] [blame] | 408 | depends on ARM || MIPS || RISCV |
Heinrich Schuchardt | e6e7cb6 | 2022-12-30 19:41:28 +0100 | [diff] [blame] | 409 | |
| 410 | config SKIP_LOWLEVEL_INIT |
| 411 | bool "Skip calls to certain low level initialization functions" |
Tom Rini | e1e8544 | 2021-08-27 21:18:30 -0400 | [diff] [blame] | 412 | help |
| 413 | If enabled, then certain low level initializations (like setting up |
| 414 | the memory controller) are omitted and/or U-Boot does not relocate |
| 415 | itself into RAM. |
| 416 | Normally this variable MUST NOT be defined. The only exception is |
| 417 | when U-Boot is loaded (to RAM) by some other boot loader or by a |
| 418 | debugger which performs these initializations itself. |
| 419 | |
| 420 | config SPL_SKIP_LOWLEVEL_INIT |
Heinrich Schuchardt | e6e7cb6 | 2022-12-30 19:41:28 +0100 | [diff] [blame] | 421 | bool "Skip calls to certain low level initialization functions in SPL" |
| 422 | depends on SPL |
Tom Rini | e1e8544 | 2021-08-27 21:18:30 -0400 | [diff] [blame] | 423 | help |
| 424 | If enabled, then certain low level initializations (like setting up |
| 425 | the memory controller) are omitted and/or U-Boot does not relocate |
| 426 | itself into RAM. |
| 427 | Normally this variable MUST NOT be defined. The only exception is |
| 428 | when U-Boot is loaded (to RAM) by some other boot loader or by a |
| 429 | debugger which performs these initializations itself. |
| 430 | |
| 431 | config TPL_SKIP_LOWLEVEL_INIT |
Heinrich Schuchardt | e6e7cb6 | 2022-12-30 19:41:28 +0100 | [diff] [blame] | 432 | bool "Skip calls to certain low level initialization functions in TPL" |
Tom Rini | e1e8544 | 2021-08-27 21:18:30 -0400 | [diff] [blame] | 433 | depends on SPL && ARM |
| 434 | help |
| 435 | If enabled, then certain low level initializations (like setting up |
| 436 | the memory controller) are omitted and/or U-Boot does not relocate |
| 437 | itself into RAM. |
| 438 | Normally this variable MUST NOT be defined. The only exception is |
| 439 | when U-Boot is loaded (to RAM) by some other boot loader or by a |
| 440 | debugger which performs these initializations itself. |
| 441 | |
| 442 | config SKIP_LOWLEVEL_INIT_ONLY |
Heinrich Schuchardt | e6e7cb6 | 2022-12-30 19:41:28 +0100 | [diff] [blame] | 443 | bool "Skip call to lowlevel_init during early boot ONLY" |
Tom Rini | e1e8544 | 2021-08-27 21:18:30 -0400 | [diff] [blame] | 444 | depends on ARM |
| 445 | help |
| 446 | This allows just the call to lowlevel_init() to be skipped. The |
| 447 | normal CP15 init (such as enabling the instruction cache) is still |
| 448 | performed. |
| 449 | |
| 450 | config SPL_SKIP_LOWLEVEL_INIT_ONLY |
Heinrich Schuchardt | e6e7cb6 | 2022-12-30 19:41:28 +0100 | [diff] [blame] | 451 | bool "Skip call to lowlevel_init during early SPL boot ONLY" |
Tom Rini | e1e8544 | 2021-08-27 21:18:30 -0400 | [diff] [blame] | 452 | depends on SPL && ARM |
| 453 | help |
| 454 | This allows just the call to lowlevel_init() to be skipped. The |
| 455 | normal CP15 init (such as enabling the instruction cache) is still |
| 456 | performed. |
| 457 | |
| 458 | config TPL_SKIP_LOWLEVEL_INIT_ONLY |
Heinrich Schuchardt | e6e7cb6 | 2022-12-30 19:41:28 +0100 | [diff] [blame] | 459 | bool "Skip call to lowlevel_init during early TPL boot ONLY" |
Tom Rini | e1e8544 | 2021-08-27 21:18:30 -0400 | [diff] [blame] | 460 | depends on TPL && ARM |
| 461 | help |
| 462 | This allows just the call to lowlevel_init() to be skipped. The |
| 463 | normal CP15 init (such as enabling the instruction cache) is still |
| 464 | performed. |
| 465 | |
Heinrich Schuchardt | e6e7cb6 | 2022-12-30 19:41:28 +0100 | [diff] [blame] | 466 | endmenu |
| 467 | |
Tom Rini | 295ab16 | 2022-10-28 20:27:10 -0400 | [diff] [blame] | 468 | config SYS_HAS_NONCACHED_MEMORY |
| 469 | bool "Enable reserving a non-cached memory area for drivers" |
| 470 | depends on (ARM || MIPS) && (RTL8169 || MEDIATEK_ETH) |
| 471 | help |
| 472 | This is useful for drivers that would otherwise require a lot of |
| 473 | explicit cache maintenance. For some drivers it's also impossible to |
| 474 | properly maintain the cache. For example if the regions that need to |
| 475 | be flushed are not a multiple of the cache-line size, *and* padding |
| 476 | cannot be allocated between the regions to align them (i.e. if the |
| 477 | HW requires a contiguous array of regions, and the size of each |
| 478 | region is not cache-aligned), then a flush of one region may result |
| 479 | in overwriting data that hardware has written to another region in |
| 480 | the same cache-line. This can happen for example in network drivers |
| 481 | where descriptors for buffers are typically smaller than the CPU |
| 482 | cache-line (e.g. 16 bytes vs. 32 or 64 bytes). |
| 483 | |
| 484 | config SYS_NONCACHED_MEMORY |
| 485 | hex "Size in bytes of the non-cached memory area" |
| 486 | depends on SYS_HAS_NONCACHED_MEMORY |
| 487 | default 0x100000 |
| 488 | help |
| 489 | Size of non-cached memory area. This area of memory will be typically |
| 490 | located right below the malloc() area and mapped uncached in the MMU. |
| 491 | |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 492 | source "arch/arc/Kconfig" |
| 493 | source "arch/arm/Kconfig" |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 494 | source "arch/m68k/Kconfig" |
| 495 | source "arch/microblaze/Kconfig" |
| 496 | source "arch/mips/Kconfig" |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 497 | source "arch/nios2/Kconfig" |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 498 | source "arch/powerpc/Kconfig" |
| 499 | source "arch/sandbox/Kconfig" |
| 500 | source "arch/sh/Kconfig" |
Masahiro Yamada | 804bc5e | 2014-07-30 14:08:15 +0900 | [diff] [blame] | 501 | source "arch/x86/Kconfig" |
Chris Zankel | 1387dab | 2016-08-10 18:36:44 +0300 | [diff] [blame] | 502 | source "arch/xtensa/Kconfig" |
Rick Chen | 3301bfc | 2017-12-26 13:55:58 +0800 | [diff] [blame] | 503 | source "arch/riscv/Kconfig" |
Tom Rini | a67ff80 | 2022-03-23 17:19:55 -0400 | [diff] [blame] | 504 | |
Tom Rini | c4aecf6 | 2022-06-16 14:04:36 -0400 | [diff] [blame] | 505 | if ARM || M68K || PPC |
| 506 | |
| 507 | source "arch/Kconfig.nxp" |
| 508 | |
| 509 | endif |
| 510 | |
Tom Rini | a67ff80 | 2022-03-23 17:19:55 -0400 | [diff] [blame] | 511 | source "board/keymile/Kconfig" |
Michal Simek | 9599f8f | 2022-06-24 14:14:59 +0200 | [diff] [blame] | 512 | |
Michal Simek | 1a2f7b8 | 2022-06-24 14:14:59 +0200 | [diff] [blame] | 513 | if MIPS || MICROBLAZE |
Michal Simek | 9599f8f | 2022-06-24 14:14:59 +0200 | [diff] [blame] | 514 | |
| 515 | choice |
| 516 | prompt "Endianness selection" |
| 517 | help |
| 518 | Some MIPS boards can be configured for either little or big endian |
| 519 | byte order. These modes require different U-Boot images. In general there |
| 520 | is one preferred byteorder for a particular system but some systems are |
| 521 | just as commonly used in the one or the other endianness. |
| 522 | |
| 523 | config SYS_BIG_ENDIAN |
| 524 | bool "Big endian" |
Michal Simek | 1a2f7b8 | 2022-06-24 14:14:59 +0200 | [diff] [blame] | 525 | depends on (SUPPORTS_BIG_ENDIAN && MIPS) || MICROBLAZE |
Michal Simek | 9599f8f | 2022-06-24 14:14:59 +0200 | [diff] [blame] | 526 | |
| 527 | config SYS_LITTLE_ENDIAN |
| 528 | bool "Little endian" |
Michal Simek | 1a2f7b8 | 2022-06-24 14:14:59 +0200 | [diff] [blame] | 529 | depends on (SUPPORTS_LITTLE_ENDIAN && MIPS) || MICROBLAZE |
Michal Simek | 9599f8f | 2022-06-24 14:14:59 +0200 | [diff] [blame] | 530 | |
| 531 | endchoice |
| 532 | |
| 533 | endif |