On 5/8/25 07:06, Jonathan Gray wrote:
> On Fri, May 09, 2025 at 05:40:23AM +0200, Christian Schulte wrote:
>> Thanks. Does not make a difference here. Maybe the device id is just a
>> different one here. Cannot tell.
>>
>> Regards,
>> --
>> Christian
>>
>>  0:3:0: Intel Core 4G HD Audio
>>      0x0000: Vendor ID: 8086, Product ID: 0a0c
>>      0x0004: Command: 0006, Status: 0010
>>      0x0008: Class: 04 Multimedia, Subclass: 03 HD Audio,
>>              Interface: 00, Revision: 0b
>>      0x000c: BIST: 00, Header Type: 00, Latency Timer: 00,
>>              Cache Line Size: 10
>>      0x0010: BAR mem 64bit addr: 0x00000000e0630000/0x00004000
>>      0x0018: BAR empty (00000000)
>>      0x001c: BAR empty (00000000)
>>      0x0020: BAR empty (00000000)
>>      0x0024: BAR empty (00000000)
>>      0x0028: Cardbus CIS: 00000000
>>      0x002c: Subsystem Vendor ID: 17aa Product ID: 2214
>>      0x0030: Expansion ROM Base Address: 00000000
>>      0x0038: 00000000
>>      0x003c: Interrupt Pin: 01 Line: 0b Min Gnt: 00 Max Lat: 00
>>      0x0050: Capability 0x01: Power Management
>>              State: D0
>>      0x0060: Capability 0x05: Message Signalled Interrupts (MSI)
>>              Enabled: no; 1 vectors (1 enabled)
>>      0x0070: Capability 0x10: PCI Express
>>              Max Payload Size: 128 / 128 bytes
>>              Max Read Request Size: 128 bytes
>>      0x0100: Enhanced Capability 0x00: Unknown
> 
>>  0:27:0: Intel 8 Series HD Audio
>>      0x0000: Vendor ID: 8086, Product ID: 9c20
>>      0x0004: Command: 0006, Status: 0010
>>      0x0008: Class: 04 Multimedia, Subclass: 03 HD Audio,
>>              Interface: 00, Revision: 04
>>      0x000c: BIST: 00, Header Type: 00, Latency Timer: 00,
>>              Cache Line Size: 10
>>      0x0010: BAR mem 64bit addr: 0x00000000e0634000/0x00004000
>>      0x0018: BAR empty (00000000)
>>      0x001c: BAR empty (00000000)
>>      0x0020: BAR empty (00000000)
>>      0x0024: BAR empty (00000000)
>>      0x0028: Cardbus CIS: 00000000
>>      0x002c: Subsystem Vendor ID: 17aa Product ID: 2214
> 
> 0x221417aa matches the sub vendor id.  Problem must be something else.

I built a kernel with AZALIA_DEBUG and with this patch applied.

Index: sys/dev/pci/azalia_codec.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/azalia_codec.c,v
retrieving revision 1.189
diff -u -p -u -r1.189 azalia_codec.c
--- sys/dev/pci/azalia_codec.c  8 Sep 2022 01:35:39 -0000       1.189
+++ sys/dev/pci/azalia_codec.c  17 May 2025 02:30:47 -0000
@@ -206,6 +206,8 @@ azalia_codec_init_vtbl(codec_t *this)
                    this->subid == 0x503617aa ||
                    this->subid == 0x503c17aa)
                        this->qrks |= AZ_QRK_WID_TPDOCK2;
+               if (this->subid == 0x221417aa)
+                       this->qrks |= AZ_QRK_WID_CLOSE_PCBEEP;
                break;
        case 0x10ec0293:
                if (PCI_VENDOR(this->subid) == PCI_VENDOR_DELL)
@@ -2636,6 +2638,9 @@ azalia_codec_widget_quirks(codec_t *this
        widget_t *w;
 
        w = &this->w[nid];
+
+       DPRINTF(("%s: codec=%s, widget=%s, nid=%x\n", __func__,
+           this->name, w->name, nid));
 
        if (this->qrks & AZ_QRK_WID_BEEP_1D &&
            nid == 0x1d && w->enable == 0) {

azalia_codec_widget_quirks tests for nid == 0x20.

  if ((this->qrks & AZ_QRK_WID_CLOSE_PCBEEP) && (nid == 0x20))

Could it be that this nid value is just different on my machine? Here is the
part of the dmesg with all those calls to that function printed. 

azalia0 at pci0 dev 3 function 0 "Intel Core 4G HD Audio" rev 0x0b: msi
azalia_reset: resetting
azalia_reset: reset counter = 5000
azalia_reset: reset counter = 5000
azalia0: host: High Definition Audio rev. 1.0
azalia0: host: 2 output, 0 input, and 0 bidi streams
azalia0: found a codec at #0
azalia_init_corb: CORB allocation succeeded.
azalia_init_corb: CORBWP=0; size=256
azalia_init_rirb: RIRB allocation succeeded.
azalia_init_rirb: RIRBRP=0, size=256
azalia0: RIRB time out
azalia0: No codecs found
azalia_pci_detach
azalia_pci_detach: delete streams
azalia_pci_detach: delete codecs
azalia_pci_detach: delete CORB and RIRB
azalia_pci_detach: disable interrupts
azalia_pci_detach: clear interrupts
azalia_pci_detach: delete PCI resources
azalia1 at pci0 dev 27 function 0 "Intel 8 Series HD Audio" rev 0x04: msi
azalia_reset: resetting
azalia_reset: reset counter = 5000
azalia_reset: reset counter = 4985
azalia1: host: High Definition Audio rev. 1.0
azalia1: host: 4 output, 4 input, and 0 bidi streams
azalia1: found a codec at #0
azalia_init_corb: CORB allocation succeeded.
azalia_init_corb: CORBWP=0; size=256
azalia_init_rirb: RIRB allocation succeeded.
azalia_init_rirb: RIRBRP=0, size=256
azalia1: codec[0] vid 0x10ec0292, subid 0x221417aa, rev. 0.1, HDA version 1.0
azalia1: nidstart=1 #functions=1
azalia_codec_init: FTYPE result = 0x00000101
azalia_codec_init: There are 35 widgets in the audio function.
        encodings=1<PCM>
        PCM 
formats=e05f0<24bit,20bit,16bit,192kHz,96kHz,88.2kHz,48kHz,44.1kHz,32kHz>
        inamp: mute=0 size=0 steps=0 offset=0
        outamp: mute=0 size=0 steps=0 offset=0
        gpio: wake=0 unsol=1 gpis=0 gpos=0 gpios=5
azalia1: dac02 wcap=41d<POWER,FORMATOV,AMPOV,OUTAMP,STEREO>
        encodings=1<PCM>
        PCM formats=e0560<24bit,20bit,16bit,192kHz,96kHz,48kHz,44.1kHz>
        outamp: mute=0 size=2 steps=87 offset=87
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=2
azalia1: dac03 wcap=41d<POWER,FORMATOV,AMPOV,OUTAMP,STEREO>
        encodings=1<PCM>
        PCM formats=e0560<24bit,20bit,16bit,192kHz,96kHz,48kHz,44.1kHz>
        outamp: mute=0 size=2 steps=87 offset=87
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=3
azalia1: vendor04 wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=4
azalia1: vendor05 wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=5
azalia1: dac06 wcap=611<POWER,DIGITAL,FORMATOV,STEREO>
        encodings=1<PCM>
        PCM 
formats=e05f0<24bit,20bit,16bit,192kHz,96kHz,88.2kHz,48kHz,44.1kHz,32kHz>
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=6
azalia1: vendor07 wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=7
azalia1: adc08 wcap=10051b<POWER,CONNLIST,FORMATOV,AMPOV,INAMP,STEREO>
        encodings=1<PCM>
        PCM formats=e0560<24bit,20bit,16bit,192kHz,96kHz,48kHz,44.1kHz>
        inamp: mute=1 size=2 steps=63 offset=23
        connections=0x23; selected=0x23
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=8
azalia1: adc09 wcap=10051b<POWER,CONNLIST,FORMATOV,AMPOV,INAMP,STEREO>
        encodings=1<PCM>
        PCM formats=e0560<24bit,20bit,16bit,192kHz,96kHz,48kHz,44.1kHz>
        inamp: mute=1 size=2 steps=63 offset=23
        connections=0x22; selected=0x22
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=9
azalia1: vendor0a wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=a
azalia1: mix0b wcap=20010b<CONNLIST,AMPOV,INAMP,STEREO>
        inamp: mute=1 size=5 steps=31 offset=23
        connections=0x18,0x19,0x1a,0x1b,0x1d; selected=0x18
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=b
azalia1: mix0c wcap=20010b<CONNLIST,AMPOV,INAMP,STEREO>
        inamp: mute=1 size=0 steps=0 offset=0
        connections=0x2,0xb; selected=0x2
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=c
azalia1: mix0d wcap=20010b<CONNLIST,AMPOV,INAMP,STEREO>
        inamp: mute=1 size=0 steps=0 offset=0
        connections=0x3,0xb; selected=0x3
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=d
azalia1: vendor0e wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=e
azalia1: mix0f wcap=20010a<CONNLIST,AMPOV,INAMP>
        inamp: mute=1 size=0 steps=0 offset=0
        connections=0x2,0x3; selected=0x2
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=f
azalia1: vendor10 wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=10
azalia1: vendor11 wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=11
azalia1: unknown12 wcap=40040b<POWER,AMPOV,INAMP,STEREO>
        cap=20<INPUT>
        [03/00] color=unknown device=mic conn=fixed conntype=digital
        location=n/a chassis=internal special=none
        inamp: mute=0 size=47 steps=3 offset=0
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=12
azalia1: unknown13 wcap=40040b<POWER,AMPOV,INAMP,STEREO>
        cap=20<INPUT>
        [00/00] color=unknown device=line conn=none conntype=unknown
        location=n/a chassis=external special=none
        inamp: mute=0 size=47 steps=3 offset=0
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=13
azalia1: unknown14 wcap=40058d<POWER,CONNLIST,UNSOL,AMPOV,OUTAMP,STEREO>
        cap=10010<EAPD,OUTPUT>
        [01/00] color=unknown device=spkr conn=fixed conntype=analog
        location=n/a chassis=internal special=none
        outamp: mute=1 size=0 steps=0 offset=0
        connections=0xc,0xd; selected=0xc
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=14
azalia1: black15 wcap=40058d<POWER,CONNLIST,UNSOL,AMPOV,OUTAMP,STEREO>
        cap=1001c<EAPD,OUTPUT,HEADPHONE,PRESENCE>
        [01/15] color=black device=hp conn=jack conntype=1/8
        location=left chassis=external special=none
        outamp: mute=1 size=0 steps=0 offset=0
        connections=0xc,0xd; selected=0xc
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=15
azalia1: black16 wcap=40058d<POWER,CONNLIST,UNSOL,AMPOV,OUTAMP,STEREO>
        cap=1001c<EAPD,OUTPUT,HEADPHONE,PRESENCE>
        [15/00] color=black device=spkr conn=none conntype=1/8
        location=rear chassis=external special=none
        outamp: mute=1 size=0 steps=0 offset=0
        connections=0xc,0xd; selected=0xc
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=16
azalia1: vendor17 wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=17
azalia1: black18 wcap=40058f<POWER,CONNLIST,UNSOL,AMPOV,OUTAMP,INAMP,STEREO>
        cap=3734<VREF100,VREF80,VREFGND,VREF50,VREFHIZ,INPUT,OUTPUT,PRESENCE>
        [15/00] color=black device=spkr conn=none conntype=1/8
        location=rear chassis=external special=none
        inamp: mute=0 size=39 steps=3 offset=0
        outamp: mute=1 size=0 steps=0 offset=0
        connections=0xc,0xd; selected=0xc
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=18
azalia1: black19 wcap=40048b<POWER,UNSOL,AMPOV,INAMP,STEREO>
        cap=24<INPUT,PRESENCE>
        [15/00] color=black device=spkr conn=none conntype=1/8
        location=rear chassis=external special=none
        inamp: mute=0 size=47 steps=3 offset=0
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=19
azalia1: black1a wcap=40048b<POWER,UNSOL,AMPOV,INAMP,STEREO>
        cap=3724<VREF100,VREF80,VREFGND,VREF50,VREFHIZ,INPUT,PRESENCE>
        [02/00] color=black device=mic conn=jack conntype=1/8
        location=left chassis=external special=none
        inamp: mute=0 size=39 steps=3 offset=0
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=1a
azalia1: black1b wcap=40058f<POWER,CONNLIST,UNSOL,AMPOV,OUTAMP,INAMP,STEREO>
        cap=3734<VREF100,VREF80,VREFGND,VREF50,VREFHIZ,INPUT,OUTPUT,PRESENCE>
        [15/00] color=black device=spkr conn=none conntype=1/8
        location=rear chassis=external special=none
        inamp: mute=0 size=39 steps=3 offset=0
        outamp: mute=1 size=0 steps=0 offset=0
        connections=0xc,0xd; selected=0xc
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=1b
azalia1: vendor1c wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=1c
azalia1: purple1d wcap=400400<POWER>
        cap=20<INPUT>
        [00/05] color=purple device=modem-handset conn=none conntype=atapi
        location=n/a chassis=external special=none
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=1d
azalia1: black1e wcap=400781<POWER,DIGITAL,CONNLIST,UNSOL,STEREO>
        cap=14<OUTPUT,PRESENCE>
        [15/00] color=black device=spkr conn=none conntype=1/8
        location=rear chassis=external special=none
        connections=0x6; selected=0x6
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=1e
azalia1: vendor1f wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=1f
azalia1: vendor20 wcap=f00040<PROC>
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=20
azalia1: vendor21 wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=21
azalia1: sel22 wcap=300101<CONNLIST,STEREO>
        connections=0x18,0x19,0x1a,0x1b,0x1d,0xb,0x12,0x13; selected=0x18
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=22
azalia1: sel23 wcap=300101<CONNLIST,STEREO>
        connections=0x18,0x19,0x1a,0x1b,0x1d,0xb; selected=0x18
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=23
azalia1: vendor24 wcap=f00000
azalia_codec_widget_quirks: codec=Realtek ALC292, widget=, nid=24
azalia_codec_sort_pins: analog out pins: 0x15->0x02 0x16->0x02
azalia_codec_sort_pins: digital out pins:
azalia_codec_sort_pins: analog in pins: 0x1a->0xffffffff 0x12->0x09 
0x19->0xffffffff
azalia_codec_sort_pins: digital in pins:
azalia1: dacgroup[0]: 02 03
azalia1: adcgroup[0]: 09 08
azalia1: codecs: Realtek ALC292
audio0 at azalia1

-- 
Christian

Reply via email to