Simon Glass | 867a6ac | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 1 | config EFI |
| 2 | bool "Support running U-Boot from EFI" |
| 3 | depends on X86 |
Simon Glass | 77dd7c6 | 2019-12-06 21:41:49 -0700 | [diff] [blame] | 4 | imply X86_TSC_READ_BASE |
Simon Glass | 867a6ac | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 5 | help |
| 6 | U-Boot can be started from EFI on certain platforms. This allows |
| 7 | EFI to perform most of the system init and then jump to U-Boot for |
| 8 | final system boot. Another option is to run U-Boot as an EFI |
| 9 | application, with U-Boot using EFI's drivers instead of its own. |
| 10 | |
| 11 | choice |
| 12 | prompt "Select EFI mode to use" |
| 13 | depends on X86 && EFI |
| 14 | |
| 15 | config EFI_APP |
| 16 | bool "Support running as an EFI application" |
| 17 | help |
| 18 | Build U-Boot as an application which can be started from EFI. This |
| 19 | is useful for examining a platform in the early stages of porting |
| 20 | U-Boot to it. It allows only very basic functionality, such as a |
| 21 | command prompt and memory and I/O functions. Use 'reset' to return |
| 22 | to EFI. |
| 23 | |
Simon Glass | 476476e | 2015-08-04 12:33:52 -0600 | [diff] [blame] | 24 | config EFI_STUB |
| 25 | bool "Support running as an EFI payload" |
| 26 | |
| 27 | endchoice |
| 28 | |
Simon Glass | 867a6ac | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 29 | config EFI_RAM_SIZE |
| 30 | hex "Amount of EFI RAM for U-Boot" |
| 31 | depends on EFI_APP |
| 32 | default 0x2000000 |
| 33 | help |
| 34 | Set the amount of EFI RAM which is claimed by U-Boot for its own |
| 35 | use. U-Boot allocates this from EFI on start-up (along with a few |
| 36 | other smaller amounts) and it can never be increased after that. |
| 37 | It is used as the RAM size in with U-Boot. |
| 38 | |
Simon Glass | 476476e | 2015-08-04 12:33:52 -0600 | [diff] [blame] | 39 | choice |
| 40 | prompt "EFI 32/64-bit selection" |
| 41 | depends on EFI_STUB |
| 42 | help |
| 43 | EFI does not support mixing 32-bit and 64-bit modes. This is a |
| 44 | significant problem because it means that you must build a stub with |
| 45 | the correct type for EFI to load it correctly. If you are using |
| 46 | 32-bit EFI, select 32-bit here, else select 64-bit. Failure to do |
| 47 | this may produce no error message - it just won't start! |
| 48 | |
| 49 | config EFI_STUB_32BIT |
| 50 | bool "Produce a stub for running with 32-bit EFI" |
| 51 | |
| 52 | config EFI_STUB_64BIT |
| 53 | bool "Produce a stub for running with 64-bit EFI" |
| 54 | |
Simon Glass | 867a6ac | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 55 | endchoice |