Opened 2 years ago
Last modified 2 years ago
#17972 assigned bug
no sound with Framework Laptop (12th Gen Intel Core)
Reported by: | taos | Owned by: | korli |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | Drivers/Audio/HDA | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
According to listdev
, hrev56511 sees the following multimedia device but can't use it. Preferences - Media shows no usable devices.
device Multimedia controller (Audio device) [4|3|80] vendor 8086: Intel Corporation device 51c8: Alder Lake PCH-P High Definition Audio Controller
Relevant (maybe) parts of the syslog (full syslog of hrev56511 64bit attached):
KERN: PCI: [dom 0, bus 0] bus 0, device 31, function 3: vendor 8086, device 51c8, revision 01 KERN: PCI: class_base 04, class_function 03, class_api 80 KERN: PCI: vendor 8086: Intel Corporation KERN: PCI: device 51c8: Alder Lake PCH-P High Definition Audio Controller KERN: PCI: info: Multimedia controller (Audio device) KERN: PCI: line_size 10, latency 20, header_type 00, BIST 00 KERN: PCI: ROM base host 00000000, pci 00000000, size 00000000 KERN: PCI: cardbus_CIS 00000000, subsystem_id 0002, subsystem_vendor_id f111 KERN: PCI: interrupt_line ff, interrupt_pin 01, min_grant 00, max_latency 00 KERN: PCI: base reg 0: host 000000605d1b8000, pci 000000605d1b8000, size 00004000, flags 04 00 KERN: PCI: base reg 2: host 00000000, pci 00000000, size 00000000, flags 00 KERN: PCI: base reg 3: host 00000000, pci 00000000, size 00000000, flags 00 KERN: PCI: base reg 4: host 000000605d000000, pci 000000605d000000, size 00100000, flags 04 00 KERN: PCI: Capabilities: PM, vendspec, MSI
KERN: sis7018:init_hardware:ver:2.0.2 KERN: pci_reserve_device(0, 31, 3, hda) KERN: HDA: Detected controller @ PCI:0:31:3, IRQ:16, type 8086/51c8 (f111/0002) KERN: loaded driver /boot/system/add-ons/kernel/drivers/dev/audio/hmulti/hda KERN: es1370: init_hardware() KERN: emuxki: init_hardware() KERN: echo3g: init_hardware() KERN: echo3g: no card found KERN: auvia: init_hardware() KERN: auich: init_hardware() KERN: set MTRRs to: KERN: mtrr: 0: base: 0x43a00000, size: 0x80000, type: 0 KERN: mtrr: 1: base: 0x43ae0000, size: 0x10000, type: 0 KERN: mtrr: 2: base: 0x43ac0000, size: 0x20000, type: 0 KERN: mtrr: 3: base: 0x43af0000, size: 0x8000, type: 0 KERN: mtrr: 4: base: 0x60000000, size: 0x20000000, type: 0 KERN: mtrr: 5: base: 0x80000000, size: 0x80000000, type: 0 KERN: mtrr: 6: base: 0x605d1a0000, size: 0x10000, type: 0 KERN: mtrr: 7: base: 0x4000000000, size: 0x10000000, type: 1 KERN: update_mtrrs(): Succeeded setting MTRRs after ignoring uncacheable ranges up to size 0x4000. KERN: hda: enabling PCI bus mastering KERN: hda: enabling PCI memory access KERN: allocate_io_interrupt_vectors: allocated 1 vectors starting from 68 KERN: msi_allocate_vectors: allocated 1 vectors starting from 68 KERN: msi enabled: 0x0081 KERN: hda: using MSI vector 68 KERN: hda: DMA snooping: no KERN: hda: HDA v1.0, O:9/I:7/B:0, #SDO:1, 64bit:yes KERN: set MTRRs to: KERN: mtrr: 0: base: 0x43a00000, size: 0x80000, type: 0 KERN: mtrr: 1: base: 0x43ae0000, size: 0x10000, type: 0 KERN: mtrr: 2: base: 0x43ac0000, size: 0x20000, type: 0 KERN: mtrr: 3: base: 0x43af0000, size: 0x8000, type: 0 KERN: mtrr: 4: base: 0x60000000, size: 0x20000000, type: 0 KERN: mtrr: 5: base: 0x80000000, size: 0x80000000, type: 0 KERN: mtrr: 6: base: 0x605d1a0000, size: 0x10000, type: 0 KERN: mtrr: 7: base: 0x4000000000, size: 0x10000000, type: 1 KERN: update_mtrrs(): Succeeded setting MTRRs after ignoring uncacheable ranges up to size 0x4000. KERN: hda: Failed to get vendor and revision parameters: Operation timed out KERN: hda: no active codec KERN: msi_free_vectors: freeing 1 vectors starting from 68 KERN: free_io_interrupt_vectors: freeing 1 vectors starting from 68 KERN: set MTRRs to: KERN: mtrr: 0: base: 0x43a00000, size: 0x80000, type: 0 KERN: mtrr: 1: base: 0x43ac0000, size: 0x20000, type: 0 KERN: mtrr: 2: base: 0x43af0000, size: 0x8000, type: 0 KERN: mtrr: 3: base: 0x43ae0000, size: 0x10000, type: 0 KERN: mtrr: 4: base: 0x43afc000, size: 0x2000, type: 0 KERN: mtrr: 5: base: 0x43af8000, size: 0x4000, type: 0 KERN: mtrr: 6: base: 0x60000000, size: 0x20000000, type: 0 KERN: mtrr: 7: base: 0x80000000, size: 0x80000000, type: 0 KERN: mtrr: 8: base: 0x605d1a0000, size: 0x10000, type: 0 KERN: mtrr: 9: base: 0x4000000000, size: 0x10000000, type: 1 KERN: update_mtrrs(): Succeeded setting MTRRs after ignoring uncacheable ranges up to size 0x1000. KERN: hda: ERROR: No such device(80007007)
Attachments (7)
Change History (25)
by , 2 years ago
Attachment: | syslog_timestamp_hrev56511.txt added |
---|
comment:1 by , 2 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
by , 2 years ago
Attachment: | Media preferences hrev56521.png added |
---|
no audio input in Media Preferences of hrev56521
comment:4 by , 2 years ago
With hrev56521, there's still no audio input to choose from in Media Preferences:
However, compared to hrev56511, there's now an additional line in syslog (full syslog for hrev56521 attached):
KERN: hda: quirk disable miscbdcge on init
And the following has changed to 'yes':
KERN: hda: DMA snooping: yes
comment:7 by , 2 years ago
Replying to korli:
Does it work with FreeBSD or OpenBSD?
Not yet tested, still deciding between FreeBSD and OpenBSD and thinking about the best partition layout that fits on the internal disk and leaves enough room for shared data partitions (hey, those three (and soon four) operating systems have to co-exist and interact peacefully ;-) ).
lspci -vvv
under Linux doesn't add more useful information, does it?
00:1f.3 Audio device: Intel Corporation Alder Lake PCH-P High Definition Audio Controller (rev 01) (prog-if 80) Subsystem: Device f111:0002 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 32, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 196 IOMMU group: 15 Region 0: Memory at 605d1b8000 (64-bit, non-prefetchable) [size=16K] Region 4: Memory at 605d000000 (64-bit, non-prefetchable) [size=1M] Capabilities: <access denied> Kernel driver in use: snd_hda_intel Kernel modules: snd_hda_intel, snd_sof_pci_intel_tgl
comment:8 by , 2 years ago
No, I looked at some logs for this laptop at linux-hardware.org and couldn't spot anything. Or try https://github.com/helloSystem/hello live USB.
comment:9 by , 2 years ago
Replying to korli:
The device is like powered off. No idea what could help.
It appears in Media preferences after rebooting from Linux (but not after a cold boot°). However, it doesn't list the speakers, only the headphone output and still doesn't produce any sound.
° Unfortunately, rebooting from Linux prevents the touchpad from working, and starting WebPositive then kills the network connection after some 30 s.
The Live CD mode of the FreeBSD installation medium does produce sound (just checked with the acoustic feedback of the command line), both over the speakers and the headphone jack (it switches accordingly). For FreeBSD, the audio device does not have to be "initialized" by rebooting from Linux.
by , 2 years ago
Attachment: | Media preferences after rebooting from Linux.png added |
---|
audio in Media preferences after rebooting from linux
comment:10 by , 2 years ago
I have sound in OpenBSD (mp3 stream in browser). Switching between headphones and speakers work, as well as changing the volume with the media keys. Any information I should collect from the OpenBSD system?
comment:11 by , 2 years ago
Could it be that the HDA device is in PCIe cold state? Then waking up from D3 has to happen with platform support, ie ACPI.
comment:12 by , 2 years ago
I got it once (so far) to actually emit audible sound (incl. switching between headphones and speakers) after rebooting from linux, no idea how that worked. Corresponding syslog is attached.
Media preferences shows under HD Audio output only "Right Headphones" with gain controls, in the next column, there's only a centered "Speaker" without any controls. It stays the same and doesn't react to plugging the headphone cable in/out. Media keys don't work.
by , 2 years ago
Attachment: | syslog_hrev56524_with_sound.txt added |
---|
syslog of hrev56524 with audible sound after rebboting from linux
comment:13 by , 2 years ago
Could you attach the result of cat /dev/acpi/namespace ? I've added a command acpi_call (still to be merged), which would help to make sure the device is out of its cold state.
by , 2 years ago
Attachment: | output_cat_dev_acpi_namespace.txt added |
---|
output of 'cat /dev/acpi/namespace' (hrev56530)
comment:15 by , 2 years ago
acpi_call is merged and provided by the haiku_extras package. Please update and install this package, then acpi_call -p '\_SB_.PC00.HDAS._PS0'
should switch to the correct state. If this works, you can try to restart the media_server.
comment:16 by , 2 years ago
I'll have a look as soon as hrev56537 is available from SoftwareUpdater. At the moment, the most recent is haiku_extras-r1~beta3_hrev56536-1-x86_64.hpkg
which should be the last revison without acpi_call
.
comment:17 by , 2 years ago
After a cold boot (or re-booting from Haiku), acpi_call -p '\_SB_.PC00.HDAS._PS0'
results in Unknown object type '0'
. Hitting "Restart media services" in Media preferences doesn't affect the available options for Audio Input/Output.
After re-booting from linux, I already have HD Audio as Audio Input/Output (this time again with actual sound). acpi_call -p '\_SB_.PC00.HDAS._PS0'
still gives Unknown object type '0'
. Hitting "Restart media services" in Media preferences disables sound (no usable Audio Input/Output to choose from).
by , 2 years ago
Attachment: | syslog_hrev56541.txt added |
---|
syslog of hrev56541 (first re-booting from haiku, last re-booting from linux)
comment:18 by , 2 years ago
Summary: | no sound with "Alder Lake PCH-P High Definition Audio Controller" → no sound with Framework Laptop (12th Gen Intel Core) |
---|
I've tested on a Alder Lake laptop and audio works.
syslog booting hrev56511 with timestamps