Aoa
From the ALSA wiki
(Machine IDs: added EveryMac.com and updated the link to The Apple Museum) |
(info added: hexadecimal to decimal conversion is required) |
||
| Line 1: | Line 1: | ||
== Apple Onboard Audio == | == Apple Onboard Audio == | ||
| - | |||
<tt>snd-aoa</tt> is the ALSA module for certain G4 PowerMacs, G5 PowerMacs and newer PowerBooks. | <tt>snd-aoa</tt> is the ALSA module for certain G4 PowerMacs, G5 PowerMacs and newer PowerBooks. | ||
The main module requires certain helper modules, such as <tt>snd-aoa-soundbus</tt>, <tt>snd-aoa-i2sbus</tt>, <tt>snd-aoa-fabric-layout</tt> as well as the module for the actual sound chip. | The main module requires certain helper modules, such as <tt>snd-aoa-soundbus</tt>, <tt>snd-aoa-i2sbus</tt>, <tt>snd-aoa-fabric-layout</tt> as well as the module for the actual sound chip. | ||
| Line 23: | Line 22: | ||
This should give a hexadecimal number of the device-id for the sound device. | This should give a hexadecimal number of the device-id for the sound device. | ||
| - | You can use <tt>snd-aoa</tt> if your layout-id or device-id is listed in <tt>/usr/src/linux/sound/aoa/fabrics/snd-aoa-fabric-layout.c</tt>. | + | |
| + | ''You can use <tt>snd-aoa</tt> if your layout-id or device-id (in decimal) is listed in <tt>/usr/src/linux/sound/aoa/fabrics/snd-aoa-fabric-layout.c</tt>.'' | ||
| + | |||
| + | In order to get the correct layout-id or device-id for comparison with the ones in the ALSA source files you need to convert them from hexadecimal to decimal using a suitable calculator. | ||
== Kernel configuration == | == Kernel configuration == | ||
Latest revision as of 21:55, 20 February 2011
Contents |
Apple Onboard Audio
snd-aoa is the ALSA module for certain G4 PowerMacs, G5 PowerMacs and newer PowerBooks. The main module requires certain helper modules, such as snd-aoa-soundbus, snd-aoa-i2sbus, snd-aoa-fabric-layout as well as the module for the actual sound chip.
On 2.6.x kernels do:
# cat /proc/device-tree/model
If you have a PowerMac or a PowerBook, you should now see a line like this:
PowerMac10,1
The PowerMac10,1 is a Mac Mini (PowerPC G4). You can find a list at EveryMac.com or at The Apple Museum.
Then, check if it features the layout-id device tree entry:[1]
# find /proc/device-tree/ -name layout-id | xargs hexdump -e '1/4 "0x%x\n"'
This will give a hexadecimal number if a layout-id is present.
Should your Mac not provide a layout-id, it is possible that it still works using the device-id. Since a lot of devices feature this property, it must be filtered to only show the device-id of the sound device. The following works if it gives one single line as output:
# find /proc/device-tree/ -name device-id | grep sound | xargs hexdump -e '1/4 "0x%x\n"'
This should give a hexadecimal number of the device-id for the sound device.
You can use snd-aoa if your layout-id or device-id (in decimal) is listed in /usr/src/linux/sound/aoa/fabrics/snd-aoa-fabric-layout.c.
In order to get the correct layout-id or device-id for comparison with the ones in the ALSA source files you need to convert them from hexadecimal to decimal using a suitable calculator.
Kernel configuration
If you use the in-kernel version of ALSA you need to enable the following additionally to ALSA sound in general:
CONFIG_SND_POWERMAC=m CONFIG_SND_AOA=m CONFIG_SND_AOA_FABRIC_LAYOUT=m CONFIG_SND_AOA_SOUNDBUS=m CONFIG_SND_AOA_SOUNDBUS_I2S=m
In addition, choose the driver for your PowerMac:
CONFIG_SND_AOA_ONYX=m CONFIG_SND_AOA_TAS=m CONFIG_SND_AOA_TOONIE=m
Resources
- Module-aoa at alsa-project.org
- Apple Support: all PowerMacs, PowerBooks and iBooks ever produced by Apple; the original Mac Mini (including the “Late 2005” silent update) is the only PowerPC-based Mac Mini
See also
- Powermac – a similar (but older and less advanced) ALSA module