Mainline Linux on Marvell PXA1908
The Marvell PXA1908 was Marvell’s first ARM64 SoC released sometime around 2014 or 2015. The SoC is used in some of Samsung’s entry level 2015 phones such as the Core Prime VE LTE and the Xcover 3 LTE. The PXA1908 currently has out-of-tree support for booting mainline Linux.
Links
- Latest version of patchset (v13)
- Main Git repository
- postmarketOS SoC page
- XDA thread
- IRC:
#pxa1908-mainline
on OFTC
U-Boot port
There is now a somewhat functional U-Boot port! It can be found on my Git
server. It’s packaged into a bootimg just like Linux itself as seen below. Pay
particular attention to the fact that the U-Boot binary is gzip
ped and packed
into an uImage.
Note: By somewhat functional I mean working serial. It can also boot a FIT of U-Boot, but some work on SD/MMC and maybe USB is needed to make it doable for inclusion in the pmOS port.
Building outside pmbootstrap
- Clone and compile pxa-mkbootimg
- Clone repository
- Checkout
mainline
- Get kernel config from pmaports
make
the kernel and create a boot.img using the below script
Script for creating boot.img
Written to be run from out/arch/arm64/boot
. Adapt to your needs.
#!/bin/sh
mkimage -A arm64 -C gzip -a 0x1000000 -e 0x1000000 -n "pxa1928dkb linux" -d Image.gz uImage
~/code/pxa-mkbootimg/pxa1908-dtbTool -p ../../../scripts/dtc/ -s 2048 -o dt.img dts/marvell/
~/code/pxa-mkbootimg/pxa-mkbootimg \
--kernel uImage \
--base 0x10000000 \
--ramdisk /tmp/postmarketOS-export/initramfs \
--ramdisk_offset 0x1000000 \
--pagesize 2048 \
--dt dt.img \
--second_offset 0xf00000 \
--tags_offset 0x100 \
-o boot.img
Todo
Moved here