Skip to content

Instantly share code, notes, and snippets.

@PeterCxy
Last active March 30, 2023 14:46
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save PeterCxy/dcdedd0f45f7330b9981908a12d5ea6c to your computer and use it in GitHub Desktop.
Save PeterCxy/dcdedd0f45f7330b9981908a12d5ea6c to your computer and use it in GitHub Desktop.
U-BOOT boot.txt for booting RaspberryPi kernel on ArchLinxuARM aarch64
# After modifying, run ./mkscr
# Set root partition to the second partition of boot device
part uuid ${devtype} ${devnum}:2 uuid
setenv bootargs console=tty1 root=PARTUUID=${uuid} rw rootwait smsc95xx.macaddr="${usbethaddr}"
load ${devtype} ${devnum}:${bootpart} ${kernel_addr_r} /Image
load ${devtype} ${devnum}:${bootpart} ${ramdisk_addr_r} /initramfs-linux.img
booti ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdtcontroladdr};

Put this file in /boot/boot.txt and then go to /boot and run ./mkscr. Of course, make sure you actually have the RaspberryPi kernel installed before doing so.

Some RPi kernel packages on ArchLinuxARM installs directly to /boot/kernel8.img. In this case, you'll need to remove U-BOOT entirely and boot directly to the Linux kernel instead.

This configuration file is ONLY intended for my linux-lts-aarch64-raspberrypi-git package.

It is also recommended to add

device_tree=dtbs/broadcom/bcm2710-rpi-3-b.dtb

to your /boot/config.txt to make sure the DTB that comes with the kernel is always loaded.

To load other overlays (e.g. the GPU driver), add

overlay_prefix=dtbs/overlays/
dtoverlay=vc4-kms-v3d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment