ODROID XU4 (odroid-xu4)
ODROID XU4 | |
Manufacturer | ODROID |
---|---|
Name | XU4 |
Codename | odroid-xu4 |
Released | 2015 |
Type | single board computer |
Hardware | |
Chipset | Samsung Exynos 5422 |
CPU | 4x 1.9 GHz A15 & 4x 1.3 GHz A7 |
GPU | Mali-T628 |
Display | None |
Storage | eMMC card or microSD |
Memory | 2GB LPDDR3 |
Architecture | armv7 |
Software | |
Original software | Ubuntu |
Original version | 20.04 LTS |
postmarketOS | |
Category | community |
Pre-built images | yes |
postmarketOS kernel | 6.6.41 |
Unixbench Whet/Dhry score | 1389.1 |
USB Networking |
Works |
---|---|
Internal storage | |
SD card | |
Multimedia | |
3D Acceleration |
Works |
Audio | |
Camera Flash | |
Miscellaneous | |
FDE | |
USB OTG | |
HDMI/DP | |
Sensors | |
Magnetometer | |
Ambient Light | |
Proximity | |
Hall Effect | |
Haptics | |
Barometer | |
Contributors
Maintainer(s)
Users owning this device
- Grimler
- Langfingaz (Notes: Running PostmarketOS edge)
- LongnoseRob (Notes: pmOS (edge), UI: phosh)
Installation
1. Use pmbootstrap to create a bootable SD card:
pmbootstrap init # pick 'odroid' as manufacturer, 'xu4' as device and 'console' as UI. pmbootstrap install --disk=/dev/sdX
You must install the nonfree firmware package for this device to get it booting. It contains early bootloaders and trustzone firmware. The early bootloaders initialise the hardware and then boots u-boot.
2. Insert SD card into the Odroid XU4, plug in the Ethernet cable and turn it on.
3. The Odroid XU4 should boot up and become accessible over SSH.
Installation to eMMC
Installation to a eMMC module is not supported with pmbootstrap out of the box. When installing to eMMC the bootloaders should be embedded in /dev/mmcblk0boot0 (and to different offsets compared to when flashing to sdcard), while PostmarketOS's rootfs should be flashed to /dev/mmcblk0. One way to manually do this is to remove deviceinfo_sd_embed_firmware from device-odroid-xu4's deviceinfo, install the rootfs, and then manually flash the bootloaders. To do this you can run the following steps (on your odroid-xu4 or on your computer if you have a eMMC->usb adapter) from the pmaports directory, i.e. ~/.local/var/pmbootstrap/cache_git/pmaports:
pmbootstrap init sed -i '/deviceinfo_sd_embed_firmware/d' device/community/device-odroid-xu4/deviceinfo pmbootstrap checksum device-odroid-xu4 pmbootstrap build --force device-odroid-xu4 # Update partition path and name if needed: pmbootstrap install --disk /dev/mmcblk0
# Next dd bootloaders to eMMC boot0 partition. # Disable write protection echo 0 | sudo tee /sys/block/mmcblk0boot0/force_ro # Update path to file and partition path and name in all dd commands if needed: sudo dd if=$HOME/.local/var/pmbootstrap/chroot_rootfs_odroid-xu4/usr/share/u-boot/odroid-xu3/bl1.bin of=/dev/mmcblk0boot0 bs=512 seek=0 sudo dd if=$HOME/.local/var/pmbootstrap/chroot_rootfs_odroid-xu4/usr/share/u-boot/odroid-xu3/bl2.bin of=/dev/mmcblk0boot0 bs=512 seek=30 sudo dd if=$HOME/.local/var/pmbootstrap/chroot_rootfs_odroid-xu4/usr/share/u-boot/odroid-xu3/u-boot.bin of=/dev/mmcblk0boot0 bs=512 seek=62 sudo dd if=$HOME/.local/var/pmbootstrap/chroot_rootfs_odroid-xu4/usr/share/u-boot/odroid-xu3/tzsw.bin of=/dev/mmcblk0boot0 bs=512 seek=2110
After that you should be able to boot PostmarketOS from your eMMC.
GPU
See 3D_Acceleration#Mali_T628.
See also
- Its sibling odroid-hc2
- pmaports!2860 Initial merge request
- pmbootstrap!2069 Boot binary flashing support