summaryrefslogtreecommitdiff
path: root/sys-kernel/asahi-sources
diff options
context:
space:
mode:
Diffstat (limited to 'sys-kernel/asahi-sources')
-rw-r--r--sys-kernel/asahi-sources/Manifest5
-rw-r--r--sys-kernel/asahi-sources/asahi-sources-6.6.0_p15.ebuild69
-rw-r--r--sys-kernel/asahi-sources/files/asahi-sources-6.6.0_p15-enable-speakers-stage1.patch78
-rw-r--r--sys-kernel/asahi-sources/files/asahi-sources-6.6.0_p15-enable-speakers-stage2.patch47
-rw-r--r--sys-kernel/asahi-sources/metadata.xml18
5 files changed, 217 insertions, 0 deletions
diff --git a/sys-kernel/asahi-sources/Manifest b/sys-kernel/asahi-sources/Manifest
new file mode 100644
index 000000000000..b7c96c61e9f4
--- /dev/null
+++ b/sys-kernel/asahi-sources/Manifest
@@ -0,0 +1,5 @@
+AUX asahi-sources-6.6.0_p15-enable-speakers-stage1.patch 3053 BLAKE2B d93a2b91a526fe3db72b7308953ce3c0789d8fdb64d14cbb96efeb0923632be46350cd0e7c07163ce05ae52bc0b8825229cffd7c4b35afacb678c963dff9e050 SHA512 86d1c7f3392523039b2803fe5f4ee3b386e1284445d2072c747f1d4936a4cc5e1aa3b8b17b80ebb97b70bcf2b4bd6603df373a94fbc23ca3cc1f89c0b6ad6407
+AUX asahi-sources-6.6.0_p15-enable-speakers-stage2.patch 1609 BLAKE2B eb51b5aeca1f44589373c212aa6e8e3dd0f0c2ee5a7e78e9a6a48ad9ce3337b649a4727b801b583dc4c43857494a8c43caba061ee564c7358d3db308fde91231 SHA512 9da0942b20f0566ff4eb1e4da5ab670cce41293abaf266414ad3b93f4790ef52e8ad92830ddee26fbd1f0287238bf261d8a1edc471427b1581f5cce00880973e
+DIST asahi-sources-6.6.0_p15.tar.gz 229858421 BLAKE2B f0cdce0421bb8637d52e82d2ff0b7e07c29e828783c7cb8733f1582916be81bfd14a0b6a98f51f633ee9da3d10aa1fff6b27c5779bd9fa55c1d04615173d6d4b SHA512 b261e3813f1c0f5bae3a24e7ed0dce41470cfe2ee965ab0121d41793aa08f72d0d91be633f7ba0317f265a6e98a7a134cf86a29e7d48dbb58c5f5f7a3a13cc53
+EBUILD asahi-sources-6.6.0_p15.ebuild 1844 BLAKE2B 68b95d85619d47129b0ada1cff829f751ad6c906c6abd4ef85be4505b61ce8afba32de9580cedabf8be968b3dec3c16974f76ddb224a534c59cacde0134d606c SHA512 0189027d307a5d062e9146112bb54e5d810ab9efc3c4e98abde2b9585edab59de7e094fd11ee5d560f0a2d41bb66205367822fda27d89a71430a6bdaaedf210c
+MISC metadata.xml 606 BLAKE2B 81abc1eb15c66fbc4b2039b161e0bc06e8c6ce5e58727fca8ef80778db4dd04bc48486479d795c91e6181cd4e3f974b3ff7e3f6479e98e8271ccf4bdfd22b02e SHA512 c5e3349ebbbd7d04a0ac261c93df705b34882a3ed2472f28d90ef902377f5a89d3b5454e94b7f40c39c5d1745aedbd1267a607c189ff09917e77f0ed78009395
diff --git a/sys-kernel/asahi-sources/asahi-sources-6.6.0_p15.ebuild b/sys-kernel/asahi-sources/asahi-sources-6.6.0_p15.ebuild
new file mode 100644
index 000000000000..f462385c5aac
--- /dev/null
+++ b/sys-kernel/asahi-sources/asahi-sources-6.6.0_p15.ebuild
@@ -0,0 +1,69 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+K_SECURITY_UNSUPPORTED="1"
+ETYPE="sources"
+#K_WANT_GENPATCHES="base extras experimental"
+#K_GENPATCHES_VER="5"
+K_NODRYRUN="1"
+
+inherit kernel-2
+detect_version
+detect_arch
+
+if [[ ${PV} != ${PV/_rc} ]] ; then
+ # $PV is expected to be of following form: 6.0_rc5_p1
+ MY_TAG="$(ver_cut 6)"
+ MY_P="asahi-$(ver_rs 2 - $(ver_cut 1-4))-${MY_TAG}"
+else
+ # $PV is expected to be of following form: 5.19.0_p1
+ MY_TAG="$(ver_cut 5)"
+ MY_P="asahi-$(ver_cut 1-2)-${MY_TAG}"
+fi
+
+DESCRIPTION="Asahi Linux kernel sources"
+HOMEPAGE="https://asahilinux.org"
+KERNEL_URI="https://github.com/AsahiLinux/linux/archive/refs/tags/${MY_P}.tar.gz -> ${PN}-${PV}.tar.gz"
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}"
+
+KEYWORDS="~arm64"
+IUSE="rust"
+
+DEPEND="
+ ${DEPEND}
+ rust? ( || ( dev-lang/rust[rust-src]
+ dev-lang/rust-bin[rust-src]
+ )
+ dev-util/bindgen
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-enable-speakers-stage1.patch"
+ "${FILESDIR}/${P}-enable-speakers-stage2.patch"
+)
+
+src_unpack() {
+ unpack ${PN}-${PV}.tar.gz
+ mv linux-${MY_P} linux-${KV_FULL} || die "Could not move source tree"
+}
+
+src_prepare() {
+ default
+ cd "${WORKDIR}/linux-${KV-FULL}" || die
+ # XXX: Genpatches do not yet work with Rust kernels
+ #handle_genpatches --set-unipatch-list
+ #[[ -n ${UNIPATCH_LIST} || -n ${UNIPATCH_LIST_GENPATCHES} || -n ${UNIPATCH_LIST_DEFAULT} ]] && \
+ # unipatch "${UNIPATCH_LIST_DEFAULT} ${UNIPATCH_LIST_GENPATCHES} ${UNIPATCH_LIST}"
+ #unpack_fix_install_path
+ #env_setup_xmakeopts
+ echo "-${MY_TAG}" > localversion.10-pkgrel || die
+ cd "${S}" || die
+}
+
+pkg_postinst() {
+ einfo "For more information about Asahi Linux please visit ${HOMEPAGE},"
+ einfo "or consult the Wiki at https://github.com/AsahiLinux/docs/wiki."
+ kernel-2_pkg_postinst
+}
diff --git a/sys-kernel/asahi-sources/files/asahi-sources-6.6.0_p15-enable-speakers-stage1.patch b/sys-kernel/asahi-sources/files/asahi-sources-6.6.0_p15-enable-speakers-stage1.patch
new file mode 100644
index 000000000000..1e5d9c74f1c1
--- /dev/null
+++ b/sys-kernel/asahi-sources/files/asahi-sources-6.6.0_p15-enable-speakers-stage1.patch
@@ -0,0 +1,78 @@
+From 385ea7b5023486aba7919cec8b6b3f6a843a1013 Mon Sep 17 00:00:00 2001
+From: Hector Martin <marcan@marcan.st>
+Date: Fri, 15 Dec 2023 20:38:32 +0900
+Subject: [PATCH] READ COMMIT MESSAGE! macaudio: Enable first round of models
+
+Enables j313, j293, j493, j314, j414, j274, j375, j473, j474, j475
+
+*** WARNING FOR DISTRO PACKAGERS WANTING TO APPLY THIS: ***
+*** YOU ABSOLUTELY NEED THIS PATCH IN YOUR LSP-PLUGINS PACKAGE ***
+
+https://github.com/lsp-plugins/lsp-dsp-lib/pull/20
+
+Do NOT enable speakers without that patch, on any model. It can/will
+result in nasty noise that could damage them.
+
+Signed-off-by: Hector Martin <marcan@marcan.st>
+---
+ sound/soc/apple/macaudio.c | 20 ++++++++++++--------
+ 1 file changed, 12 insertions(+), 8 deletions(-)
+
+diff --git a/sound/soc/apple/macaudio.c b/sound/soc/apple/macaudio.c
+index f5b349057a67e1..d2ced87e88c0e1 100644
+--- a/sound/soc/apple/macaudio.c
++++ b/sound/soc/apple/macaudio.c
+@@ -1490,23 +1490,27 @@ struct macaudio_platform_cfg macaudio_j180_cfg = {
+ false, AMP_SN012776, SPKR_1W1T, false, 10, -20,
+ };
+ struct macaudio_platform_cfg macaudio_j274_cfg = {
+- false, AMP_TAS5770, SPKR_1W, false, 20, -20,
++ true, AMP_TAS5770, SPKR_1W, false, 20, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j293_cfg = {
+- false, AMP_TAS5770, SPKR_2W, true, 15, -20,
++ true, AMP_TAS5770, SPKR_2W, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j313_cfg = {
+- false, AMP_TAS5770, SPKR_1W, true, 10, -20,
++ true, AMP_TAS5770, SPKR_1W, true, 10, -20,
+ };
+
+-struct macaudio_platform_cfg macaudio_j314_j316_cfg = {
++struct macaudio_platform_cfg macaudio_j314_cfg = {
++ true, AMP_SN012776, SPKR_2W1T, true, 15, -20,
++};
++
++struct macaudio_platform_cfg macaudio_j316_cfg = {
+ false, AMP_SN012776, SPKR_2W1T, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j37x_j47x_cfg = {
+- false, AMP_SN012776, SPKR_1W, false, 20, -20,
++ true, AMP_SN012776, SPKR_1W, false, 20, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j413_cfg = {
+@@ -1522,7 +1526,7 @@ struct macaudio_platform_cfg macaudio_j45x_cfg = {
+ };
+
+ struct macaudio_platform_cfg macaudio_j493_cfg = {
+- false, AMP_SN012776, SPKR_2W, true, 15, -20,
++ true, AMP_SN012776, SPKR_2W, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_fallback_cfg = {
+@@ -1558,9 +1562,9 @@ static const struct of_device_id macaudio_snd_device_id[] = {
+ /* j313 AID4 tas5770 10 2× 1W */
+ { .compatible = "apple,j313-macaudio", .data = &macaudio_j313_cfg },
+ /* j314 AID8 sn012776 15 2× 2W+1T */
+- { .compatible = "apple,j314-macaudio", .data = &macaudio_j314_j316_cfg },
++ { .compatible = "apple,j314-macaudio", .data = &macaudio_j314_cfg },
+ /* j316 AID9 sn012776 15 2× 2W+1T */
+- { .compatible = "apple,j316-macaudio", .data = &macaudio_j314_j316_cfg },
++ { .compatible = "apple,j316-macaudio", .data = &macaudio_j316_cfg },
+ /* j375 AID10 sn012776 15 1× 1W */
+ { .compatible = "apple,j375-macaudio", .data = &macaudio_j37x_j47x_cfg },
+ /* j413 AID13 sn012776 15 2× 1W+1T */
diff --git a/sys-kernel/asahi-sources/files/asahi-sources-6.6.0_p15-enable-speakers-stage2.patch b/sys-kernel/asahi-sources/files/asahi-sources-6.6.0_p15-enable-speakers-stage2.patch
new file mode 100644
index 000000000000..5a83346337fa
--- /dev/null
+++ b/sys-kernel/asahi-sources/files/asahi-sources-6.6.0_p15-enable-speakers-stage2.patch
@@ -0,0 +1,47 @@
+From 6a24102c06c95951ab992e2d41336cc6d4bfdf23 Mon Sep 17 00:00:00 2001
+From: Hector Martin <marcan@marcan.st>
+Date: Fri, 15 Dec 2023 20:40:53 +0900
+Subject: [PATCH] READ COMMIT MESSAGE! macaudio: Enable second round of models
+
+Enables j316, j413, j415, j416
+
+*** WARNING FOR DISTRO PACKAGERS WANTING TO APPLY THIS: ***
+*** YOU ABSOLUTELY NEED THIS PATCH IN YOUR LSP-PLUGINS PACKAGE ***
+
+https://github.com/lsp-plugins/lsp-dsp-lib/pull/20
+
+Do NOT enable speakers without that patch, on any model. It can/will
+result in nasty noise that could damage them.
+
+Signed-off-by: Hector Martin <marcan@marcan.st>
+---
+ sound/soc/apple/macaudio.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/sound/soc/apple/macaudio.c b/sound/soc/apple/macaudio.c
+index d2ced87e88c0e1..f347f08b7ad01e 100644
+--- a/sound/soc/apple/macaudio.c
++++ b/sound/soc/apple/macaudio.c
+@@ -1506,7 +1506,7 @@ struct macaudio_platform_cfg macaudio_j314_cfg = {
+ };
+
+ struct macaudio_platform_cfg macaudio_j316_cfg = {
+- false, AMP_SN012776, SPKR_2W1T, true, 15, -20,
++ true, AMP_SN012776, SPKR_2W1T, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j37x_j47x_cfg = {
+@@ -1514,11 +1514,11 @@ struct macaudio_platform_cfg macaudio_j37x_j47x_cfg = {
+ };
+
+ struct macaudio_platform_cfg macaudio_j413_cfg = {
+- false, AMP_SN012776, SPKR_1W1T, true, 15, -20,
++ true, AMP_SN012776, SPKR_1W1T, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j415_cfg = {
+- false, AMP_SN012776, SPKR_2W1T, true, 15, -20,
++ true, AMP_SN012776, SPKR_2W1T, true, 15, -20,
+ };
+
+ struct macaudio_platform_cfg macaudio_j45x_cfg = {
diff --git a/sys-kernel/asahi-sources/metadata.xml b/sys-kernel/asahi-sources/metadata.xml
new file mode 100644
index 000000000000..c0d62b1d2362
--- /dev/null
+++ b/sys-kernel/asahi-sources/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>jcalligeros99@gmail.com</email>
+ <name>James Calligeros</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>asahi@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="symlink">Automatically symlink the kernel sources to /usr/src/linux</flag>
+ <flag name="rust">Pull in the Rust For Linux dependencies</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">AsahiLinux/linux</remote-id>
+ </upstream>
+</pkgmetadata>