From e66d1cb3c2344ee5bbf2059e75fa94350aea9f5f Mon Sep 17 00:00:00 2001 From: Krzysztof Kozlowski Date: Wed, 6 Mar 2019 19:37:54 +0100 Subject: regulator: Add support for ramp delay Changing voltage and enabling regulator might require delays so the regulator stabilizes at expected level. Add support for "regulator-ramp-delay" binding which can introduce required time to both enabling the regulator and to changing the voltage. Signed-off-by: Krzysztof Kozlowski Tested-by: Anand Moon Signed-off-by: Minkyu Kang --- doc/device-tree-bindings/regulator/regulator.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc') diff --git a/doc/device-tree-bindings/regulator/regulator.txt b/doc/device-tree-bindings/regulator/regulator.txt index 65b69c42789..4ba642b7c77 100644 --- a/doc/device-tree-bindings/regulator/regulator.txt +++ b/doc/device-tree-bindings/regulator/regulator.txt @@ -35,6 +35,7 @@ Optional properties: - regulator-max-microamp: a maximum allowed Current value - regulator-always-on: regulator should never be disabled - regulator-boot-on: enabled by bootloader/firmware +- regulator-ramp-delay: ramp delay for regulator (in uV/us) Note The "regulator-name" constraint is used for setting the device's uclass @@ -60,4 +61,5 @@ ldo0 { regulator-max-microamp = <100000>; regulator-always-on; regulator-boot-on; + regulator-ramp-delay = <12000>; }; -- cgit v1.3.1 From 17394f9a66e1b8caf2bb43419668dcd26e722ffe Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Wed, 27 Mar 2019 21:41:04 +0100 Subject: efi_loader: TODO for the EFI file protocol We currently only support EFI_FILE_PROTOCOL_REVISION while UEFI specs 2.4 - 2.7 prescribe EFI_FILE_PROTOCOL_REVISION2. Add a todo. Add missing constants for the EFI file protocol revision. Signed-off-by: Heinrich Schuchardt --- doc/README.uefi | 3 +++ include/efi_api.h | 8 +++++++- lib/efi_loader/efi_file.c | 4 ++++ 3 files changed, 14 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/README.uefi b/doc/README.uefi index 0982fad92e9..cda29cdcf75 100644 --- a/doc/README.uefi +++ b/doc/README.uefi @@ -329,6 +329,9 @@ This driver is only available if U-Boot is configured with * persistence * runtime support +* incompletely implemented protocols + * support version 0x00020000 of the EFI file protocol + ## Links * [1](http://uefi.org/specifications) diff --git a/include/efi_api.h b/include/efi_api.h index ccf608653d4..8647bfa6629 100644 --- a/include/efi_api.h +++ b/include/efi_api.h @@ -1322,7 +1322,9 @@ struct efi_pxe { #define EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_GUID \ EFI_GUID(0x964e5b22, 0x6459, 0x11d2, \ 0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b) -#define EFI_FILE_PROTOCOL_REVISION 0x00010000 +#define EFI_FILE_PROTOCOL_REVISION 0x00010000 +#define EFI_FILE_PROTOCOL_REVISION2 0x00020000 +#define EFI_FILE_PROTOCOL_LATEST_REVISION EFI_FILE_PROTOCOL_REVISION2 struct efi_file_handle { u64 rev; @@ -1346,6 +1348,10 @@ struct efi_file_handle { const efi_guid_t *info_type, efi_uintn_t buffer_size, void *buffer); efi_status_t (EFIAPI *flush)(struct efi_file_handle *file); + /* + * TODO: We currently only support EFI file protocol revision 0x00010000 + * while UEFI specs 2.4 - 2.7 prescribe revision 0x00020000. + */ }; #define EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_REVISION 0x00010000 diff --git a/lib/efi_loader/efi_file.c b/lib/efi_loader/efi_file.c index bc715218a1b..0483403be0d 100644 --- a/lib/efi_loader/efi_file.c +++ b/lib/efi_loader/efi_file.c @@ -628,6 +628,10 @@ static efi_status_t EFIAPI efi_file_flush(struct efi_file_handle *file) } static const struct efi_file_handle efi_file_handle_protocol = { + /* + * TODO: We currently only support EFI file protocol revision 0x00010000 + * while UEFI specs 2.4 - 2.7 prescribe revision 0x00020000. + */ .rev = EFI_FILE_PROTOCOL_REVISION, .open = efi_file_open, .close = efi_file_close, -- cgit v1.3.1 From 98dc26016837447ae8e3e943418af5c8bdab7c43 Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Wed, 27 Mar 2019 22:02:30 +0100 Subject: efi_loader: update TODOs in doc/README.uefi The following TODOs are closed: - GetNextVariableName is not implemented - event groups - manage events in a linked list Signed-off-by: Heinrich Schuchardt --- doc/README.uefi | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/README.uefi b/doc/README.uefi index cda29cdcf75..b38efbc0cc3 100644 --- a/doc/README.uefi +++ b/doc/README.uefi @@ -299,7 +299,7 @@ This driver is only available if U-Boot is configured with CONFIG_BLK=y CONFIG_PARTITIONS=y -## TODOs as of U-Boot 2018.07 +## TODOs as of U-Boot 2019.04 * unimplemented or incompletely implemented boot services * Exit - call unload function, unload applications only @@ -308,16 +308,13 @@ This driver is only available if U-Boot is configured with * unimplemented or incompletely implemented runtime services * SetVariable() ignores attribute EFI_VARIABLE_APPEND_WRITE - * GetNextVariableName is not implemented * QueryVariableInfo is not implemented * unimplemented events * EVT_RUNTIME * EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE - * event groups * data model - * manage events in a linked list * manage configuration tables in a linked list * UEFI drivers -- cgit v1.3.1 From 9ba712dc84e8824055c368a385794f69aabab661 Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Thu, 28 Mar 2019 08:09:16 +0100 Subject: efi_loader: define development target in README.uefi Describe the target scope of the UEFI implementation in U-Boot. Signed-off-by: Heinrich Schuchardt --- doc/README.uefi | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'doc') diff --git a/doc/README.uefi b/doc/README.uefi index b38efbc0cc3..66b6abece5e 100644 --- a/doc/README.uefi +++ b/doc/README.uefi @@ -12,6 +12,15 @@ the interaction of drivers and applications with the firmware. The API comprises access to block storage, network, and console to name a few. The Linux kernel and boot loaders like GRUB or the FreeBSD loader can be executed. +## Development target + +The implementation of UEFI in U-Boot strives to reach the minimum requirements +described in "Server Base Boot Requirements System Software on ARM Platforms - +Version 1.1" [4]. + +A full blown UEFI implementation would contradict the U-Boot design principle +"keep it small". + ## Building for UEFI The UEFI standard supports only little-endian systems. The UEFI support can be @@ -335,3 +344,5 @@ This driver is only available if U-Boot is configured with http://uefi.org/specifications - UEFI specifications * [2](./driver-model/README.txt) doc/driver-model/README.txt - Driver model * [3](./README.iscsi) doc/README.iscsi - iSCSI booting with U-Boot and iPXE +* [4](https://developer.arm.com/docs/den0044/latest/server-base-boot-requirements-system-software-on-arm-platforms-version-11) + Server Base Boot Requirements System Software on ARM Platforms - Version 1.1 -- cgit v1.3.1 From 5ec072bb2b7aa9cb1696d172b605edac4ccc6e2a Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Thu, 28 Mar 2019 22:51:35 +0100 Subject: doc/git-mailrc: correct entry 'agraf' Correct Alex's email address. Signed-off-by: Heinrich Schuchardt Reviewed-by: Alexander Graf --- doc/git-mailrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/git-mailrc b/doc/git-mailrc index c2eee8c7d82..b75ebab02ba 100644 --- a/doc/git-mailrc +++ b/doc/git-mailrc @@ -15,7 +15,7 @@ alias abiessmann Andreas Bießmann alias abrodkin Alexey Brodkin alias afleming Andy Fleming alias ag Anatolij Gustschin -alias agraf Alexander Graf +alias agraf Alexander Graf alias alisonwang Alison Wang alias angelo_ts Angelo Dureghello alias bmeng Bin Meng -- cgit v1.3.1