Bug 1045307
| Summary: | Audio HDMI test failed with Error: aplay command failed | |||
|---|---|---|---|---|
| Product: | [Retired] Red Hat Hardware Certification Program | Reporter: | bhesha <sha.he> | |
| Component: | Test Suite (tests) | Assignee: | Greg Nichols <gnichols> | |
| Status: | CLOSED ERRATA | QA Contact: | Red Hat Kernel QE team <kernel-qe> | |
| Severity: | medium | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | 1.6.5 | CC: | bbrock, gnichols, jherrman, jkysela, juzou, qcai, rlandry, sha.he, yxue | |
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | x86_64 | |||
| OS: | Linux | |||
| Whiteboard: | ||||
| Fixed In Version: | hwcert-client 1.6.5.2-20140731.1 | Doc Type: | Bug Fix | |
| Doc Text: |
Due to limited support of the pulseaudio server for multiple High-Definition Multi-media Interface (HDMI) devices per sound card, audio would previously sometimes not function properly on specific Intel and Nvidia configurations, such as the Haswell microarchitecture processors. With this update, the support for multiple HDMI devices per sound card has been implemented for pulseaudio, and HDMI audio output now works in the described scenarios as expected.
|
Story Points: | --- | |
| Clone Of: | ||||
| : | 1084578 1095750 (view as bug list) | Environment: | ||
| Last Closed: | 2014-08-20 08:09:08 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 1084578, 1109359 | |||
| Attachments: | ||||
Hi Redhat, Could you please check and update to us? The log from the attachment: Sound Card: udev device: /devices/pci0000:00/0000:00:03.0/sound/card0 ------------------------------------------------------ SUBSYSTEM sound ID_VENDOR_ID 0x8086 ID_VENDOR_FROM_DATABASE Intel Corporation DEVPATH /devices/pci0000:00/0000:00:03.0/sound/card0 UDEV_LOG 3 ID_MODEL_FROM_DATABASE Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller ID_PATH pci-0000:00:03.0 SOUND_INITIALIZED 1 info.udi /devices/pci0000:00/0000:00:03.0/sound/card0 ID_MODEL_ID 0x0c0c SOUND_FORM_FACTOR internal ID_BUS pci /proc/asound/card0/pcm8p/info card: 0 device: 8 subdevice: 0 stream: PLAYBACK id: HDMI 2 name: HDMI 2 subname: subdevice #0 class: 0 subclass: 0 subdevices_count: 1 subdevices_avail: 1 /proc/asound/card0/pcm7p/info card: 0 device: 7 subdevice: 0 stream: PLAYBACK id: HDMI 1 name: HDMI 1 subname: subdevice #0 class: 0 subclass: 0 subdevices_count: 1 subdevices_avail: 1 /proc/asound/card0/pcm3p/info card: 0 device: 3 subdevice: 0 stream: PLAYBACK id: HDMI 0 name: HDMI 0 subname: subdevice #0 class: 0 subclass: 0 subdevices_count: 1 subdevices_avail: 1 This test plays a sound sample and records it to another file. Please use the Volume Control application and insure that the Capture settings will record the sound. Continue? (y|n) response: y starting recording while playing demo sound Error: aplay command failed
What is the output of:
>aplay /usr/share/sounds/alsa/Front_Right.wav -D plughw:0
Thanks!
Created attachment 849102 [details]
HDMI settings for Audio test
Hi Grey, Thank you for reply. Please help to check our HDMI settings, attachment above "HDMI settings for Audio test" shows the detail. This system is based on the Intel processor family codenamed "Haswell". There is a problem with HDMI audio in the "Haswell" processors that requires the use of a newer kernel than the one we provided in RHEL 6.5. Please download kernel 2.6.32-431.1.2.el6 from RHN, install it, and then run only the AUDIO and INFO tests with the new kernel. Here are links to the kernel on RHN: x86_64 https://rhn.redhat.com/rhn/software/packages/details/Overview.do?pid=832323 i686 https://rhn.redhat.com/rhn/software/packages/details/Overview.do?pid=832277 That should allow the AUDIO test to complete successfully, but you will see a warning during the INFO test. The warning is there because INFO detects a newer kernel than 6.5, but the review team will not reject your results because of that. Please let us know if the AUDIO test passes successfully with the new kernel. Created attachment 870213 [details]
HDMI audio test with kernel 2.6.32-431.1.2
Hi Gary, Thank you for support us always. I checked both with kernel 2.6.32-431.1.2.el6 and kernel 2.6.32-431.5.1.el6, we got the same error message as before when do HDMI audio test. I attached tested reported package "HDMI audio test with kernel 2.6.32-431.1.2", would you please check it? The new results shows card0 fails and card1 passed. Unfortunately the results appear to match the earlier attach and aplay is not reporting much to work with, just the "Error: aplay command failed". It does show the analog audio seems to be working. On the updated kernel, what is the output from the aplay command when invoked from the command line using the hdmi output? The wav file suggested in comment #3 is a good choice for a sample. -Rob Hi Rob, We checked two configs that have "Error: aplay command failed" issue. After applied "aplay /usr/share/sounds/alsa/Front_Right.wav -D plughw:0" on them, they both returned "[root@localhost test]# aplay /usr/share/sounds/alsa/Front_Right.wav -d plughw:0 Playing WAVE '/usr/share/sounds/alsa/Front_Right.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono" . It seems the command can be excuted normally. However, we can not hear sound that was played with below HDMI device config: 00:03.0 0403: 8086:0a0c (rev 0b) Subsystem: 1179:0001 Flags: bus master, fast devsel, latency 0, IRQ 48 Memory at f0630000 (64-bit, non-prefetchable) [size=16K] Capabilities: [50] Power Management version 2 Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit- Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00 Kernel driver in use: snd_hda_intel Kernel modules: snd-hda-intel We can hear sound normally after run the command with below HDMI device config: 00:03.0 0403: 8086:0c0c (rev 06) Subsystem: 1179:0001 Flags: bus master, fast devsel, latency 0, IRQ 35 Memory at e4630000 (64-bit, non-prefetchable) [size=16K] Capabilities: [50] Power Management version 2 Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit- Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00 Kernel driver in use: snd_hda_intel Kernel modules: snd-hda-intel Hi Rob, Could you please help to check and update to us? Hi, Just a quick update, I'm checking internally to find out why Haswell is providing two unique pci ID's for HDMI audio to see if that provides any insight. Can we get a copy of the output from 'alsa-info.sh --no-upload' on this system? Thanks. Created attachment 877083 [details]
This is for 00:03.0 0403: 8086:0c0c (rev 06)
Created attachment 877084 [details]
This is for 00:03.0 0403: 8086:0a0c (rev 0b)
Hi Rob, I attached the files for these two configs for your check. Due to we have to do Redhat shipment on 4/B, so please help to check and fix the issue soon. Sorry for push. Please, provide also contents of the /proc/asound/card0/eld* files. The issue with newer Haswell-ULT chipset may be caused that the graphics driver does not provide correct information to the sound driver. The co-operation is required, because the graphics driver does the handshake with the monitor (connected HDMI device) to get the sound parameters. You already reported graphics issues through: bug#1023244 Created attachment 877912 [details]
eld#0.0: This is for 00:03.0 0403: 8086:0c0c (rev 06)
This is Haswell chipset (Not Ult), we can hear sound from HDMI output, but it is is also found aplay command fail issue.
Created attachment 877913 [details]
eld#0.1: This is for 00:03.0 0403: 8086:0a0c (rev 0b)
This is Haswell Ult chipset, we cannot hear sound from HDMI output, but it is also found aplay command fail issue.
Hi Jaroslav, We found all chipsets (Ult and Non-Ult) have the aplay command fail issue. The different is Haswell chipset (Not Ult) can be heard sound from HDMI output, but Haswell Ult chipset can not. I attached the files of both chipsets, please help to check them. Hi Jaroslav, We don't think "Error: aplay command failed" is caused by graphics driver does not provide correct information to the sound driver. Because we found Haswell chipset(Non-ULT) also have the same failure. Could you please do further check of the issue again? Note that the right aplay command is: aplay /usr/share/sounds/alsa/Front_Right.wav -D plug:hdmi:0 Also, the monitor may be connected to different output port: -D plug:hdmi:0,0 # first number means card, second zero is implicit -D plug:hdmi:0,1 -D plug:hdmi:0,2 ... or you may use the direct hw device: -D plughw:0,3 -D plughw:0,7 -D plughw:0,8 ... Please, test. We tried below cases: 1. aplay /usr/share/sounds/alsa/Front_Right.wav -D plug:hdmi:0 It was excuted successfully, but no sound can be heard. 2. aplay /usr/share/sounds/alsa/Front_Right.wav -D plug:hdmi:0,0 aplay /usr/share/sounds/alsa/Front_Right.wav -D plug:hdmi:0,1 ... They all show error: aplay:main:696: audio open error: No such file or directory 3. aplay /usr/share/sounds/alsa/Front_Right.wav -D plug:hw:1 It was excuted successfully,sound also can be heard well. Hi Jaroslav, Could you please show us the status of the issue? (In reply to bhesha from comment #24) > We tried below cases: > 1. aplay /usr/share/sounds/alsa/Front_Right.wav -D plug:hdmi:0 > It was excuted successfully, but no sound can be heard. It appears like a kernel issue. There are some updates in the Linux kernel upstream to add the proper support for the Haswell hardware. They will be available in the next kernel updates for RHEL6. We are trying to solve the aplay error issue for the systems with the functional HDMI audio. Created attachment 882036 [details]
audio.py patch checking for HDMI device number, and adding it to the play command
Patch based on code in above comment.
Please try the attached patch. Created attachment 882227 [details]
test with patch
Hi Greg,
Please see below step we tested:
1. Install audio.patch
#Install /desktop/audio.patch /usr/share/hwcert/tests/audio/
2. Run hwcert, it can see two same HDMI test and get same aplay command failed, please see attachment results
During test, no sound was played.
Judging by the log, I don't think the patch was applied. Could you check this, and attach the file: /usr/share/hwcert/tests/audio/audio.py ? Thanks! Created attachment 882502 [details]
audio zip file
I attached audio folder, please unzip it.
Below is detail to update the audio.py with audio.patch:
[root@localhost ~]# cd /usr/share/hwcert/tests/audio
[root@localhost audio]# ls -l
total 24
-rwxr-xr-x. 1 root root 2590 Apr 3 11:12 audio.patch
-rwxr-xr-x. 1 root root 4568 Apr 4 08:13 audio.py
-rw-r--r--. 2 root root 4088 Nov 7 20:13 audio.pyc
-rw-r--r--. 2 root root 4088 Nov 7 20:13 audio.pyo
-rw-r--r--. 1 root root 590 Nov 7 20:13 Makefile
[root@localhost audio]# patch -p1 < audio.patch
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff --git a/tests/audio/audio.py b/tests/audio/audio.py
|index 6d3c7dc..53137fa 100644
|--- a/tests/audio/audio.py
|+++ b/tests/audio/audio.py
--------------------------
File to patch: /usr/share/hwcert/tests/audio/audio.py
patching file /usr/share/hwcert/tests/audio/audio.py
Hunk #2 FAILED at 105.
Hunk #3 FAILED at 116.
2 out of 3 hunks FAILED -- saving rejects to file /usr/share/hwcert/tests/audio/audio.py.rej
You have new mail in /var/spool/mail/root
[root@localhost audio]# rm audio.patch
rm: remove regular file `audio.patch'? y
[root@localhost audio]# ls -l
total 32
-rwxr-xr-x. 1 root root 5389 Apr 4 08:27 audio.py
-rw-r--r--. 2 root root 4088 Nov 7 20:13 audio.pyc
-rw-r--r--. 2 root root 4088 Nov 7 20:13 audio.pyo
-rwxr-xr-x. 1 root root 4568 Apr 4 08:13 audio.py.orig
-rw-r--r--. 1 root root 1314 Apr 4 08:27 audio.py.rej
-rw-r--r--. 1 root root 590 Nov 7 20:13 Makefile
[root@localhost audio]#
Created attachment 882667 [details]
patched audio.py test file
I've attached the patched audio.py file - please replace /usr/share/hwcert/tests/audio/audio.py with it, and attach the results. Thanks! Created attachment 883814 [details]
try with new py file
It still has the issue with the new py file
------- Additional Comments from Rob Landry <rlandry>
Just to confirm, does audio play via hdmi normally using the gui test
interface?
>>We have two machines, one is Haswell chipset(8086:0c0c (rev 06)), the other is Haswell ULT chipset(8086:0a0c (rev 0b)), they have different failure as below:
On Haswell chipset (8086:0c0c (rev 06)), the audio is played normally with gui, but run aplay command failed
On Haswell ULT chipset (8086:0a0c (rev 0b)), the audio cannot be played normally with gui, and run aplay command failed too.
And we had delivered the same HWcert sample to you on March, would you please check with them?
Shipped on SHIPMENT_DATE 03/05/2014
Via Fedex tracking number 798123882221
to
Hardware Certification
Red Hat
314 Littleton Road
Westford, MA 01886
Hi bhesha, Would you please provide me with output of "aplay -l" and "aplay -L"? Relevant section of the log from attachment 883814 [details]:
This test plays a sound sample and records it to another file.
Please use the Volume Control application and insure that the
Capture settings will record the sound.
Continue? (y|n) response: y
starting recording while playing demo sound
aplay /usr/share/sounds/alsa/Front_Right.wav -D plug:hdmi:0,1
Error: aplay command failed
Please check below:
[root@localhost ~]# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: MID [HDA Intel MID], device 3: HDMI 0 [HDMI 0]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: MID [HDA Intel MID], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: MID [HDA Intel MID], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: PCH [HDA Intel PCH], device 0: ALC283 Analog [ALC283 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
[root@localhost ~]# aplay -L
default
Default
hdmi:CARD=MID,DEV=0
HDA Intel MID, HDMI 0
HDMI Audio Output
hdmi:CARD=MID,DEV=1
HDA Intel MID, HDMI 1
HDMI Audio Output
hdmi:CARD=MID,DEV=2
HDA Intel MID, HDMI 2
HDMI Audio Output
front:CARD=PCH,DEV=0
HDA Intel PCH, ALC283 Analog
Front speakers
surround40:CARD=PCH,DEV=0
HDA Intel PCH, ALC283 Analog
4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
HDA Intel PCH, ALC283 Analog
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
HDA Intel PCH, ALC283 Analog
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
HDA Intel PCH, ALC283 Analog
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
HDA Intel PCH, ALC283 Analog
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
[root@localhost ~]#
Hi bhesha, Thank you for the info Now please try following 3 commands and let us know if sound can be heard via HDMI port: aplay -D plughw:0,3 /usr/share/sounds/alsa/Front_Center.wav aplay -D plughw:0,7 /usr/share/sounds/alsa/Front_Center.wav aplay -D plughw:0,8 /usr/share/sounds/alsa/Front_Center.wav Please let me know if you already provided results for these commands Hi Yunlong, Please see below results: Haswell and Haswell ULT Chipsets has different results: aplay -D plughw:0,3 /usr/share/sounds/alsa/Front_Center.wav works on Haswell chipset aplay -D plughw:0,7 /usr/share/sounds/alsa/Front_Center.wav works on Haswell ULT chipset Hi bhesha, Thank you very much, it very helps Would you please let us know if you tested this command on errata? If yes, could you please retry on No errata ? Hi Yunlong, Thank you for support. We use kernel version v2.6.32-431.el6.x86_64 to do the check. So I don't think it has errata. Is it right? Hi bhesha, Yes, it is GA kernel without errata, I will check with Greg and Jaroslav Created attachment 885464 [details]
output of alsa-info.sh --no-upload
Created attachment 885895 [details]
revised audio.py test using amixer to determine device number
This revised test also will not attempt to record sound if amixer does not indicate capture support.
Please try the revised test. Thanks! Created attachment 886040 [details]
Haswell chipset result
The new file works on Haswell ULT chipset and make the HDMI audio test pass.
However, the issue remains on Haswell chipset,could you please check it on Haswell chipset?
Created attachment 886041 [details]
Haswell ULT chipset result
Hi Greg, Is any update of the issue? Hi Jianwei, I update status as below: HDMI issue: After I updated the packages as the errata said, the HDMI output function works well, however, the HWcert tool still reports same failure. So could you please check it in your side with the machine? SD card issue: As I installed DUP, the SD card function is normally. However, it seems the HWcert tool dose not work with the DUP. We don't find any test case of SD card and System information test report failure of the DUP. So could you please check it in your side with the machine too? We have to get pass HWcert before end of August. So please help to check these two issues ASAP! Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2014-1079.html |
Created attachment 839386 [details] HDMI audio test During Redhat HWcert test, we found Audio(HDMI)test failed with Error: aplay command failed We use below configuration Test machine: Intel QM87 chipset+intel CPU i7-4800MQ OS: RHEL server v2.6.32-431.el6.x86_64 GNOME2.28.2 Test suite: hwcert-client-1.6.5-25.1.el6, hwcert-server-1.6.5-25.1.el6, dt-15.14-2.EL6, stress-0.18.8-1.3.EL6, lmbench-3.0a7-6a.EL6 Steps to Reproduce: 1. Install RHEL server v2.6.32-431.el6.x86_64 GNOME2.28.2 to test machine 2. Install hwcert Test suite 3. Run audio test Actual results: When Expected results: Pass Additional info: We checked the HDMI audio output worked normally with external monitor