[PATCH] Add support for PowerMac3,5 in snd-aoa ALSA sound module
Linux User #330250
linuxuser330250 at gmx.net
Sun Feb 20 01:53:46 EST 2011
Hello!
About two years ago Johannes Berg wrote support for the PowerMac3,6 aka G4 MDD
which I was using as a desktop computer then. Johannes wrote all the code, and
I tested it.
I now have a PowerMac3,5 – yes, an earlier model.
This patch makes the snd-aoa ALSA sound module support the TAS3001C codec of
my Apple Power Mac G4 "Quicksilver" (2001 model). I suppose it will also work
for the "Quicksilver 2002", since both identify as PowerMac3,5.
The patch also changes a few comments to name the exact Power Mac model more
accurately in sound/aoa/fabrics/layout.c.
This is my first contribution to the linux kernel ever, so I hope you will be
kind to me. I am not a programmer, but adding already supported devices was a
task even I could accomplish.
Thanks,
Andreas aka Linux User #330250
---
diff -Naur linux-2.6.38-rc5-git2/sound/aoa/fabrics/layout.c linux-2.6.38-rc5-git2-aoa-PowerMac3,5/sound/aoa/fabrics/layout.c
--- linux-2.6.38-rc5-git2/sound/aoa/fabrics/layout.c 2011-01-05 01:50:19.000000000 +0100
+++ linux-2.6.38-rc5-git2-aoa-PowerMac3,5/sound/aoa/fabrics/layout.c 2011-02-17 18:43:26.000000000 +0100
@@ -111,6 +111,7 @@
MODULE_ALIAS("sound-layout-100");
MODULE_ALIAS("aoa-device-id-14");
+MODULE_ALIAS("aoa-device-id-21");
MODULE_ALIAS("aoa-device-id-22");
MODULE_ALIAS("aoa-device-id-35");
@@ -333,14 +334,14 @@
.connections = topaz_input,
},
},
- /* Quad PowerMac (analog in, analog/digital out) */
+ /* PowerMac11,2 (G5 Dual-Core and Quad) (analog in, analog/digital out) */
{ .layout_id = 68,
.codecs[0] = {
.name = "onyx",
.connections = onyx_connections_nomic,
},
},
- /* Quad PowerMac (digital in) */
+ /* PowerMac11,2 (G5 Dual-Core and Quad) (digital in) */
{ .layout_id = 69,
.codecs[0] = {
.name = "topaz",
@@ -521,14 +522,21 @@
.connections = onyx_connections_noheadphones,
},
},---
- /* PowerMac3,4 */
+ /* PowerMac3,4 (Digital Audio) */
{ .device_id = 14,
.codecs[0] = {
.name = "tas",
.connections = tas_connections_noline,
},
},
- /* PowerMac3,6 */
+ /* PowerMac3,5 (Quicksilver) */
+ { .device_id = 21,
+ .codecs[0] = {
+ .name = "tas",
+ .connections = tas_connections_noline,
+ },
+ },
+ /* PowerMac3,6 (Mirrored Drive Doors) */
{ .device_id = 22,
.codecs[0] = {
.name = "tas",
diff -Naur linux-2.6.38-rc5-git2/sound/aoa/soundbus/i2sbus/core.c linux-2.6.38-rc5-git2-aoa-PowerMac3,5/sound/aoa/soundbus/i2sbus/core.c
--- linux-2.6.38-rc5-git2/sound/aoa/soundbus/i2sbus/core.c 2011-01-05 01:50:19.000000000 +0100
+++ linux-2.6.38-rc5-git2-aoa-PowerMac3,5/sound/aoa/soundbus/i2sbus/core.c 2011-02-17 18:44:36.000000000 +0100
@@ -200,7 +200,7 @@
* 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)) {
+ if (id && (*id == 22 || *id == 21 || *id == 14 || *id == 35)) {
snprintf(dev->sound.modalias, 32,
"aoa-device-id-%d", *id);
ok = 1;
More information about the Linuxppc-dev
mailing list