Search This Blog

Wednesday 20 October 2010

How to fix "No sound" on Debian powerpc (ppc)

I lost sound on my G4 digital audio running Debian testing after a kernel upgrade. After much searching of similar user problems it turns out that sound aoa is now the default for Powerpc.
This is fine if you have a later ppc.

For older machines you need snd_powermac

Using the links below I got my sound fixed!

# sound links and refs #
http://old.nabble.com/no-sound-on-powermac3%2C3-(powerbook-g4-550)-debian502-gnome-td25316718i20.html
http://wiki.debian.org/PowerpcSoundcards
http://forums.debian.net/viewtopic.php?f=6&t=39116
http://forums.debian.net/viewtopic.php?f=16&t=53708
http://forums.debian.net/viewtopic.php?t=38112
http://us.generation-nt.com/answer/sound-drivers-detected-mac-mini-g5-but-not-powermac-g4-help-170277311.html?page=1


The sound module needed for differing Powerpc machines:

snd-powermac is used to run on:
    AWACS, DACA, Burgundy, Tumbler, Keywest
snd_aoa_codec_onyx is used to run on:
    latest (last) generation of Apple PPC
snd_aoa_tas is uded to run on:
    iBooks and PowerBooks without digital
snd_aoa_codec_toonie is used to run on:
    Mac Mini
   
See which sound module is being used:
$ cat /proc/asound/version

If its the wrong one for your machine remove the module

I tried as root
# rmmod snd_aoa_i2sbus
# rmmod snd_aoa_fabric_layout
# rmmod snd_aoa_soundbus
and

# modprobe -r snd-aoa-i2sbus snd-aoa-soundbus snd-aoa

But as they were being used I couldn't remove the modules.
So I added them to the /etc/modprobe.d/alsa-base-blacklist.conf

# Uncomment these entries in order to blacklist unwanted modem drivers
blacklist snd-atiixp-modem
blacklist snd-intel8x0m
blacklist snd-via82xx-modem
blacklist snd-pcsp
blacklist snd_aoa_i2sbus
blacklist snd_aoa_fabric_layout
blacklist snd_aoa_soundbus

8<-------8<-------8<-------8<

Then reboot: and add the sound module for your machine. For me it was:

# shutdown -r now
# modprobe snd-powermac

still no sound?

# echo snd-powermac >> /etc/modules
# shutdown -r now

Since the alsaconfig command is no longer used run:

# alsactl init
Unknown hardware: "PMac Tumbler" "PowerMac Tumbler" "" "" ""
Hardware is initialized using a guess method

$ cat /proc/asound/cards
 0 [Tumbler        ]: PMac Tumbler - PowerMac Tumbler
                      PowerMac Tumbler (Dev 14) Sub-frame 0
                     
Yes. The correct sound module showed up.

Still no sound???

Wiggle the cable in the audio port :)

Success \0/

As I had a bad cable connection I'm not exactly sure a which point I got my sound back. I've just listed the steps I took.