about summary refs log tree commit diff
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2020-06-20T17·38+0100
committertazjin <mail@tazj.in>2020-06-20T22·27+0000
commita8e25bc9d37d11713eede1bd737581da8f8607de (patch)
tree36d4f6c19036b327978d994fd52f13832aced54c
parent3b05be2fd0c0035977dbac731c26651b9ff3e373 (diff)
feat(3p/kernelPatches): Add kernel audio patch for ASUS TRX40 Pro r/1048
Without this patch, this board is not included in the pin map
overrides and audio basically doesn't work.

With this patch, the audio still doesn't work, but it can at least
correctly detect what is and isn't plugged in - so that's progress.

Change-Id: I66ca7d7a1e0e25a0212b9659381875ad4c590ffc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/542
Reviewed-by: lukegb <lukegb@tvl.fyi>
-rw-r--r--third_party/kernelPatches/trx40_usb_audio/default.nix9
-rw-r--r--third_party/kernelPatches/trx40_usb_audio/trx40_usb_audio.patch16
-rw-r--r--users/tazjin/nixos/frog/default.nix6
3 files changed, 31 insertions, 0 deletions
diff --git a/third_party/kernelPatches/trx40_usb_audio/default.nix b/third_party/kernelPatches/trx40_usb_audio/default.nix
new file mode 100644
index 000000000000..f753878f7cf8
--- /dev/null
+++ b/third_party/kernelPatches/trx40_usb_audio/default.nix
@@ -0,0 +1,9 @@
+# This patch adds the ASUS TRX40 Prime Pro Whatever Edition
+# motherboard to the list of boards for which the USB Audio connector
+# map has been fixed.
+{ ... }:
+
+{
+  name = "trx40_usb_audio";
+  patch = ./trx40_usb_audio.patch;
+}
diff --git a/third_party/kernelPatches/trx40_usb_audio/trx40_usb_audio.patch b/third_party/kernelPatches/trx40_usb_audio/trx40_usb_audio.patch
new file mode 100644
index 000000000000..d55b7bc362fe
--- /dev/null
+++ b/third_party/kernelPatches/trx40_usb_audio/trx40_usb_audio.patch
@@ -0,0 +1,16 @@
+diff --git a/sound/usb/mixer_maps.c b/sound/usb/mixer_maps.c
+index 0260c750e156..5ee82872e31b 100644
+--- a/sound/usb/mixer_maps.c
++++ b/sound/usb/mixer_maps.c
+@@ -539,6 +539,11 @@ static const struct usbmix_ctl_map usbmix_ctl_maps[] = {
+ 		.id = USB_ID(0x0b05, 0x1917),
+ 		.map = asus_rog_map,
+ 	},
++	{	/* ASUS TRX40 Prime */
++		.id = USB_ID(0x0b05, 0x1918),
++		.map = trx40_mobo_map,
++		.connector_map = trx40_mobo_connector_map,
++	},
+ 	{	/* MSI TRX40 Creator */
+ 		.id = USB_ID(0x0db0, 0x0d64),
+ 		.map = trx40_mobo_map,
diff --git a/users/tazjin/nixos/frog/default.nix b/users/tazjin/nixos/frog/default.nix
index a88763b58165..f0c9cd6e0ddf 100644
--- a/users/tazjin/nixos/frog/default.nix
+++ b/users/tazjin/nixos/frog/default.nix
@@ -34,6 +34,10 @@ in depot.lib.fix(self: {
     kernel.sysctl = {
       "kernel.perf_event_paranoid" = 1;
     };
+
+    kernelPatches = [
+      depot.third_party.kernelPatches.trx40_usb_audio
+    ];
   };
 
   hardware = {
@@ -233,6 +237,7 @@ in depot.lib.fix(self: {
       openssl
       pass
       pavucontrol
+      pciutils
       pinentry
       pinentry-emacs
       pwgen
@@ -245,6 +250,7 @@ in depot.lib.fix(self: {
       tokei
       tree
       unzip
+      usbutils
       vlc
       xclip
       yubico-piv-tool