diff --git a/device/testing/device-samsung-a72q/APKBUILD b/device/testing/device-samsung-a72q/APKBUILD new file mode 100644 index 000000000..498731dfc --- /dev/null +++ b/device/testing/device-samsung-a72q/APKBUILD @@ -0,0 +1,49 @@ +# Maintainer: map220v +# Reference: +pkgname=device-samsung-a72q +pkgdesc="Samsung Galaxy A72" +pkgver=1 +pkgrel=0 +url="https://postmarketos.org" +license="MIT" +arch="aarch64" +options="!check !archcheck" +depends=" + alsa-ucm-conf-samsung-sm7125 + linux-postmarketos-qcom-sm7125 + mesa-dri-gallium + mkbootimg + postmarketos-base + soc-qcom-sm7125 +" +makedepends="devicepkg-dev" +source="deviceinfo" +subpackages="$pkgname-nonfree-firmware:nonfree_firmware" + +build() { + devicepkg_build $startdir $pkgname +} + +package() { + devicepkg_package $startdir $pkgname +} + +nonfree_firmware() { + pkgdesc="Firmware for GPU, Audio, Modem, WiFi, etc." + depends=" + firmware-samsung-a72q-adreno + firmware-samsung-a72q-adsp + firmware-samsung-a72q-cdsp + firmware-samsung-a72q-ipa + firmware-samsung-a72q-modem + firmware-samsung-a72q-wlan + firmware-samsung-a72q-bluetooth + firmware-samsung-a72q-venus + linux-firmware-ath10k + " + mkdir "$subpkgdir" +} + +sha512sums=" +3368f04dbd21b79455dc8ae2934ca3079b1eb106b2566cbe8a0433f211d2cd7e01b06d43c0c1f824b0e8db0d416bea6e240cf01ddf7aa04b8536c8352747acdc deviceinfo +" diff --git a/device/testing/device-samsung-a72q/deviceinfo b/device/testing/device-samsung-a72q/deviceinfo new file mode 100644 index 000000000..2a6718ba2 --- /dev/null +++ b/device/testing/device-samsung-a72q/deviceinfo @@ -0,0 +1,38 @@ +# Reference: +# Please use double quotes only. You can source this file in shell +# scripts. + +deviceinfo_format_version="0" +deviceinfo_name="Samsung Galaxy A72" +deviceinfo_manufacturer="Samsung" +deviceinfo_codename="samsung-a72q" +deviceinfo_year="2021" +deviceinfo_dtb="qcom/sm7125-samsung-a72q" +deviceinfo_append_dtb="true" +deviceinfo_arch="aarch64" +deviceinfo_gpu_accelerated="true" + +# Device related +deviceinfo_chassis="handset" +deviceinfo_keyboard="false" +deviceinfo_external_storage="true" +deviceinfo_screen_width="1080" +deviceinfo_screen_height="2400" + +# Bootloader related +deviceinfo_flash_method="heimdall-bootimg" +deviceinfo_kernel_cmdline="console=null" +deviceinfo_generate_bootimg="true" +deviceinfo_bootimg_qcdt="false" +deviceinfo_bootimg_mtk_mkimage="false" +deviceinfo_bootimg_dtb_second="false" +deviceinfo_flash_pagesize="4096" +deviceinfo_flash_offset_base="0x00000000" +deviceinfo_flash_offset_kernel="0x00008000" +deviceinfo_flash_offset_ramdisk="0x02000000" +deviceinfo_flash_offset_second="0x00000000" +deviceinfo_flash_offset_tags="0x01e00000" +deviceinfo_flash_heimdall_partition_kernel="BOOT" +deviceinfo_flash_heimdall_partition_system="SUPER" +deviceinfo_rootfs_image_sector_size="4096" +deviceinfo_flash_sparse="true" diff --git a/device/testing/firmware-samsung-a72q/APKBUILD b/device/testing/firmware-samsung-a72q/APKBUILD new file mode 100644 index 000000000..9842caeb3 --- /dev/null +++ b/device/testing/firmware-samsung-a72q/APKBUILD @@ -0,0 +1,93 @@ +# Maintainer: map220v +pkgname=firmware-samsung-a72q +pkgver=20220820 +pkgrel=0 +pkgdesc="Firmware for Samsung Galaxy A72" +subpackages=" + $pkgname-adreno + $pkgname-adsp + $pkgname-cdsp + $pkgname-ipa + $pkgname-modem + $pkgname-venus + $pkgname-wlan + $pkgname-bluetooth + " +url="https://github.com/map220v/a72q-firmware" +arch="aarch64" +license="proprietary" +options="!check !strip !archcheck !tracedeps pmb:cross-native" +_commit="d279fb298ad9c9e7f23c23c8d88344d3724c5be9" +source="https://github.com/map220v/a72q-firmware/archive/$_commit/a72q-firmware-$_commit.tar.gz" +builddir="$srcdir/a72q-firmware-$_commit" + +package() { + # parent package is empty + mkdir -p "$pkgdir" +} + +adreno() { + pkgdesc="Samsung Galaxy A72 adreno firmware" + + install -Dm644 "$builddir"/a6* -t \ + "$subpkgdir/lib/firmware/qcom/" +} + +adsp() { + pkgdesc="Samsung Galaxy A72 adsp firmware" + + install -Dm644 "$builddir"/adsp* -t \ + "$subpkgdir/lib/firmware/qcom/sm7125/a72q/" +} + +cdsp() { + pkgdesc="Samsung Galaxy A72 cdsp firmware" + + install -Dm644 "$builddir"/cdsp* -t \ + "$subpkgdir/lib/firmware/qcom/sm7125/a72q/" +} + +ipa() { + pkgdesc="Samsung Galaxy A72 ipa firmware" + + install -Dm644 "$builddir"/ipa_fws.* -t \ + "$subpkgdir/lib/firmware/qcom/sm7125/a72q/" +} + +modem() { + pkgdesc="Samsung Galaxy A72 modem firmware" + + # cp because of the modem_pr directory + mkdir -p "$subpkgdir/lib/firmware/qcom/sm7125/a72q/" + cp -r "$builddir"/modem* \ + "$subpkgdir/lib/firmware/qcom/sm7125/a72q/" + find "$subpkgdir/lib/firmware/qcom/sm7125/a72q/" \ + -type f -exec chmod 0644 {} \; +} + +venus() { + pkgdesc="Samsung Galaxy A72 venus firmware" + + install -Dm644 "$builddir"/venus.* -t \ + "$subpkgdir/lib/firmware/qcom/sm7125/a72q/" +} + +wlan() { + pkgdesc="Samsung Galaxy A72 wlan firmware" + + install -Dm644 "$builddir"/wlanmdsp.mbn -t \ + "$subpkgdir/lib/firmware/qcom/sm7125/a72q/" +} + +bluetooth() { + pkgdesc="Samsung Galaxy A72 bluetooth firmware" + + install -Dm644 "$builddir"/crbtfw21.tlv -t \ + "$subpkgdir/lib/firmware/qca/" + install -Dm644 "$builddir"/crnv21.* -t \ + "$subpkgdir/lib/firmware/qca/sm7125/a72q/" +} + +sha512sums=" +1ccbbfb73bf949fe202d3333a59e39f2027ac5f67e536a8c28fa1154425b72a0a6a41eededa9af9b82292beefe4843e4e449fe84d87c31d5f2d6513004f04e18 a72q-firmware-d279fb298ad9c9e7f23c23c8d88344d3724c5be9.tar.gz +"