librem5.rst 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. .. SPDX-License-Identifier: GPL-2.0+
  2. Librem5
  3. ==========
  4. U-Boot for the Purism Librem5 phone
  5. Quick Start
  6. -----------
  7. - Build the ARM Trusted firmware binary
  8. - Get ddr and hdmi firmware
  9. - Build U-Boot
  10. Get and Build the ARM Trusted firmware
  11. --------------------------------------
  12. Note: srctree is U-Boot source directory
  13. Get ATF from: https://source.puri.sm/Librem5/arm-trusted-firmware
  14. branch: librem5
  15. .. code-block:: bash
  16. $ make PLAT=imx8mq CROSS_COMPILE=aarch64-linux-gnu- bl31
  17. $ cp build/imx8mq/release/bl31.bin $(builddir)
  18. Get the ddr and display port firmware
  19. -------------------------------------
  20. .. code-block:: bash
  21. $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.15.bin
  22. $ chmod +x firmware-imx-8.15.bin
  23. $ ./firmware-imx-8.15.bin
  24. $ cp firmware-imx-8.15/firmware/hdmi/cadence/signed_dp_imx8m.bin $(builddir)
  25. $ cp firmware-imx-8.15/firmware/ddr/synopsys/lpddr4*.bin $(builddir)
  26. Build U-Boot
  27. ------------
  28. .. code-block:: bash
  29. $ export CROSS_COMPILE=aarch64-linux-gnu-
  30. $ make librem5_defconfig
  31. $ make ARCH=arm
  32. Burn the flash.bin
  33. ------------------
  34. Use uuu to burn flash.bin. Power on the phone while holding vol+ to get it
  35. into uuu mode.
  36. .. code-block:: bash
  37. $ git clone https://source.puri.sm/Librem5/librem5-devkit-tools.git
  38. $ cd librem5-devkit-tools
  39. $ cp $(builddir)/flash.bin files/u-boot-librem5.imx
  40. $ uuu uuu_scripts/u-boot_flash_librem5.lst
  41. Reboot the phone.