On Tue, 2003-08-12 at 07:21, Thomas Otto wrote: > > I have an iBook 900 Mhz on which I have recently installed Debian sid. > > I have > > a little trouble with the internal speakers : they do work, but the sound > > is > > extremely low. > > Changing the volume in aumix has no effect. I have read that the > > speaker > > volume is mapped to the "Spkr" channel of aumix, so I checked and found out > > that the "Spkr" channel is at maximum and cannot be moved (I cannot lower > > its > > value, while all other channels can be tuned noramlly). > > I use the ALSA modules on a 2.4.21-ben2 kernel > > > > Has anyone ran into this issue before, or has an idea of what might be > > the > > problem ? > > Any mixer I tried didn't work here either, but if you install pbbuttonsd > the keys from F3 to F5 (with the speaker symbol) will allow you to > increase or decrease the volume, maybe it somehow circumvents the > /dev/mixer device.
I found that unloading and reloading the i2c-keywest module after the snd-powermac module is loaded fixes the problem. It allows me to use the mixer to set the volume at a useful level after twiddling the volume up and down (alsa-mixer or pbbuttonsd) to set it properly. However, this also must be done after a sleep and wake cycle or otherwise the speaker goes either very quiet or insanely loud. To make this work automagically I did a few things. I added: post-install snd-powermac rmmod i2c-keywest && modprobe i2c-keywest to /etc/modutils/local and reran update-modules to fix the mixer at boot time. When pbbuttonsd starts it sets the mixer so you don't need to play with the volume. However, sleep and wake needs to have the voume twiddled before it comes back to normal. I added the file /etc/power/pwrctl-local as (someone with more experience is free to make the script more intelligent, it at the current moment unloads and loads at sleep and again at wake but it works for me): #!/bin/bash rmmod i2c-keywest && modprobe i2c-keywest I also had to add/fix the /etc/pbbuttonsd.conf with this line Script_Prof_Changed = "/etc/power/pwrctl-local" so that it calls the power script at sleep and wake which pmud should use by default if you don't use pbbuttonsd to replace pmud. --mike

