# Maintainer: Arnav Singh <me@arnavion.dev>
# Co-Maintainer: Jan Jasper de Kroon <jajadekroon@gmail.com>
_flavor=postmarketos-allwinner
_config="config-$_flavor.$CARCH"
pkgname=linux-$_flavor
pkgver=6.15.6_git20250710
pkgrel=1
_tag="orange-pi-6.15-20250710-2218"
pkgdesc="Kernel fork with Pine64 patches (megi's tree, slightly patched)"
arch="aarch64 armv7"
url="https://megous.com/git/linux/"
license="GPL-2.0-only"
makedepends="
	bison
	devicepkg-dev
	findutils
	flex
	gmp-dev
	installkernel
	mpc1-dev
	mpfr-dev
	openssl-dev
	perl
	rsync
	zstd
	bash
	"
options="!strip !check !tracedeps
	pmb:cross-native
	pmb:kconfigcheck-community
	pmb:kconfigcheck-netmount
	"
source="$pkgname-$_tag.tar.gz::https://codeberg.org/megi/linux/archive/$_tag.tar.gz
	config-$_flavor.aarch64
	config-$_flavor.armv7
	0001-dts-add-dontbeevil-pinephone-devkit.patch
	0002-dts-add-pinetab-dev-old-display-panel.patch
	0003-dts-pinetab-add-missing-ohci1.patch
	0004-dts-pinetab-make-audio-routing-consistent-with-pinep.patch
	0005-dts-pinephone-drop-modem-power-node.patch
	0006-drm-panel-simple-Add-Hannstar-TQTM070CB501.patch
	0007-ARM-dts-sun6i-Add-GoClever-Orion-70L-tablet.patch
	0008-drm-panel-simple-Add-Hannstar-HSD070IDW1-A.patch
	0009-ARM-dts-sun6i-Add-Lark-FreeMe-70.2S-tablet.patch
	0010-eMMC-workaround.patch
	0011-arm64-dts-allwinner-orangepi-3-fix-ethernet.patch
	"
builddir="$srcdir/linux"

case "$CARCH" in
	aarch64*) _carch="arm64" ;;
	arm*) _carch="arm" ;;
esac


prepare() {
	default_prepare

	REPLACE_GCCH=0 \
		. downstreamkernel_prepare
}

build() {
	unset LDFLAGS
	# V=1: workaround for pma#1990
	make ARCH="$_carch" CC="${CC:-gcc}" \
		KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-$_flavor" \
		CFLAGS_MODULE=-fno-pic \
		DTC_FLAGS="-@" \
		V=1
}

package() {
	downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor"

	make -j1 modules_install dtbs_install \
		ARCH="$_carch" \
		INSTALL_MOD_STRIP=1 \
		INSTALL_MOD_PATH="$pkgdir" \
		INSTALL_DTBS_PATH="$pkgdir/boot/dtbs"
}
sha512sums="
6cb6c3a219143c13a478d1fa4e967741343637eb3246caf15e6bfe0097b603b14e07820ca154b2fdd2da8cc2607c9c28fea20fb7687cf2a1dc0136728ea722c4  linux-postmarketos-allwinner-orange-pi-6.15-20250710-2218.tar.gz
be42ad32491b4644b5c1b3b21dc214fe4f5481325085affafe95014790c21023a50464a217f4b46d58aafb8a51bfd181fef87a38624723e149c0fea9c3b56a86  config-postmarketos-allwinner.aarch64
4e567377e8c8036111edd77ff6471ac4bf1e5b32762846ae7bc1c333565a7f1e4c363e9f307de133abb2abb27bee1af7416481eae9043ca4c39dffd068326736  config-postmarketos-allwinner.armv7
02fe8f1841aad2b8e0f337779ee6adc7df76cc97aef01fb99b993d4051dcaf2baecb450aa17ba4f11245ad0e22c13fb9402762666a58ee3811aaf8ee4b20d893  0001-dts-add-dontbeevil-pinephone-devkit.patch
9becb1cd0aa990ac3e875ce1d57b6387b0f08cdc73f5ea77fde5e5449d39ac3a6f24fc8b9f0d377ba4acb086a60dbb1caf15fd23e03acde4f8a76dca90e80864  0002-dts-add-pinetab-dev-old-display-panel.patch
3331f93da6a0289553064f5097f7fefa2e42cab572c850228c59bf979ba292757b3de88193d4ae39a70dff07445911bfaeef36ee6d72d20c1c80ac5e4797a075  0003-dts-pinetab-add-missing-ohci1.patch
25357ffb6b86811c6ee648668ec1e4dd06dd53243d9148bb0fdb0e69bfbcbba7b160acc931093fddc966e012f192c300650e59c03fbb07bd2a5515e3388afe06  0004-dts-pinetab-make-audio-routing-consistent-with-pinep.patch
6d8784e128dfe1ae7c6646204defadbf412830b973f444183b30f61cb0722efb8b85677db66043b46d750add77c39c9e906c83060c670836b8af6f0606c13bcf  0005-dts-pinephone-drop-modem-power-node.patch
7192c38d9c18b7a0b1c53393b5dfee5c6e7dc16fb5ca6854f37c8f7be8cafdaeb8f55ac214183d09e7456771191b6a0c653079237feea5e19f9ad14f36b8f95f  0006-drm-panel-simple-Add-Hannstar-TQTM070CB501.patch
a58b177a96e19fe1412731c7ffa4be8669727f2ced592e17e1fb1a9fd20304cdfb0b0861ebe37683610d5a94cc2b06358132c4b21af2d54a3beb96064cb83ec8  0007-ARM-dts-sun6i-Add-GoClever-Orion-70L-tablet.patch
6468d92a36dbe617d942479a56f4e2f552cf9fe10493201ebdff1d5afeb8f295cec3b1a2ae5c71879af6e9edff31c3e3c086f130c5446a55bc1992cf7d5bba2b  0008-drm-panel-simple-Add-Hannstar-HSD070IDW1-A.patch
416f27aa8bbf3747fb209c490e4047166f4c753b4ad155172d044a39817c346e806bdd88c22a2b18f76e386e2901bb0d0203bb149663760ea9a3c90b96d60fe2  0009-ARM-dts-sun6i-Add-Lark-FreeMe-70.2S-tablet.patch
100cc52413fc34f1a78363183e8a2ae07cbe93af6d18386ee93d11fd5b8db7d2b43f22c1bb63bc6f4e8e86645194216463937b70e89fb4c999a0c180560f91dc  0010-eMMC-workaround.patch
cea41b21579db7df50d0ef49cb5644c83d3a5ce70a1d5d9748b33667844f2915e69280e0bb56a53670d16c69b2bee62baf0283b20a94a3fd448d28c8a9cc715a  0011-arm64-dts-allwinner-orangepi-3-fix-ethernet.patch
"
