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;