On Fri, Nov 04, 2022 at 09:10:52AM -0500, John Browning wrote:
> Hi,
> I noticed I did not have sound on my new thinkpad which has a newer
> Intel 500 HDA chipset.
> 
> bsd$ doas pcidump -vvv 0:31:3
>  0:31:3: Intel 500 Series HD Audio
>     0x0000: Vendor ID: 8086, Product ID: 43c8
>     0x0004: Command: 0006, Status: 0010
>     0x0008:    Class: 04 Multimedia, Subclass: 01 Audio,
>         Interface: 00, Revision: 11
>     0x000c: BIST: 00, Header Type: 00, Latency Timer: 00,
>         Cache Line Size: 00
>     0x0010: BAR mem 64bit addr: 0x000000603d1c0000/0x00004000
>     0x0018: BAR empty (00000000)
>     0x001c: BAR empty (00000000)
>     0x0020: BAR mem 64bit addr: 0x000000603d000000/0x00100000
>     0x0028: Cardbus CIS: 00000000
>     0x002c: Subsystem Vendor ID: 17aa Product ID: 22e4
>     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: yes
> 
> 
> Looking at src/sys/dev/pci/azalia.c I noticed making the change in the
> below diff corrects the issue with a new kernel build.  It seems the
> pci subsystem match inclusion may not be needed, but hopefully someone
> smarter than I can figure that out (or help me figure that out).

When the subclass is not hd-audio, we match with azalia_pci_devices[].

Which model thinkpad is this?

Index: sys/dev/pci/azalia.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/azalia.c,v
retrieving revision 1.280
diff -u -p -r1.280 azalia.c
--- sys/dev/pci/azalia.c        26 Oct 2022 20:19:08 -0000      1.280
+++ sys/dev/pci/azalia.c        4 Nov 2022 14:10:59 -0000
@@ -488,6 +488,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_400SERIES_LP_HDA },
+       { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_500SERIES_HDA },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_500SERIES_LP_HDA },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_600SERIES_LP_HDA },
        { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_GLK_HDA },

Reply via email to