Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
docs:guide-developer:uefi-bootable-image [2019/09/02 15:00] – [Introduction] jeffdocs:guide-developer:uefi-bootable-image [2021/06/28 13:50] (current) – [Status] replace git commit ID with actual link to the commit fiouz
Line 1: Line 1:
 ====== OpenWrt on UEFI based x86 systems ====== ====== OpenWrt on UEFI based x86 systems ======
-<WRAP center round alert 60%> 
-This information is outdated. There is no such branch, nor has the project accepted any UEFI-boot approach as of August, 2019 
-</WRAP> 
  
 ===== Introduction ===== ===== Introduction =====
-<strike>UEFI based systems are becoming more common and it's expected at some time that newer UEFI based system doesn't contain CSM to support legacy bios mode at all</strike> 
  
 UEFI boot has been required for years now, boards that only support UEFI are common, and Intel has stated back in 2017 that "legacy" BIOS will no longer be supported after 2020. UEFI boot has been required for years now, boards that only support UEFI are common, and Intel has stated back in 2017 that "legacy" BIOS will no longer be supported after 2020.
Line 11: Line 7:
 https://www.anandtech.com/show/12068/intel-to-remove-bios-support-from-uefi-by-2020 https://www.anandtech.com/show/12068/intel-to-remove-bios-support-from-uefi-by-2020
  
-((http://www.uefi.org/sites/default/files/resources/Brian_Richardson_Intel_Final.pdf)).+http://www.uefi.org/sites/default/files/resources/Brian_Richardson_Intel_Final.pdf.
  
 To accommodate this, it's necessary for OpenWrt build system to generate UEFI bootable images. To accommodate this, it's necessary for OpenWrt build system to generate UEFI bootable images.
Line 17: Line 13:
 ===== Status ===== ===== Status =====
  
-There are pending commits related to add UEFI bootable OpenWrt under +As of OpenWrt ''[[commit>?p=openwrt/openwrt.git;a=commit;h=a6b7c3e672764858fd294998406ae791f5964b4a|a6b7c3e672764858fd294998406ae791f5964b4a]]'', EFI-compatible images are available on the x86-64 [[https://downloads.openwrt.org/snapshots/targets/x86/64/|snapshots]] downloads page. 
-[[https://git.openwrt.org/?p=openwrt/staging/jow.git;a=summary|Jow staging repository]].+
  
 ===== Building UEFI bootable OpenWrt image ===== ===== Building UEFI bootable OpenWrt image =====
  
-The commits necessary to build uefi bootable OpenWrt image are as follows.+To build an EFI-compatible OpenWrt image:
  
-<code> +    * Run ''make menuconfig''.
-tools: add libopt host build +
-add sgdisk host build +
-Generate EFI grub images for x86 platforms +
-x86: fix bios mkimage during efi image generation +
-</code>+
  
-To build the image, checkout jow-staging repository, i.e. +    * Go to **Target Images** and make sure that the option **Build GRUB EFI images (Linux x86 or x86_64 host only)** is checked.
- +
-<code bash> +
-$ git remote add jow-staging https://git.openwrt.org/openwrt/staging/jow.git +
-$ git fetch jow-staging +
-$ git checkout -b uefi-capable --track origin/master # so that you can rebase easily +
-$ git merge jow-staging +
-</code> +
- +
-After merging the branch or checking out jow-staging repository, run ''make menuconfig''+
- +
-Go to **Target Images** and make sure that **Build EFI grub images** option is checked.+
  
 Select additional packages as necessary and finally save changes and exit menuconfig. Select additional packages as necessary and finally save changes and exit menuconfig.
Line 48: Line 28:
 Run ''make'' as usual to build the image. Run ''make'' as usual to build the image.
  
-The resulting image will be available as ''bin/targets/x86/64/openwrt-x86-64-uefi-gpt-ext4.img.gz'', which can be written to disk after decompression.+The resulting image(s) will be available in ''./bin/targets/x86/64/'' (depending on the image format(s) you chose), which can be written to disk after decompression
 + 
 +Note that these are **disk images**, not partition images, which must be written to a block device directly e.g. ''/dev/sdb''.
  
 ===== UEFI Secure Boot ===== ===== UEFI Secure Boot =====
  • Last modified: 2019/09/02 15:00
  • by jeff