summaryrefslogtreecommitdiff
path: root/system/easy-kernel/0210-fix-powerbook6-5-audio.patch
blob: 0db86533537ef26dfe56a9494e7c6a295bec43ee (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
diff -Naur linux-5.15.98/sound/aoa/fabrics/layout.c linux-5.15.98-aoapatched/sound/aoa/fabrics/layout.c
--- linux-5.15.98/sound/aoa/fabrics/layout.c	2021-11-01 07:53:10.000000000 +1100
+++ linux-5.15.98-aoapatched/sound/aoa/fabrics/layout.c	2023-03-26 10:26:44.164446653 +1100
@@ -112,6 +112,8 @@
 MODULE_ALIAS("aoa-device-id-22");
 MODULE_ALIAS("aoa-device-id-31");
 MODULE_ALIAS("aoa-device-id-35");
+MODULE_ALIAS("aoa-device-id-38");
+MODULE_ALIAS("aoa-device-id-40");
 MODULE_ALIAS("aoa-device-id-44");
 
 /* onyx with all but microphone connected */
@@ -368,7 +370,20 @@
 		.connections = tas_connections_nolineout,
 	  },
 	},
+	/* PowerBook6,4 */
+	{ .device_id = 40,
+	  .codecs[0] = {
+		.name = "tas",
+		.connections = tas_connections_nolineout,
+	  },
+	},
 	/* PowerBook6,5 */
+	{ .device_id = 38,
+	  .codecs[0] = {
+		.name = "tas",
+		.connections = tas_connections_all,
+	  },
+	},
 	{ .device_id = 44,
 	  .codecs[0] = {
 		.name = "tas",
diff -Naur linux-5.15.98/sound/aoa/soundbus/i2sbus/core.c linux-5.15.98-aoapatched/sound/aoa/soundbus/i2sbus/core.c
--- linux-5.15.98/sound/aoa/soundbus/i2sbus/core.c	2023-03-25 22:44:47.884607314 +1100
+++ linux-5.15.98-aoapatched/sound/aoa/soundbus/i2sbus/core.c	2023-03-25 22:57:44.774604351 +1100
@@ -197,8 +197,9 @@
 			 * We probably cannot handle all device-id machines,
 			 * so restrict to those we do handle for now.
 			 */
-			if (id && (*id == 22 || *id == 14 || *id == 35 ||
-				   *id == 31 || *id == 44)) {
+			if (id && (*id == 14 || *id == 22 || *id == 31 ||
+				   *id == 35 || *id == 38 || *id == 40 ||
+				   *id == 44)) {
 				snprintf(dev->sound.modalias, 32,
 					 "aoa-device-id-%d", *id);
 				ok = 1;