Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

msm8916 and UFI-series devices support #84

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -8,6 +8,7 @@
/src/linux-sunxi
/src/linux-pocketpc
/src/linux-librem5
/src/linux-msm8916
/src/linux-sdm845
/src/busybox
/src/u-boot
Expand Down
40 changes: 39 additions & 1 deletion Makefile
@@ -1,7 +1,17 @@
CROSS_FLAGS = ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-
CROSS_FLAGS_BOOT = CROSS_COMPILE=aarch64-linux-gnu-

all: pine64-pinephone.img.xz pine64-pinetab.img.xz purism-librem5.tar.xz boot-xiaomi-beryllium-tianma.img boot-xiaomi-beryllium-ebbg.img boot-oneplus-enchilada.img boot-oneplus-fajita.img sourceparts-pocketpc.img.xz
MSM8916_UFI = thwc-uf896 thwc-ufi001c yiming-uz801v3
all: \
pine64-pinephone.img.xz \
pine64-pinetab.img.xz \
purism-librem5.tar.xz \
$(foreach n,$(MSM8916_UFI),boot-$(n).img) \
boot-xiaomi-beryllium-tianma.img \
boot-xiaomi-beryllium-ebbg.img \
boot-oneplus-enchilada.img \
boot-oneplus-fajita.img \
sourceparts-pocketpc.img.xz


pine64-pinephone.img: fat-pine64-pinephone.img u-boot-sunxi-with-spl.bin
Expand Down Expand Up @@ -87,6 +97,9 @@ fat-pine64-pinebookpro.img: initramfs-pine64-pinebookpro.gz kernel-rockchip.gz s
@mmd -i $@ extlinux
@mcopy -i $@ src/pine64-pinebookpro.conf ::extlinux/extlinux.conf

$(foreach n,$(MSM8916_UFI),kernel-$(n).gz-dtb): kernel-%.gz-dtb: kernel-msm8916.gz dtbs/msm8916/msm8916-%.dtb
cat $^ > $@

kernel-xiaomi-beryllium-tianma.gz-dtb: kernel-sdm845.gz dtbs/sdm845/sdm845-xiaomi-beryllium-tianma.dtb
cat kernel-sdm845.gz dtbs/sdm845/sdm845-xiaomi-beryllium-tianma.dtb > $@

Expand Down Expand Up @@ -124,6 +137,14 @@ splash/%.ppm.gz: splash/%.ppm
@echo "GZ $@"
@gzip < $< > $@

# UFI-series devices has no screen, skip splash setup
$(foreach n,$(MSM8916_UFI),initramfs-$(n).cpio): initramfs-%.cpio: initramfs/bin/busybox initramfs/init initramfs/init_functions.sh
@echo "CPIO $@"
@rm -rf initramfs-$*
@cp -r initramfs initramfs-$*
@cp src/info-$*.sh initramfs-$*/info.sh
@cd initramfs-$*; find . | cpio -H newc -o > ../$@

initramfs-%.cpio: initramfs/bin/busybox initramfs/init initramfs/init_functions.sh splash/%.ppm.gz splash/%-error.ppm.gz
@echo "CPIO $@"
@rm -rf initramfs-$*
Expand Down Expand Up @@ -186,6 +207,17 @@ kernel-librem5.gz: src/linux_config_librem5 src/linux-librem5

dtbs/librem5/imx8mq-librem5-r2.dtb: kernel-librem5.gz

kernel-msm8916.gz: src/linux-msm8916 src/linux_config_msm8916
@echo "MAKE $@"
@mkdir -p build/linux-msm8916
@mkdir -p dtbs/msm8916
@cp src/linux_config_msm8916 build/linux-msm8916/.config
@$(MAKE) -C src/linux-msm8916 O=../../build/linux-msm8916 $(CROSS_FLAGS) olddefconfig all
@cp build/linux-msm8916/arch/arm64/boot/Image.gz $@
@cp build/linux-msm8916/arch/arm64/boot/dts/qcom/msm8916*.dtb dtbs/msm8916/

$(foreach n,$(MSM8916_UFI),dtbs/msm8916/msm8916-$(n).dtb): kernel-msm8916.gz

kernel-sdm845.gz: src/linux-sdm845
@echo "MAKE $@"
@mkdir -p build/linux-sdm845
Expand Down Expand Up @@ -272,6 +304,12 @@ src/linux-librem5:
@wget -c https://source.puri.sm/Librem5/linux/-/archive/pureos/5.18.7pureos1/linux-pureos-5.18.7pureos1.tar.gz
@tar -xf linux-pureos-5.18.7pureos1.tar.gz --strip-components 1 -C src/linux-librem5

src/linux-msm8916:
@echo "WGET linux-msm8916"
@mkdir src/linux-msm8916
@wget -c https://github.com/msm8916-mainline/linux/archive/v6.5.2-msm8916.tar.gz
@tar -xf v6.5.2-msm8916.tar.gz --strip-components 1 -C src/linux-msm8916

src/linux-sdm845:
@echo "WGET linux-sdm845"
@mkdir src/linux-sdm845
Expand Down
6 changes: 4 additions & 2 deletions initramfs/init
Expand Up @@ -57,7 +57,9 @@ setup_usb_configfs
start_udhcpd
setup_telnetd

gzip -c -d splash.ppm.gz > /splash.ppm
fbsplash -s /splash.ppm
if ! [ "$SPLASH" = false ]; then
gzip -c -d splash.ppm.gz > /splash.ppm
fbsplash -s /splash.ppm
fi

loop_forever
6 changes: 6 additions & 0 deletions src/deviceinfo_msm8916
@@ -0,0 +1,6 @@
deviceinfo_flash_offset_base="0x80000000"
deviceinfo_flash_offset_kernel="0x00080000"
deviceinfo_flash_offset_ramdisk="0x02000000"
deviceinfo_flash_offset_second="0x00f00000"
deviceinfo_flash_offset_tags="0x01e00000"
deviceinfo_flash_pagesize="2048"
1 change: 1 addition & 0 deletions src/deviceinfo_thwc-uf896
1 change: 1 addition & 0 deletions src/deviceinfo_thwc-ufi001c
1 change: 1 addition & 0 deletions src/deviceinfo_yiming-uz801v3
9 changes: 9 additions & 0 deletions src/info-thwc-uf896.sh
@@ -0,0 +1,9 @@
PLATFORM=thwc-uf896
MANUFACTURER="Tong Heng Wei Chuang"
PRODUCT="MSM8916 based LTE dongle UF896"
EMMC=/dev/mmcblk0
# no SD card slot
# LED=blue
# TRIGGER="mmc0"
SPLASH=false
SLEEP=5
9 changes: 9 additions & 0 deletions src/info-thwc-ufi001c.sh
@@ -0,0 +1,9 @@
PLATFORM=thwc-ufi001c
MANUFACTURER="Tong Heng Wei Chuang"
PRODUCT="MSM8916 based LTE dongle UFI-001C / UFI-001B / UFI103S"
EMMC=/dev/mmcblk0
# no SD card slot
# LED=blue
# TRIGGER="mmc0"
SPLASH=false
SLEEP=5
9 changes: 9 additions & 0 deletions src/info-yiming-uz801v3.sh
@@ -0,0 +1,9 @@
PLATFORM=yiming-uz801v3
MANUFACTURER="Yiming"
PRODUCT="MSM8916 based LTE dongle UZ801 V3.0"
EMMC=/dev/mmcblk0
# no SD card slot
# LED=blue
# TRIGGER="mmc0"
SPLASH=false
SLEEP=5