[alsa-devel] STAC92xx model problem on HP EliteBook 8740w
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.
Johannes Kimmel
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
On 05/04/2011 03:23 PM, Takashi Iwai wrote:
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 _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
Thanks for the hints. I'll keep you posted.
Johannes
On 05/04/2011 03:23 PM, Takashi Iwai wrote:
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 _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
I found out that using "0x1e 0x01452050" works. Now I have a problem getting the patch working. What I have so far is:
... options snd-hda-indel index=0 patch=hda-8740w ...
for my modprobe config and
[codec] 0x111d7603 0x103c1520 0
[pincfg] 0x1e 0x01452050
as the patch in /lib/firmware/hda-8740w.
I'm also a little puzzled about the "address of the codec" in the patch. I assumed 0 as this was what hda-analyzer had standing somewhere. There are no errors so far, but the pin config is not set when loading the module.
At Fri, 06 May 2011 18:06:37 +0200, Johannes Kimmel wrote:
On 05/04/2011 03:23 PM, Takashi Iwai wrote:
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 _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
I found out that using "0x1e 0x01452050" works. Now I have a problem getting the patch working. What I have so far is:
... options snd-hda-indel index=0 patch=hda-8740w ...
for my modprobe config and
[codec] 0x111d7603 0x103c1520 0
[pincfg] 0x1e 0x01452050
as the patch in /lib/firmware/hda-8740w.
I'm also a little puzzled about the "address of the codec" in the patch. I assumed 0 as this was what hda-analyzer had standing somewhere.
This is the address found in the corresponding codec proc file. In your case, it shows "Address: 0", so 0 is the right value.
There are no errors so far, but the pin config is not set when loading the module.
Check whether the patch parameter is passed correctly. See /sys/modules/snd_hda_intel/parameters/patch file. If it's there, at least the driver must show some message.
If it's not found there, the problem is the kernel configuration.
Takashi
participants (2)
-
Johannes Kimmel
-
Takashi Iwai