Ilias Apalodimas | 17aea46 | 2024-08-30 14:45:27 +0300 | [diff] [blame^] | 1 | menu "U-Boot as UEFI application" |
| 2 | depends on X86 |
| 3 | |
Simon Glass | 9539e69 | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 4 | config EFI |
| 5 | bool "Support running U-Boot from EFI" |
| 6 | depends on X86 |
Simon Glass | d3edd42 | 2019-12-06 21:41:49 -0700 | [diff] [blame] | 7 | imply X86_TSC_READ_BASE |
Simon Glass | 9539e69 | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 8 | help |
| 9 | U-Boot can be started from EFI on certain platforms. This allows |
| 10 | EFI to perform most of the system init and then jump to U-Boot for |
| 11 | final system boot. Another option is to run U-Boot as an EFI |
| 12 | application, with U-Boot using EFI's drivers instead of its own. |
| 13 | |
| 14 | choice |
| 15 | prompt "Select EFI mode to use" |
| 16 | depends on X86 && EFI |
| 17 | |
| 18 | config EFI_APP |
| 19 | bool "Support running as an EFI application" |
Heinrich Schuchardt | 013aabb | 2022-05-02 06:27:00 +0200 | [diff] [blame] | 20 | select CHARSET |
Simon Glass | 9539e69 | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 21 | help |
| 22 | Build U-Boot as an application which can be started from EFI. This |
| 23 | is useful for examining a platform in the early stages of porting |
| 24 | U-Boot to it. It allows only very basic functionality, such as a |
| 25 | command prompt and memory and I/O functions. Use 'reset' to return |
| 26 | to EFI. |
| 27 | |
Simon Glass | 63f581f | 2015-08-04 12:33:52 -0600 | [diff] [blame] | 28 | config EFI_STUB |
| 29 | bool "Support running as an EFI payload" |
| 30 | |
| 31 | endchoice |
| 32 | |
Simon Glass | 359a89d | 2021-11-03 21:09:06 -0600 | [diff] [blame] | 33 | choice |
| 34 | prompt "EFI app 32/64-bit selection" |
Simon Glass | 9539e69 | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 35 | depends on EFI_APP |
Simon Glass | 9539e69 | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 36 | help |
Simon Glass | 359a89d | 2021-11-03 21:09:06 -0600 | [diff] [blame] | 37 | EFI does not support mixing 32-bit and 64-bit modes. This is a |
| 38 | significant problem because it means that you must build a stub with |
| 39 | the correct type for EFI to load it correctly. If you are using |
| 40 | 32-bit EFI, select 32-bit here, else select 64-bit. Failure to do |
| 41 | this may produce no error message - it just won't start! |
| 42 | |
| 43 | config EFI_APP_32BIT |
| 44 | bool "Produce an app for running with 32-bit EFI" |
| 45 | |
| 46 | config EFI_APP_64BIT |
| 47 | bool "Produce an app for running with 64-bit EFI" |
| 48 | |
| 49 | endchoice |
Simon Glass | 9539e69 | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 50 | |
Simon Glass | 63f581f | 2015-08-04 12:33:52 -0600 | [diff] [blame] | 51 | choice |
Simon Glass | 359a89d | 2021-11-03 21:09:06 -0600 | [diff] [blame] | 52 | prompt "EFI stub 32/64-bit selection" |
Simon Glass | 63f581f | 2015-08-04 12:33:52 -0600 | [diff] [blame] | 53 | depends on EFI_STUB |
| 54 | help |
| 55 | EFI does not support mixing 32-bit and 64-bit modes. This is a |
| 56 | significant problem because it means that you must build a stub with |
| 57 | the correct type for EFI to load it correctly. If you are using |
| 58 | 32-bit EFI, select 32-bit here, else select 64-bit. Failure to do |
| 59 | this may produce no error message - it just won't start! |
| 60 | |
| 61 | config EFI_STUB_32BIT |
| 62 | bool "Produce a stub for running with 32-bit EFI" |
| 63 | |
| 64 | config EFI_STUB_64BIT |
| 65 | bool "Produce a stub for running with 64-bit EFI" |
| 66 | |
Simon Glass | 9539e69 | 2015-07-31 09:31:36 -0600 | [diff] [blame] | 67 | endchoice |
Simon Glass | 359a89d | 2021-11-03 21:09:06 -0600 | [diff] [blame] | 68 | |
| 69 | config EFI_RAM_SIZE |
| 70 | hex "Amount of EFI RAM for U-Boot" |
| 71 | depends on EFI_APP |
| 72 | default 0x10000000 |
| 73 | help |
| 74 | Set the amount of EFI RAM which is claimed by U-Boot for its own |
| 75 | use. U-Boot allocates this from EFI on start-up (along with a few |
| 76 | other smaller amounts) and it can never be increased after that. |
| 77 | It is used as the RAM size in with U-Boot. |
Ilias Apalodimas | 17aea46 | 2024-08-30 14:45:27 +0300 | [diff] [blame^] | 78 | |
| 79 | endmenu |