Juan Manuel Cruz | d15251f | 2015-05-20 11:40:39 -0500 | [diff] [blame] | 1 | # Kconfig - general architecture configuration options |
| 2 | |
| 3 | # |
| 4 | # Copyright (c) 2014-2015 Wind River Systems, Inc. |
| 5 | # Copyright (c) 2015 Intel Corporation |
Mazen NEIFER | 1cded67 | 2017-01-13 12:14:33 +0100 | [diff] [blame] | 6 | # Copyright (c) 2016 Cadence Design Systems, Inc. |
Juan Manuel Cruz | d15251f | 2015-05-20 11:40:39 -0500 | [diff] [blame] | 7 | # |
David B. Kinder | ac74d8b | 2017-01-18 17:01:01 -0800 | [diff] [blame] | 8 | # SPDX-License-Identifier: Apache-2.0 |
Juan Manuel Cruz | d15251f | 2015-05-20 11:40:39 -0500 | [diff] [blame] | 9 | # |
| 10 | |
| 11 | |
Anas Nashif | 77ba3c3 | 2015-10-09 06:20:52 -0400 | [diff] [blame] | 12 | choice |
| 13 | prompt "Architecture" |
| 14 | default X86 |
| 15 | |
| 16 | config ARC |
| 17 | bool "ARC architecture" |
| 18 | |
| 19 | config ARM |
| 20 | bool "ARM architecture" |
| 21 | |
| 22 | config X86 |
| 23 | bool "x86 architecture" |
Andrew Boie | 6a1474e | 2016-07-15 13:15:00 -0700 | [diff] [blame] | 24 | select ATOMIC_OPERATIONS_BUILTIN |
Anas Nashif | 77ba3c3 | 2015-10-09 06:20:52 -0400 | [diff] [blame] | 25 | |
Andrew Boie | 9433895 | 2016-04-21 14:47:09 -0700 | [diff] [blame] | 26 | config NIOS2 |
| 27 | bool "Nios II Gen 2 architecture" |
Andrew Boie | 6a1474e | 2016-07-15 13:15:00 -0700 | [diff] [blame] | 28 | select ATOMIC_OPERATIONS_C |
Andrew Boie | 9433895 | 2016-04-21 14:47:09 -0700 | [diff] [blame] | 29 | |
Jean-Paul Etienne | cd83e85 | 2017-01-11 00:24:30 +0100 | [diff] [blame] | 30 | config RISCV32 |
| 31 | bool "RISCV32 architecture" |
| 32 | |
Mazen NEIFER | 1cded67 | 2017-01-13 12:14:33 +0100 | [diff] [blame] | 33 | config XTENSA |
| 34 | bool "Xtensa architecture" |
| 35 | |
Anas Nashif | 77ba3c3 | 2015-10-09 06:20:52 -0400 | [diff] [blame] | 36 | endchoice |
| 37 | |
Ramesh Thomas | bb19e6f | 2016-03-18 16:43:40 -0700 | [diff] [blame] | 38 | # |
| 39 | # Hidden PM feature configs which are to be selected by |
| 40 | # individual SoC. |
| 41 | # |
| 42 | config SYS_POWER_LOW_POWER_STATE_SUPPORTED |
| 43 | # Hidden |
Kumar Gala | 9ec2f3b | 2016-05-24 18:17:13 -0500 | [diff] [blame] | 44 | bool |
| 45 | default n |
| 46 | help |
| 47 | This option signifies that the target supports the SYS_POWER_LOW_POWER_STATE |
| 48 | configuration option. |
Ramesh Thomas | bb19e6f | 2016-03-18 16:43:40 -0700 | [diff] [blame] | 49 | |
| 50 | config SYS_POWER_DEEP_SLEEP_SUPPORTED |
| 51 | # Hidden |
Kumar Gala | 9ec2f3b | 2016-05-24 18:17:13 -0500 | [diff] [blame] | 52 | bool |
| 53 | default n |
| 54 | help |
| 55 | This option signifies that the target supports the SYS_POWER_DEEP_SLEEP |
| 56 | configuration option. |
Ramesh Thomas | a3dc53f | 2016-11-09 23:16:27 -0800 | [diff] [blame] | 57 | |
| 58 | config BOOTLOADER_CONTEXT_RESTORE_SUPPORTED |
| 59 | # Hidden |
| 60 | bool |
| 61 | default n |
| 62 | help |
| 63 | This option signifies that the target has options of bootloaders |
| 64 | that support context restore upon resume from deep sleep |
| 65 | |
Benjamin Walsh | 48db0b3 | 2016-12-14 15:16:32 -0500 | [diff] [blame] | 66 | config SIMPLE_FATAL_ERROR_HANDLER |
| 67 | prompt "Simple system fatal error handler" |
| 68 | bool |
| 69 | default n |
Benjamin Walsh | b12a8e0 | 2016-12-14 15:24:12 -0500 | [diff] [blame] | 70 | default y if !MULTITHREADING |
Benjamin Walsh | 48db0b3 | 2016-12-14 15:16:32 -0500 | [diff] [blame] | 71 | help |
| 72 | Provides an implementation of _SysFatalErrorHandler() that hard hangs |
| 73 | instead of aborting the faulting thread, and does not print anything, |
| 74 | for footprint-concerned systems. Only enable this option if you do not |
| 75 | want debug capabilities in case of system fatal error. |
| 76 | |
Ramesh Thomas | bb19e6f | 2016-03-18 16:43:40 -0700 | [diff] [blame] | 77 | # |
| 78 | # End hidden PM feature configs |
| 79 | # |
| 80 | |
Anas Nashif | 77ba3c3 | 2015-10-09 06:20:52 -0400 | [diff] [blame] | 81 | config ARCH |
| 82 | string |
| 83 | help |
| 84 | System architecture string. |
| 85 | |
| 86 | config SOC |
Anas Nashif | a02c34e | 2016-03-31 08:07:42 -0400 | [diff] [blame] | 87 | string |
| 88 | help |
| 89 | SoC name which can be found under arch/<arch>/soc/<soc name>. |
| 90 | This option holds the directory name used by the build system to locate |
| 91 | the correct linker and header files for the SoC. This option will go away |
| 92 | once all SoCs are using family/series structure. |
| 93 | |
| 94 | config SOC_SERIES |
| 95 | string |
| 96 | help |
| 97 | SoC series name which can be found under arch/<arch>/soc/<family>/<series>. |
| 98 | This option holds the directory name used by the build system to locate |
| 99 | the correct linker and header files. |
| 100 | |
| 101 | config SOC_FAMILY |
| 102 | string |
| 103 | help |
| 104 | SoC family name which can be found under arch/<arch>/soc/<family>. |
| 105 | This option holds the directory name used by the build system to locate |
| 106 | the correct linker and header files. |
Anas Nashif | 6623311 | 2015-11-29 19:47:21 -0500 | [diff] [blame] | 107 | |
Anas Nashif | 2d76224 | 2015-12-07 20:20:25 -0500 | [diff] [blame] | 108 | config BOARD |
| 109 | string |
| 110 | help |
David B. Kinder | 3561c73 | 2017-04-24 11:30:10 -0700 | [diff] [blame] | 111 | This option holds the name of the board and is used to locate the files |
Anas Nashif | a02c34e | 2016-03-31 08:07:42 -0400 | [diff] [blame] | 112 | related to the board in the source tree (under boards/). |
Andrew Boie | ff872dc | 2016-05-04 13:13:56 -0700 | [diff] [blame] | 113 | The Board is the first location where we search for a linker.ld file, |
Anas Nashif | a02c34e | 2016-03-31 08:07:42 -0400 | [diff] [blame] | 114 | if not found we look for the linker file in |
| 115 | arch/<arch>/soc/<family>/<series> |
Anas Nashif | 2d76224 | 2015-12-07 20:20:25 -0500 | [diff] [blame] | 116 | |
Andrew Boie | 1927b3d | 2017-02-08 17:16:29 -0800 | [diff] [blame] | 117 | # |
| 118 | # Interrupt related configs |
| 119 | # |
| 120 | |
| 121 | config GEN_ISR_TABLES |
| 122 | bool |
| 123 | prompt "Use generated IRQ tables" |
| 124 | default n |
| 125 | help |
| 126 | This option controls whether a platform uses the gen_isr_tables |
| 127 | script to generate its interrupt tables. This mechanism will create |
| 128 | an appropriate hardware vector table and/or software IRQ table. |
| 129 | |
| 130 | config GEN_IRQ_VECTOR_TABLE |
| 131 | bool |
| 132 | prompt "Generate an interrupt vector table" |
| 133 | default y |
| 134 | depends on GEN_ISR_TABLES |
| 135 | help |
| 136 | This option controls whether a platform using gen_isr_tables |
| 137 | needs an interrupt vector table created. Only disable this if the |
| 138 | platform does not use a vector table at all, or requires the vector |
| 139 | table to be in a format that is not an array of function pointers |
| 140 | indexed by IRQ line. In the latter case, the vector table must be |
| 141 | supplied by the application or architecture code. |
| 142 | |
| 143 | config GEN_SW_ISR_TABLE |
| 144 | bool |
| 145 | prompt "Generate a software ISR table" |
| 146 | default y |
| 147 | depends on GEN_ISR_TABLES |
| 148 | help |
| 149 | This option controls whether a platform using gen_isr_tables |
| 150 | needs a software ISR table table created. This is an array of struct |
| 151 | _isr_table_entry containing the interrupt service routine and supplied |
| 152 | parameter. |
| 153 | |
| 154 | config GEN_IRQ_START_VECTOR |
| 155 | int |
Andrew Boie | 1927b3d | 2017-02-08 17:16:29 -0800 | [diff] [blame] | 156 | default 0 |
| 157 | depends on GEN_ISR_TABLES |
| 158 | help |
| 159 | On some architectures, part of the vector table may be reserved for |
| 160 | system exceptions and is declared separately from the tables |
| 161 | created by gen_isr_tables.py. When creating these tables, this value |
| 162 | will be subtracted from CONFIG_NUM_IRQS to properly size them. |
David B. Kinder | 3561c73 | 2017-04-24 11:30:10 -0700 | [diff] [blame] | 163 | This is a hidden option which needs to be set per architecture and |
Andrew Boie | b2e136c | 2017-02-13 12:39:50 -0800 | [diff] [blame] | 164 | left alone. |
Andrew Boie | 1927b3d | 2017-02-08 17:16:29 -0800 | [diff] [blame] | 165 | |
Anas Nashif | 77ba3c3 | 2015-10-09 06:20:52 -0400 | [diff] [blame] | 166 | source "arch/*/Kconfig" |
Anas Nashif | fdb1daf | 2015-12-13 05:54:28 -0500 | [diff] [blame] | 167 | |
| 168 | source "boards/Kconfig" |