diff --git a/device/testing/device-sony-pioneer/APKBUILD b/device/testing/device-sony-pioneer/APKBUILD new file mode 100644 index 0000000000000000000000000000000000000000..0d6a6e9501210a5e14fa213301a52186df6726f0 --- /dev/null +++ b/device/testing/device-sony-pioneer/APKBUILD @@ -0,0 +1,49 @@ +# Reference: <https://postmarketos.org/devicepkg> +pkgname=device-sony-pioneer +pkgdesc="Sony Xperia XA2" +pkgver=0.1 +pkgrel=0 +url="https://postmarketos.org" +license="MIT" +arch="aarch64" +options="!check !archcheck" +depends=" + linux-postmarketos-qcom-sdm660 + mkbootimg + postmarketos-base +" +makedepends="devicepkg-dev" +source=" + deviceinfo + rootston.ini +" +subpackages=" + $pkgname-nonfree-firmware:nonfree_firmware + $pkgname-phosh +" + + +build() { + devicepkg_build $startdir $pkgname +} + +package() { + devicepkg_package $startdir $pkgname +} + +phosh() { + install_if="$pkgname postmarketos-ui-phosh" + install -Dm644 "$srcdir"/rootston.ini \ + "$subpkgdir"/etc/phosh/rootston.ini +} + +nonfree_firmware() { + pkgdesc="Various firmware files required for most subsystems to run." + depends="firmware-sony-ninges soc-qcom-sdm660" + mkdir "$subpkgdir" +} + +sha512sums=" +ed5c3c476dd88be24ce838bfcdf4ec7040ec0b45851cbe016534727c8a694ed227be9d7087fc1c3ea87853e819f1133f80686147d73e8a91acd780a71fcf49b5 deviceinfo +aad7cce10db5ec156585893c82932bd42f2c86e4d68208b5f3816ac7f5f80eb6ddf15157666e81de97d30b20897f88e1027545a87fe5c96c37b5e75e3e125ee4 rootston.ini +" diff --git a/device/testing/device-sony-pioneer/device-sony-pioneer.post-install b/device/testing/device-sony-pioneer/device-sony-pioneer.post-install new file mode 100644 index 0000000000000000000000000000000000000000..35a5308b029a14f91564e4d23d2ac4de30b34163 --- /dev/null +++ b/device/testing/device-sony-pioneer/device-sony-pioneer.post-install @@ -0,0 +1,11 @@ + #!/bin/sh + +if [ -z "$(grep /dev/disk/by-partlabel/modem_a /etc/fstab)" ]; then + Firmware shipped with the stock ROM, _a is always populated + echo "/dev/disk/by-partlabel/modem_a /opt/firmware/modem auto ro 0 0" >> /etc/fstab +fi + +if [ -z "$(grep /dev/disk/by-partlabel/oem_a /etc/fstab)" ]; then + ODM blobs provided by Sony Open Devices Project + echo "/dev/disk/by-partlabel/oem_a /opt/firmware/odm auto ro 0 0" >> /etc/fstab +fi diff --git a/device/testing/device-sony-pioneer/deviceinfo b/device/testing/device-sony-pioneer/deviceinfo new file mode 100644 index 0000000000000000000000000000000000000000..d1975042c8f66d8d06d3c15496e5e44659d928b2 --- /dev/null +++ b/device/testing/device-sony-pioneer/deviceinfo @@ -0,0 +1,34 @@ +# Reference: <https://postmarketos.org/deviceinfo> +# Please use double quotes only. You can source this file in shell +# scripts. + +deviceinfo_format_version="0" +deviceinfo_name="Sony Xperia XA2" +deviceinfo_manufacturer="Sony" +deviceinfo_codename="sony-pioneer" +deviceinfo_year="2018" +deviceinfo_dtb="qcom/sdm630-sony-xperia-nile-pioneer" +deviceinfo_append_dtb="true" +deviceinfo_modules_initfs="" +deviceinfo_arch="aarch64" + +# Device related +deviceinfo_chassis="handset" +deviceinfo_keyboard="false" +deviceinfo_external_storage="true" +deviceinfo_screen_width="1080" +deviceinfo_screen_height="1920" + +# Bootloader related +deviceinfo_flash_method="fastboot" +deviceinfo_kernel_cmdline="" +deviceinfo_generate_bootimg="true" +deviceinfo_bootimg_qcdt="false" +deviceinfo_bootimg_mtk_mkimage="false" +deviceinfo_bootimg_dtb_second="false" +deviceinfo_flash_offset_base="0x00000000" +deviceinfo_flash_offset_kernel="0x00008000" +deviceinfo_flash_offset_ramdisk="0x02000000" +deviceinfo_flash_offset_second="0x00f00000" +deviceinfo_flash_offset_tags="0x01e00000" +deviceinfo_flash_pagesize="4096" diff --git a/device/testing/device-sony-pioneer/rootston.ini b/device/testing/device-sony-pioneer/rootston.ini new file mode 100644 index 0000000000000000000000000000000000000000..74ac1390418158d84ec10986e97271bfee563393 --- /dev/null +++ b/device/testing/device-sony-pioneer/rootston.ini @@ -0,0 +1,5 @@ +[cursor:seat0] +map-to-output:DSI-1 + +[output:DSI-1] +scale = 3 diff --git a/device/testing/firmware-sony-ninges/APKBUILD b/device/testing/firmware-sony-ninges/APKBUILD new file mode 100644 index 0000000000000000000000000000000000000000..f6f646f270e639eee7d275b1a09146bf7b4d967a --- /dev/null +++ b/device/testing/firmware-sony-ninges/APKBUILD @@ -0,0 +1,19 @@ +pkgname=firmware-sony-ninges +pkgver=1 +pkgrel=0 +pkgdesc="Firmware for Sony Xperia XA2/Plus/Ultra & 10/10 Plus" +url="postmarketos.org" +arch="aarch64" +license="BSD-3-Clause" +install="$pkgname.post-install" +options="!check !archcheck !strip !tracedeps pmb:cross-native" +depends="rsync" +source="copy-firmware.initd" + +package() { + install -Dm755 "$srcdir/copy-firmware.initd" "$pkgdir/etc/init.d/copy-firmware" +} + +sha512sums=" +b45955157f09d3dd50f4d5daa3a3fedb1b2e8aed198db4b58818db81e3107df4563f56612f24f0f9439ae00519d1799fb6e91666578a423062bb3be77518629f copy-firmware.initd +" diff --git a/device/testing/firmware-sony-ninges/copy-firmware.initd b/device/testing/firmware-sony-ninges/copy-firmware.initd new file mode 100644 index 0000000000000000000000000000000000000000..6f957ac1826b98e5830df262fa2248e6e7cc2bbc --- /dev/null +++ b/device/testing/firmware-sony-ninges/copy-firmware.initd @@ -0,0 +1,19 @@ +#!/sbin/openrc-run + +description="Mounting firmware partition and setting up FW" + +start() { + # Set up directories (if needed) + mkdir -p /opt/firmware/modem + mkdir -p /opt/firmware/odm + mkdir -p /lib/firmware/qcom/venus-4.4 + + # Copy all the firmware over (except Venus) + rsync -r -l -p --owner=root --group=root --chmod=0755 --exclude 'venus*' /opt/firmware/modem/image/* /lib/firmware/ + + # Copy Venus FW over to the correct location + rsync -r -l -p --owner=root --group=root --chmod=0755 /opt/firmware/modem/image/venus* /lib/firmware/qcom/venus-4.4 + + # Get Adreno & ZAP firmware from ODM package + rsync -r -l -p --owner=root --group=root --chmod=0755 /opt/firmware/odm/firmware/* /lib/firmware/qcom +} diff --git a/device/testing/firmware-sony-ninges/firmware-sony-ninges.post-install b/device/testing/firmware-sony-ninges/firmware-sony-ninges.post-install new file mode 100644 index 0000000000000000000000000000000000000000..a65edebd6d932501472e89fb3d7e69d7d586b694 --- /dev/null +++ b/device/testing/firmware-sony-ninges/firmware-sony-ninges.post-install @@ -0,0 +1,3 @@ +#!/bin/sh + +rc-update add copy-firmware default diff --git a/device/testing/soc-qcom-sdm660/APKBUILD b/device/testing/soc-qcom-sdm660/APKBUILD new file mode 100644 index 0000000000000000000000000000000000000000..db4eb7890a452bdf1a4bbc4abf35f72214276dd4 --- /dev/null +++ b/device/testing/soc-qcom-sdm660/APKBUILD @@ -0,0 +1,28 @@ +pkgname=soc-qcom-sdm660 +pkgdesc="Common package for Qualcomm SDM630/636/660 devices" +pkgver=1 +pkgrel=0 +url="https://postmarketos.org" +license="BSD-3-Clause" +arch="aarch64" +options="!check !archcheck !tracedeps pmb:cross-native" +subpackages="$pkgname-nonfree-firmware:nonfree_firmware" + +package() { + mkdir -p "$pkgdir" +} + +nonfree_firmware() { + pkgdesc="Modem, WiFi, BT and GPU Firmware" + depends=" + linux-firmware-qca + linux-firmware-qcom + msm-modem + pd-mapper + pd-mapper-openrc + tqftpserv + tqftpserv-openrc + " + install="$subpkgname.post-install" + mkdir "$subpkgdir" +} diff --git a/device/testing/soc-qcom-sdm660/soc-qcom-sdm660-nonfree-firmware.post-install b/device/testing/soc-qcom-sdm660/soc-qcom-sdm660-nonfree-firmware.post-install new file mode 100644 index 0000000000000000000000000000000000000000..70b9e0efe219f21ba16ee978aa3f1b083e82ca41 --- /dev/null +++ b/device/testing/soc-qcom-sdm660/soc-qcom-sdm660-nonfree-firmware.post-install @@ -0,0 +1,3 @@ +#!/bin/sh +rc-update add tqftpserv boot +rc-update add pd-mapper boot