lenovo-q706f: new device (Lenovo Xiaoxin Pad Pro 12.6) (MR 5398)
[ci:skip-build]: already built successfully in CI
This commit is contained in:
parent
bb96fdc480
commit
218f8d1251
10 changed files with 8467 additions and 0 deletions
60
device/testing/device-lenovo-q706f/APKBUILD
Normal file
60
device/testing/device-lenovo-q706f/APKBUILD
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
# Reference: <https://postmarketos.org/devicepkg>
|
||||||
|
# Maintainer: chalkin Deng <chalkin@yeah.net>
|
||||||
|
pkgname=device-lenovo-q706f
|
||||||
|
pkgdesc="Lenovo Xiaoxin Pad Pro 12.6 (Lenovo Tab P12 Pro)"
|
||||||
|
pkgver=1
|
||||||
|
pkgrel=0
|
||||||
|
url="https://postmarketos.org"
|
||||||
|
license="MIT"
|
||||||
|
arch="aarch64"
|
||||||
|
options="!check !archcheck"
|
||||||
|
depends="
|
||||||
|
bootmac
|
||||||
|
linux-lenovo-q706f
|
||||||
|
make-dynpart-mappings
|
||||||
|
mesa-vulkan-freedreno
|
||||||
|
mkbootimg
|
||||||
|
postmarketos-base
|
||||||
|
qbootctl
|
||||||
|
swclock-offset
|
||||||
|
"
|
||||||
|
makedepends="devicepkg-dev"
|
||||||
|
install="$pkgname.post-install $pkgname.post-upgrade"
|
||||||
|
source="
|
||||||
|
deviceinfo
|
||||||
|
modules-initfs
|
||||||
|
"
|
||||||
|
|
||||||
|
subpackages="
|
||||||
|
$pkgname-nonfree-firmware:nonfree_firmware
|
||||||
|
"
|
||||||
|
|
||||||
|
build() {
|
||||||
|
devicepkg_build $startdir $pkgname
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
devicepkg_package $startdir $pkgname
|
||||||
|
}
|
||||||
|
|
||||||
|
nonfree_firmware() {
|
||||||
|
pkgdesc="Firmware for GPU, WiFi, etc."
|
||||||
|
depends="
|
||||||
|
firmware-lenovo-q706f-adreno
|
||||||
|
firmware-lenovo-q706f-adsp
|
||||||
|
firmware-lenovo-q706f-cdsp
|
||||||
|
firmware-lenovo-q706f-slpi
|
||||||
|
firmware-lenovo-q706f-venus
|
||||||
|
linux-firmware-ath11k
|
||||||
|
linux-firmware-qca
|
||||||
|
pd-mapper
|
||||||
|
tqftpserv
|
||||||
|
"
|
||||||
|
install="$subpkgname.post-install $subpkgname.post-upgrade"
|
||||||
|
mkdir "$subpkgdir"
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
455f97c6186858dcb1760c8734c0cc5d913f115abd994c468610194c6f507502c9f91a1ced5f1195e519d305efd118e2e028df2fd2429d6d06155e74c7d1437e deviceinfo
|
||||||
|
c0634ddd66ecfe4b39e8bff0b17ea141303d8827d7d498c2a9f19729566f0d5a3900c78ac8c71e8ef5d68e67c625d551e67c790ea01b103fcf38848e8aebfdf1 modules-initfs
|
||||||
|
"
|
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/sh
|
||||||
|
rc-update add tqftpserv boot
|
||||||
|
rc-update add pd-mapper boot
|
|
@ -0,0 +1 @@
|
||||||
|
device-lenovo-q706f-nonfree-firmware.post-install
|
|
@ -0,0 +1,2 @@
|
||||||
|
#!/bin/sh
|
||||||
|
rc-update add qbootctl default
|
|
@ -0,0 +1 @@
|
||||||
|
device-lenovo-q706f.post-install
|
45
device/testing/device-lenovo-q706f/deviceinfo
Normal file
45
device/testing/device-lenovo-q706f/deviceinfo
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
# Reference: <https://postmarketos.org/deviceinfo>
|
||||||
|
# Please use double quotes only. You can source this file in shell
|
||||||
|
# scripts.
|
||||||
|
|
||||||
|
deviceinfo_format_version="0"
|
||||||
|
deviceinfo_name="Lenovo Xiaoxin Pad Pro 12.6"
|
||||||
|
deviceinfo_manufacturer="Lenovo"
|
||||||
|
deviceinfo_codename="lenovo-q706f"
|
||||||
|
deviceinfo_year="2021"
|
||||||
|
deviceinfo_arch="aarch64"
|
||||||
|
|
||||||
|
# Device related
|
||||||
|
deviceinfo_gpu_accelerated="true"
|
||||||
|
deviceinfo_chassis="tablet"
|
||||||
|
deviceinfo_keyboard="false"
|
||||||
|
deviceinfo_external_storage="false"
|
||||||
|
deviceinfo_screen_width="1600"
|
||||||
|
deviceinfo_screen_height="2560"
|
||||||
|
|
||||||
|
# Kernel options
|
||||||
|
deviceinfo_dtb="qcom/sm8250-lenovo-q706f"
|
||||||
|
deviceinfo_append_dtb="true"
|
||||||
|
deviceinfo_flash_kernel_on_update="true"
|
||||||
|
|
||||||
|
|
||||||
|
# Bootloader related
|
||||||
|
deviceinfo_flash_method="fastboot"
|
||||||
|
deviceinfo_kernel_cmdline="quiet"
|
||||||
|
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="0x01000000"
|
||||||
|
deviceinfo_flash_offset_second="0x00f00000"
|
||||||
|
deviceinfo_flash_offset_tags="0x00000100"
|
||||||
|
deviceinfo_flash_pagesize="4096"
|
||||||
|
deviceinfo_flash_sparse="true"
|
||||||
|
|
||||||
|
# Required for devices using UFS as storage (instead of e.g. eMMC)
|
||||||
|
deviceinfo_rootfs_image_sector_size="4096"
|
||||||
|
|
||||||
|
# Support super partition flashing
|
||||||
|
deviceinfo_super_partitions="/dev/sda17 /dev/sda17"
|
3
device/testing/device-lenovo-q706f/modules-initfs
Normal file
3
device/testing/device-lenovo-q706f/modules-initfs
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
spi-geni-qcom
|
||||||
|
goodix_berlin_core
|
||||||
|
goodix_berlin_spi
|
64
device/testing/firmware-lenovo-q706f/APKBUILD
Normal file
64
device/testing/firmware-lenovo-q706f/APKBUILD
Normal file
|
@ -0,0 +1,64 @@
|
||||||
|
pkgname=firmware-lenovo-q706f
|
||||||
|
pkgver=20240726
|
||||||
|
pkgrel=0
|
||||||
|
pkgdesc="Firmware for Lenovo Xiaoxin Pad Pro 12.6 (Lenovo Tab P12 Pro)"
|
||||||
|
subpackages="
|
||||||
|
$pkgname-adreno
|
||||||
|
$pkgname-adsp
|
||||||
|
$pkgname-cdsp
|
||||||
|
$pkgname-slpi
|
||||||
|
$pkgname-venus
|
||||||
|
"
|
||||||
|
url="https://github.com/silime/lenovo-sm8250-q706f-firmware"
|
||||||
|
arch="aarch64"
|
||||||
|
license="proprietary"
|
||||||
|
options="!check !strip !archcheck !tracedeps pmb:cross-native"
|
||||||
|
_commit="cec1c1d8b4105caa661cf3212a5894981c1c8954"
|
||||||
|
source="https://github.com/silime/lenovo-sm8250-q706f-firmware/archive/$_commit.zip"
|
||||||
|
builddir="$srcdir/lenovo-sm8250-q706f-firmware-$_commit"
|
||||||
|
|
||||||
|
package() {
|
||||||
|
# parent package is empty
|
||||||
|
mkdir -p "$pkgdir"
|
||||||
|
}
|
||||||
|
|
||||||
|
# lenovo q706f boots with secure boot, it can only load signed firmwares.
|
||||||
|
adreno() {
|
||||||
|
pkgdesc="lenovo q706f adreno firmware"
|
||||||
|
depends="firmware-qcom-adreno-a650"
|
||||||
|
ls "$builddir"
|
||||||
|
install -Dm644 "$builddir"/sm8250/q706f/a650_zap.mbn -t \
|
||||||
|
"$subpkgdir/lib/firmware/qcom/sm8250/q706f/"
|
||||||
|
}
|
||||||
|
|
||||||
|
adsp() {
|
||||||
|
pkgdesc="lenovo q706f adsp firmware"
|
||||||
|
|
||||||
|
install -Dm644 "$builddir"/sm8250/q706f/adsp* -t \
|
||||||
|
"$subpkgdir/lib/firmware/qcom/sm8250/q706f/"
|
||||||
|
}
|
||||||
|
|
||||||
|
cdsp() {
|
||||||
|
pkgdesc="lenovo q706f cdsp firmware"
|
||||||
|
|
||||||
|
install -Dm644 "$builddir"/sm8250/q706f/cdsp* -t \
|
||||||
|
"$subpkgdir/lib/firmware/qcom/sm8250/q706f/"
|
||||||
|
}
|
||||||
|
|
||||||
|
slpi() {
|
||||||
|
pkgdesc="lenovo q706f slpi firmware"
|
||||||
|
|
||||||
|
install -Dm644 "$builddir"/sm8250/q706f/slpi* -t \
|
||||||
|
"$subpkgdir/lib/firmware/qcom/sm8250/q706f/"
|
||||||
|
}
|
||||||
|
|
||||||
|
venus() {
|
||||||
|
pkgdesc="lenovo q706f venus firmware"
|
||||||
|
|
||||||
|
install -Dm644 "$builddir"/sm8250/q706f/venus.mbn -t \
|
||||||
|
"$subpkgdir/lib/firmware/qcom/sm8250/q706f/"
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
6b5cf73808c2a7cd480d3fa008564cf9b69c4c3303761173adcf094c9a70b08c295890b7d5fa5f685a983949443d757749a71080077a3da27758309a6cd5534a cec1c1d8b4105caa661cf3212a5894981c1c8954.zip
|
||||||
|
"
|
65
device/testing/linux-lenovo-q706f/APKBUILD
Normal file
65
device/testing/linux-lenovo-q706f/APKBUILD
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
# Kernel config based on: arch/arm64/configs/defconfig
|
||||||
|
# Maintainer: chalkin Deng <chalkin@yeah.net>
|
||||||
|
_flavor="lenovo-q706f"
|
||||||
|
pkgname=linux-$_flavor
|
||||||
|
pkgver=6.10.0
|
||||||
|
pkgrel=0
|
||||||
|
pkgdesc="Mainline kernel fork for Lenovo SM8250"
|
||||||
|
arch="aarch64"
|
||||||
|
_carch="arm64"
|
||||||
|
url="https://github.com/silime/linux"
|
||||||
|
license="GPL-2.0-only"
|
||||||
|
options="!strip !check !tracedeps
|
||||||
|
pmb:cross-native
|
||||||
|
pmb:kconfigcheck-community
|
||||||
|
"
|
||||||
|
makedepends="
|
||||||
|
bash
|
||||||
|
bison
|
||||||
|
findutils
|
||||||
|
flex
|
||||||
|
openssl-dev
|
||||||
|
perl
|
||||||
|
postmarketos-installkernel
|
||||||
|
python3
|
||||||
|
"
|
||||||
|
_tag="sm8250-$pkgver"
|
||||||
|
_config="config-$_flavor.$arch"
|
||||||
|
_commit="d0ee36285ee039b9e0bfc854761d475bdef1a23b"
|
||||||
|
|
||||||
|
source="
|
||||||
|
$pkgname-$_tag.tar.gz::https://github.com/silime/linux/archive/refs/tags/$_tag.tar.gz
|
||||||
|
$_config
|
||||||
|
"
|
||||||
|
builddir="$srcdir/linux-$_tag"
|
||||||
|
|
||||||
|
prepare() {
|
||||||
|
default_prepare
|
||||||
|
cp "$srcdir/config-$_flavor.$arch" .config
|
||||||
|
}
|
||||||
|
|
||||||
|
build() {
|
||||||
|
unset LDFLAGS
|
||||||
|
make ARCH="$_carch" CC="${CC:-gcc}" \
|
||||||
|
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-$_flavor"
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
mkdir -p "$pkgdir"/boot
|
||||||
|
|
||||||
|
make zinstall modules_install dtbs_install \
|
||||||
|
ARCH="$_carch" \
|
||||||
|
INSTALL_PATH="$pkgdir"/boot/ \
|
||||||
|
INSTALL_MOD_PATH="$pkgdir" \
|
||||||
|
INSTALL_MOD_STRIP=1 \
|
||||||
|
INSTALL_DTBS_PATH="$pkgdir/boot/dtbs"
|
||||||
|
rm -f "$pkgdir"/lib/modules/*/build "$pkgdir"/lib/modules/*/source
|
||||||
|
|
||||||
|
install -D "$builddir"/include/config/kernel.release \
|
||||||
|
"$pkgdir"/usr/share/kernel/$_flavor/kernel.release
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
13fd93a34bc6c76a8570661aa5aca77e00e348ea790997191d72469da79f64ae9e170ad39095b8b7bd570d57740f636cd4f9e018addc4f26e880b41cd1122d80 linux-lenovo-q706f-sm8250-6.10.0.tar.gz
|
||||||
|
e16347f8ab87704ae629dfbb57649705746d83f8ab41b21331d4d7843e67f4ee92b862c967b5404e30d5681925331ee6b161db20a4f7c52776fb942205d3d009 config-lenovo-q706f.aarch64
|
||||||
|
"
|
8223
device/testing/linux-lenovo-q706f/config-lenovo-q706f.aarch64
Normal file
8223
device/testing/linux-lenovo-q706f/config-lenovo-q706f.aarch64
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue