[alsa-devel] STAC92xx model problem on HP EliteBook 8740w

Takashi Iwai tiwai at suse.de
Wed May 4 15:23:21 CEST 2011


At Fri, 29 Apr 2011 23:26:20 +0200,
Johannes Kimmel wrote:
> 
> Hi,
> 
> I hope this is the right location for my problem.
> When don't specify the model for my soundcard, everything works except 
> spdif output over displayport. Correct led status, control names etc. 
> working fine.
> But when I want to use sound over displayport, one working option is 
> model=rev, but then my laptop-speakers don't work anymore.
> 
> I think there is maybe a right model missing, or at least I didn't find 
> the right.
> 
> Here are 2 alsa-infos:
> 
> spdif working:
> http://paste.pocoo.org/show/380474/
> 
> laptop-speaker working:
> http://paste.pocoo.org/show/380473/
> 
> I compile my kernel myself and I know the way to the alsa-drivers. So if 
> there's anything to try that might help solve the problem, just ask.

It's likely that BIOS doesn't set up the pin correctly for the digital
out.

There are two digital out pins, 0x1e and 0x1f.  The model=rev enables
both pins.

For debugging, try the following:

- Build the driver with CONFIG_SND_HDA_HWDEP=y,
  CONFIG_SND_HDA_RECONFIG=y, and CONFIG_SND_HDA_PATCH_LOADER=y
- Load the driver without model option.
  You'll have /sys/class/sound/hwC0D0/user_pin_configs and reconfig.
- Stop all sound-related applications, at best, stop X and work on
  Linux console
- Save the current mixer state, run "alsactl store" as root
- Write the 0x1e and 0x1f pin configurations, run as root like:
  # echo "0x1e 0x01452050
    0x1f 0x01452050" > /sys/class/sound/hwC0D0/user_pin_configs
- Reconfigure the sound driver
  # echo 1 > /sys/class/sound/hwC0D0/reconfig
- Restore the mixer state, run "alsactl restore" as root
- Now you'll have the digital out PCM

Once when this works, try to figure out which of the pins 0x1e and
0x1f is the really active.  In the procedure above, write only 0x1e or
0x1f entry, and reconfigure.

After you get a pin-config setup, you can write a "patch" and load it
via the firmware-loader automatically.  The information is found in
$linux/Documentation/sound/alsa/HD-Audio.txt.


Takashi


More information about the Alsa-devel mailing list