S/PDIF indication wrong?
Hello!
On my ASUS P5P800-VM motherboard, the onboard AC97-chip (Realtek ALC655) does not indicate that there are any S/PDIF functionality available.
However, the manufacturer (Asus) claim that there are S/PDIF output on the board, and of course there is.
I created a patch that check the PCI subsystem vendor id and device id, and if it's a match to this board it ignores the AC97_EI_SPDIF bit when the controls are built.
This allows me to get the desired S/PDIF output to work just as expected.
I'm not sure this is good practise to just ignore this bit or force the bit to 1?
I have checked the BIOS for settings regarding S/PDIF, but there are none. The only audio setting available is to control if the chip shall be enabled or disabled.
What do you recommend in this case?
You can find more information about this issue on the bugtracker:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=2372
Regards
// Magnus
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
At Sat, 19 Aug 2006 09:37:01 +0200,
Quoted 14 lines · Magnus Sandin
Hello!
On my ASUS P5P800-VM motherboard, the onboard AC97-chip (Realtek ALC655) does not indicate that there are any S/PDIF functionality available.
However, the manufacturer (Asus) claim that there are S/PDIF output on the board, and of course there is.
I created a patch that check the PCI subsystem vendor id and device id, and if it's a match to this board it ignores the
AC97_EI_SPDIFbit when the controls are built.
This allows me to get the desired S/PDIF output to work just as expected.
Quoted 6 lines
I'm not sure this is good practise to just ignore this bit or force the bit to 1?
I have checked the BIOS for settings regarding S/PDIF, but there are none. The only audio setting available is to control if the chip shall be enabled or disabled.
Well, I'd call it a BIOS bug. But such a thing can always happen, of course...
Quoted 1 line
What do you recommend in this case?
I think your approach is OK. The only concern is that the board with the same PCI SSID might have a codec without SPDIF, but I guess the probability of this regression is quite low.
So, just send a patch for merging (maybe after 1.0.12 release).
Thanks,
Takashi
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
PATCH 1/1 Asus P5P800-VM, S/PDIF indication wrong?
Hello!
The attached patch will force building the S/PDIF controls on the PCU SSID for Asus P5P800-VM motherboard, even if the AC97_EI_SPDIF bit is not set.
Is this approach OK or do you guys want to have the check somewhere else?
Quoted 35 lines · Takashi Iwai
At Sat, 19 Aug 2006 09:37:01 +0200,
Quoted 13 lines · Magnus Sandin
Hello!
On my ASUS P5P800-VM motherboard, the onboard AC97-chip (Realtek ALC655) does not indicate that there are any S/PDIF functionality available.
However, the manufacturer (Asus) claim that there are S/PDIF output on the board, and of course there is.
I created a patch that check the PCI subsystem vendor id and device id, and if it's a match to this board it ignores the
AC97_EI_SPDIFbit when the controls are built.
This allows me to get the desired S/PDIF output to work just as expected.Quoted 7 lines
I'm not sure this is good practise to just ignore this bit or force the bit to 1?
I have checked the BIOS for settings regarding S/PDIF, but there are none. The only audio setting available is to control if the chip shall be enabled or disabled.
Well, I'd call it a BIOS bug. But such a thing can always happen, of course...
Quoted 2 lines
What do you recommend in this case?
I think your approach is OK. The only concern is that the board with the same PCI SSID might have a codec without SPDIF, but I guess the probability of this regression is quite low.
Quoted 7 lines
So, just send a patch for merging (maybe after 1.0.12 release).
Thanks,
Takashi
pci/ac97/ac97_codec.c +3 -1
@@ -1533,7 +1533,9 @@ }/* build S/PDIF controls */ -if ((ac97->ext_id &AC97_EI_SPDIF ) && !(ac97->scaps &AC97_SCAP_NO_SPDIF )) { +/* 0x1043, 0x810f ASUS P5P800-VM, which does not indicate S/PDIF capability */ +if (((ac97->subsystem_vendor ==0x1043 && ac97->subsystem_device ==0x810f ) || (ac97->ext_id &AC97_EI_SPDIF )) + && !(ac97->scaps &AC97_SCAP_NO_SPDIF )) {if (ac97->build_ops->build_spdif) {if ((err = ac97->build_ops->build_spdif (ac97)) <0 )return err;
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Alsa-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/alsa-devel
Re: [PATCH] Asus P5P800-VM, S/PDIF indication wrong?
At Mon, 21 Aug 2006 22:11:29 +0200,
Quoted 10 lines · Magnus Sandin
Hello!
The attached patch will force building the S/PDIF controls on the PCU SSID for Asus P5P800-VM motherboard, even if the
AC97_EI_SPDIFbit is not set.Is this approach OK or do you guys want to have the check somewhere else?
Signed-off-by Magnus Sandin ([email protected])
I prefer the one like below. Could you check whether it works?
Takashi
pci/ac97/ac97_codec.c +6 -0
@@ -1573,6 +1573,12 @@ static int snd_ac97_mixer_build(struct s }/* build S/PDIF controls */ + +/* Hack for ASUS P5P800-VM, which does not indicate S/PDIF capability */ +if (ac97->subsystem_vendor ==0x1043 && + ac97->subsystem_device ==0x810f ) + ac97->ext_id |=AC97_EI_SPDIF ; +if ((ac97->ext_id &AC97_EI_SPDIF ) && !(ac97->scaps &AC97_SCAP_NO_SPDIF )) {if (ac97->build_ops->build_spdif) {if ((err = ac97->build_ops->build_spdif (ac97)) <0 )
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
Re: [PATCH] Asus P5P800-VM, S/PDIF indication wrong?
I can confirm that that approach works as well!
Will this patch go into 1.0.12?
Regards
// Magnus Sandin
Quoted 26 lines · Takashi Iwai
At Mon, 21 Aug 2006 22:11:29 +0200,
Quoted 10 lines · Magnus Sandin
Hello!
The attached patch will force building the S/PDIF controls on the PCU SSID for Asus P5P800-VM motherboard, even if the
AC97_EI_SPDIFbit is not set.Is this approach OK or do you guys want to have the check somewhere else?
Signed-off-by Magnus Sandin ([email protected])I prefer the one like below. Could you check whether it works?
Takashi
diff -r
2359af36395epci/ac97/ac97_codec.cpci/ac97/ac97_codec.c +0
-0@@ -1573,6 +1573,12 @@ static int snd_ac97_mixer_build(struct s }
pci/ac97/ac97_codec.c static int snd_ac97_mixer_build(struct s · line 1584
Quoted 10 lines
pci/ac97/ac97_codec.c +6
-0/* build S/PDIF controls */ + +/* Hack for ASUS P5P800-VM, which does not indicate S/PDIF capability */ +if (ac97->subsystem_vendor ==0x1043 && + ac97->subsystem_device ==0x810f ) + ac97->ext_id |=AC97_EI_SPDIF ; +if ((ac97->ext_id &AC97_EI_SPDIF ) && !(ac97->scaps &AC97_SCAP_NO_SPDIF )) {if (ac97->build_ops->build_spdif) {if ((err = ac97->build_ops->build_spdif (ac97)) <0 )
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
Re: [PATCH] Asus P5P800-VM, S/PDIF indication wrong?
At Tue, 22 Aug 2006 21:57:25 +0200,
Quoted 4 lines · Magnus Sandin
I can confirm that that approach works as well!
Will this patch go into 1.0.12?
I guess it won't. It's in my local queue, but not committed to the public HG repo because of 1.0.12 freeze...
Takashi
Quoted 42 lines
Regards
// Magnus SandinQuoted 26 lines · Takashi Iwai
At Mon, 21 Aug 2006 22:11:29 +0200,
Quoted 10 lines · Magnus Sandin
Hello!
The attached patch will force building the S/PDIF controls on the PCU SSID for Asus P5P800-VM motherboard, even if the
AC97_EI_SPDIFbit is not set.Is this approach OK or do you guys want to have the check somewhere else?
Signed-off-by Magnus Sandin ([email protected])I prefer the one like below. Could you check whether it works?
Takashi
diff -r
2359af36395epci/ac97/ac97_codec.cpci/ac97/ac97_codec.c +0
-0@@ -1573,6 +1573,12 @@ static int snd_ac97_mixer_build(struct s }pci/ac97/ac97_codec.c static int snd_ac97_mixer_build(struct s · line 1584
Quoted 10 lines
pci/ac97/ac97_codec.c +6
-0/* build S/PDIF controls */ + +/* Hack for ASUS P5P800-VM, which does not indicate S/PDIF capability */ +if (ac97->subsystem_vendor ==0x1043 && + ac97->subsystem_device ==0x810f ) + ac97->ext_id |=AC97_EI_SPDIF ; +if ((ac97->ext_id &AC97_EI_SPDIF ) && !(ac97->scaps &AC97_SCAP_NO_SPDIF )) {if (ac97->build_ops->build_spdif) {if ((err = ac97->build_ops->build_spdif (ac97)) <0 )-------------------------------------------------------------------------
Quoted 9 lines
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Alsa-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/alsa-devel
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642