On Wed, Jun 01, 2022 at 03:03:44AM +0100, Chris Narkiewicz wrote:
> Hi,
> 
> I have a StarLabs StarLite mk iv laptop with Gemini Lake CPU and audio
> device is "not configured".
> 
> Relevant pcidump -vv output:
>  0:14:0: Intel Gemini Lake HD Audio
>         0x0000: Vendor ID: 8086, Product ID: 3198
>         0x0004: Command: 0006, Status: 0010
>         0x0008: Class: 04 Multimedia, Subclass: 01 Audio,
>                 Interface: 00, Revision: 06
>         0x000c: BIST: 00, Header Type: 00, Latency Timer: 00,
>                 Cache Line Size: 10
>         0x0010: BAR mem 64bit addr: 0x000000009111c000/0x00004000
>         0x0018: BAR empty (00000000)
>         0x001c: BAR empty (00000000)
>         0x0020: BAR mem 64bit addr: 0x0000000091000000/0x00100000
>         0x0028: Cardbus CIS: 00000000
>         0x002c: Subsystem Vendor ID: 8086 Product ID: 7270
>         0x0030: Expansion ROM Base Address: 00000000
>         0x0038: 00000000
>         0x003c: Interrupt Pin: 01 Line: ff Min Gnt: 00 Max Lat: 00
>         0x0050: Capability 0x01: Power Management
>                 State: D0
>         0x0080: Capability 0x09: Vendor Specific
>         0x0060: Capability 0x05: Message Signalled Interrupts (MSI)
>                 Enabled: no
>         0x0070: Capability 0x10: PCI Express
>                 Max Payload Size: 128 / 128 bytes
>                 Max Read Request Size: 512 bytes
>         0x0100: Enhanced Capability 0x00: Unknown
> 
> Relevant dmesg output:
> cpu0: Intel(R) Pentium(R) Silver N5030 CPU @ 1.10GHz, 2800.01 MHz, 06-7a-08
> "Intel Gemini Lake HD Audio" rev 0x06 at pci0 dev 14 function 0 not configured
> 
> Digging into the /sys source code, I found that it should be handled by 
> azalia driver:
> 
> # grep -r PCI_PRODUCT_INTEL_GLK_HDA . 
> ./dev/pci/azalia.c:   case PCI_PRODUCT_INTEL_GLK_HDA:
> ./dev/pci/pcidevs.h:#define   PCI_PRODUCT_INTEL_GLK_HDA       0x3198          
> /* Gemini Lake HD Audio */
> ./dev/pci/pcidevs_data.h:        PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_GLK_HDA,
> 
> 
> I'm wondering why it could not be configured and how to dig into this?

Your device is subclass audio not subclass hd audio.  Try this:

Index: sys/dev/pci/azalia.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/azalia.c,v
retrieving revision 1.272
diff -u -p -r1.272 azalia.c
--- sys/dev/pci/azalia.c        1 Apr 2022 22:37:21 -0000       1.272
+++ sys/dev/pci/azalia.c        1 Jun 2022 02:21:41 -0000
@@ -498,6 +498,7 @@ const struct pci_matchid azalia_pci_devi
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_300SERIES_U_HDA },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_400SERIES_CAVS },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_500SERIES_LP_HDA },
+       { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_GLK_HDA },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_JSL_HDA },
 };
 

Reply via email to