Hello,

With the stock BIOS in the board I am working on one of the nodes for the ALC256 CODEC is:

Node 0x21 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
  Control: name="Headphone Playback Switch", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x80 0x80]
  Pincap 0x0001001c: OUT HP EAPD Detect
  EAPD 0x2: EAPD
  Pin Default 0x02214020: [Jack] HP Out at Ext Front
    Conn = 1/8, Color = Green
    DefAssociation = 0x2, Sequence = 0x0
  Pin-ctls: 0xc0: OUT HP
  Unsolicited: tag=01, enabled=1
  Power states:  D0 D1 D2 D3 EPSS
  Power: setting=D0, actual=D0
  Connection: 2
     0x02 0x03*

In the real world we are finding that the detection of headphones being plugged in aren’t being detected and the audio continues to be played through the onboard speakers. Based on experimentation the customer has determined that the alc256-asus-mic quirk in the Linux kernel gets it work properly but I want to fix this issue properly in Coreboot.

The only change in the output of /proc/asound/card/codec#0 appears to be:

Node 0x21 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out

changes to:

Node 0x21 [Pin Complex] wcaps 0x03211020: Stereo Amp-Out

I’m assuming that this needs me to add some raw 32bit values into cim_verb_data[] as well as the AZALIA_PIN_CFG() definitions that I already have.

Based on what I have seen in files such (src/mainboard/intel/coffeelake_rvp/variants/cml_u/include/variant/hda_verb.h then I guess this is going to be multiple values that will be of the form 0x021xxxxx. How do I convert the change I need to make to fill in the xxxxx values?

-Andy.


_______________________________________________
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org

Reply via email to