x86: Mention running U-Boot in 64-bit mode in the README
authorSimon Glass <sjg@chromium.org>
Sun, 17 Jul 2016 07:23:46 +0000 (01:23 -0600)
committerBin Meng <bmeng.cn@gmail.com>
Tue, 16 Aug 2016 03:44:09 +0000 (11:44 +0800)
This feature is not supported. Document this, and add some details on how it
might be implemented.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
doc/README.x86

index 06b3de1..ba5bb99 100644 (file)
@@ -1049,11 +1049,29 @@ provides the same EFI run-time services) is not currently supported on x86.
 
 See README.efi for details of EFI support in U-Boot.
 
+64-bit Support
+--------------
+U-Boot supports booting a 64-bit kernel directly and is able to change to
+64-bit mode to do so. It also supports (with CONFIG_EFI_STUB) booting from
+both 32-bit and 64-bit UEFI. However, U-Boot itself is currently always built
+in 32-bit mode. Some access to the full memory range is provided with
+arch_phys_memset().
+
+The development work to make U-Boot itself run in 64-bit mode has not yet
+been attempted. The best approach would likely be to build a 32-bit SPL
+image for U-Boot, with CONFIG_SPL_BUILD. This could then handle the early CPU
+init in 16-bit and 32-bit mode, running the FSP and any other binaries that
+are needed. Then it could change to 64-bit model and jump to U-Boot proper.
+
+Given U-Boot's extensive 64-bit support this has not been a high priority,
+but it would be a nice addition.
+
 TODO List
 ---------
 - Audio
 - Chrome OS verified boot
 - Support for CONFIG_EFI_LOADER
+- Building U-Boot to run in 64-bit mode
 
 References
 ----------