On Mon, May 19, 2025 at 06:01:44AM +0200, Christian Schulte wrote:
> On 5/19/25 05:25, Christian Schulte wrote:
> > On 5/17/25 05:46, Christian Schulte wrote:
> >> 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
> >>
> > 
> > Replying to myself. Discovered there is another headphone jack on the
> > dock. Plugged the headphone in there. Less noise due to less volume.
> > That jack is nearly unuseable. Same noise there but less audible due to
> > less volume. Plugged the headphone back into the jack of the laptop
> > itself. Same noise, but much louder. So is the audio there as well. I am
> > failing to find any documentation about that Realtek ALC292 codec
> > anywhere, so I am giving up. That headphone jack on that dock is just
> > way quieter but is delivering the same noise. Without any documentation
> > about that ALC292, there is no way for me to provide any patches making
> > it behave the same way it does when booting windows. Sorry. How silly it
> > is to not provide any documentation about that codec anywhere.
> > 
> 
> Replying to myself one last time. I will never buy anything containing
> Realtek inside ever again.

I had to disable the mix option on the headphone jacks on one of my
systems to avoid constant white noise.
In my case adding
        inputs.mix2_source=dac-0:1
to /etc/mixerctl.conf was enough to make it stop.
By default this seems to use
        inputs.mix2_source=dac-0:1,mix
which causes the system to mix in the microphone by default which is
horrible when using just headphones.

-- 
:wq Claudio

Reply via email to