mb/google/cyan: Adjust ACPI interrupt triggering for audio codecs

The jack detect GPIOs are initialized as dual edge-triggered GPIs,
and Linux doesn't care if they are set to ActiveLow, ActiveHigh, or
ActiveBoth -- a single interrupt is detected on jack insertion or
removal.

The Windows drivers on the other hand, will not function unless the
codec and LPE ACPI interrupts entries are set as in the Intel
Cherry Trail Tianocore platform reference code.

So adjust the ACPI interrupt triggers to make Windows happy, since
Linux doesn't care either way.

Test: boot Linux (GalliumOS 3.1) and Windows 10 on google/edgar,
observe functional audio output for both built-in speakers and
headphones.

Change-Id: Ic1dd8ece610d761791c060ece2d0aa51addf97ad
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/24989
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Matt DeVillier 2018-01-21 16:40:00 -06:00
parent bf6b7bf60c
commit c0b028f205
2 changed files with 5 additions and 5 deletions

View File

@ -44,7 +44,7 @@ Scope (\_SB.PCI0.I2C2)
"\\_SB.PCI0.I2C2", /* ResourceSource: I2C bus controller name */ "\\_SB.PCI0.I2C2", /* ResourceSource: I2C bus controller name */
) )
GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDefault,, GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDefault,,
"\\_SB.GPSE") { BOARD_JACK_MAXIM_GPIO_INDEX } "\\_SB.GPSE") { BOARD_JACK_MAXIM_GPIO_INDEX }
} ) } )
Return (SBUF) Return (SBUF)
@ -87,7 +87,7 @@ Scope (\_SB.PCI0.I2C2)
"\\_SB.PCI0.I2C2", /* ResourceSource: I2C bus controller name */ "\\_SB.PCI0.I2C2", /* ResourceSource: I2C bus controller name */
) )
GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDefault,, GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDefault,,
"\\_SB.GPSW") { BOARD_JACK_TI_GPIO_INDEX } "\\_SB.GPSW") { BOARD_JACK_TI_GPIO_INDEX }
} ) } )
@ -107,7 +107,7 @@ Scope (\_SB.PCI0.LPEA)
Name (GBUF, ResourceTemplate () Name (GBUF, ResourceTemplate ()
{ {
/* Jack Detect (index 0) */ /* Jack Detect (index 0) */
GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDefault,, GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDefault,,
"\\_SB.GPSE") { BOARD_JACK_MAXIM_GPIO_INDEX } "\\_SB.GPSE") { BOARD_JACK_MAXIM_GPIO_INDEX }
}) })
} }

View File

@ -36,7 +36,7 @@ Scope (\_SB.PCI0.I2C5)
) )
/* Jack Detect (index 0) */ /* Jack Detect (index 0) */
GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDefault,, GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDefault,,
"\\_SB.GPSW") { JACK_DETECT_GPIO_INDEX } "\\_SB.GPSW") { JACK_DETECT_GPIO_INDEX }
} ) } )
Return (SBUF) Return (SBUF)
@ -54,7 +54,7 @@ Scope (\_SB.PCI0.LPEA)
Name (GBUF, ResourceTemplate () Name (GBUF, ResourceTemplate ()
{ {
/* Jack Detect (index 0) */ /* Jack Detect (index 0) */
GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDefault,, GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDefault,,
"\\_SB.GPSW") { JACK_DETECT_GPIO_INDEX } "\\_SB.GPSW") { JACK_DETECT_GPIO_INDEX }
}) })
} }