Skip to content

Draft: Add support Pine64 mobile devices

Petr Hodina requested to merge phodina/nonguix:patch/pinenote into master

Hi, this is an attempt to make Guix boot on Pine64 devices (PinePhone, PinePhone Pro, Pinenote and Quartz64A).

Build

  • Build PinePhone kernel
  • Build PinePhone Pro kernel
  • Build Pinenote/Quartz64 kernel
  • Build mainline u-boot for Quartz64A
  • Build rockchip (downstream) u-boot for Quartz64A - currently does not build - investigate why build fails when packing the firmware
  • Build rockchip (downstream) u-boot for Pinenote

Boot

  • Boot PinePhone kernel on the device
  • Boot PinePhone Pro kernel on the device
  • Boot Quartz64 kernel on the device
  • Boot mainline u-boot for Quartz64A on the device
  • Boot rockchip (downstream) u-boot on Quartz64A Probably not relevant now or in the future
  • Boot rockchip (downstream) u-boot on Pinenote

Images

  • Create PinePhone image for flashing
  • Create PinePhone Pro image for flashing
  • Create Pinenote/Quartz64 image for flashing
  • Create mainline u-boot for Quartz64A image for flashing
  • Create rockchip (downstream) u-boot for Quartz64A image for flashing
  • Create rockchip (downstream) u-boot for Pinenote image for flashing

Misc

  • Rebase the bootsplash patches for the PinePhones
  • Decide which kernel version to support as the patches are being mainlined
  • Unify the kernel build so that there are not 3 (or more) implementations
  • Add additional keyword for DTB (accept list) and remove additional DTBs from the image
  • What to do with the firmware? There are 2 parts the ECB firmware for the EINK display which is calibration from the factory and is the same for each batch. Additionaly the Wireless requires also some blobs. How to distribute them?
  • Provide README.md on or some othe documentation on how to flash Guix to the devices

FIY: ATF sources for Pinephone have not yet been released so we can't use mainline u-boot

Edited by Petr Hodina

Merge request reports