diff options
author | Matt DeVillier <matt.devillier@gmail.com> | 2023-01-17 11:24:25 -0600 |
---|---|---|
committer | Matt DeVillier <matt.devillier@amd.corp-partner.google.com> | 2023-05-03 16:06:41 +0000 |
commit | 10e928319dd653911fdcda740cc19c0f564c0245 (patch) | |
tree | ace6b173af5df4939400fb07855e230b9e434e46 /src | |
parent | 3a4ac3a85efe5d8c46d6d6173b737f0f98fc6845 (diff) |
mb/google/hatch: Add SOF chip driver
Add SOF chip driver entries for all variants, so that the correct audio
config is passed to the OS drivers.
TEST=build, boot Windows on several hatch variants, verify audio
functional under Windows using coolstar's SOF drivers.
Change-Id: Ie791fa873fc7bbab84644f5ea5743bdcdc124908
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/74814
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
Diffstat (limited to 'src')
12 files changed, 73 insertions, 1 deletions
diff --git a/src/mainboard/google/hatch/Kconfig b/src/mainboard/google/hatch/Kconfig index 3522787c3c..174978e7e5 100644 --- a/src/mainboard/google/hatch/Kconfig +++ b/src/mainboard/google/hatch/Kconfig @@ -1,6 +1,7 @@ config BOARD_GOOGLE_BASEBOARD_HATCH def_bool n select BOARD_ROMSIZE_KB_16384 if !BOARD_ROMSIZE_KB_32768 + select DRIVERS_AUDIO_SOF select DRIVERS_GENERIC_GPIO_KEYS select DRIVERS_GENERIC_MAX98357A select DRIVERS_I2C_DA7219 diff --git a/src/mainboard/google/hatch/variants/akemi/overridetree.cb b/src/mainboard/google/hatch/variants/akemi/overridetree.cb index a9e9352047..0aefc5ec3d 100644 --- a/src/mainboard/google/hatch/variants/akemi/overridetree.cb +++ b/src/mainboard/google/hatch/variants/akemi/overridetree.cb @@ -242,6 +242,12 @@ chip soc/intel/cannonlake register "sdmode_delay" = "5" device generic 0 on end end + chip drivers/sof + register "spkr_tplg" = "max98357a" + register "jack_tplg" = "rt5682" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end end # Intel HDA end diff --git a/src/mainboard/google/hatch/variants/baseboard/devicetree.cb b/src/mainboard/google/hatch/variants/baseboard/devicetree.cb index 1af96c586a..b57afd4957 100644 --- a/src/mainboard/google/hatch/variants/baseboard/devicetree.cb +++ b/src/mainboard/google/hatch/variants/baseboard/devicetree.cb @@ -345,7 +345,14 @@ chip soc/intel/cannonlake end # eSPI Interface device pci 1f.1 on end # P2SB device pci 1f.2 hidden end # Power Management Controller - device pci 1f.3 on end # Intel HDA + device pci 1f.3 on + chip drivers/sof + register "spkr_tplg" = "max98357a" + register "jack_tplg" = "rt5682" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end + end # Intel HDA device pci 1f.4 on end # SMBus device pci 1f.5 on end # PCH SPI device pci 1f.6 off end # GbE diff --git a/src/mainboard/google/hatch/variants/dratini/overridetree.cb b/src/mainboard/google/hatch/variants/dratini/overridetree.cb index 8d4ae62aec..66f2b8109c 100644 --- a/src/mainboard/google/hatch/variants/dratini/overridetree.cb +++ b/src/mainboard/google/hatch/variants/dratini/overridetree.cb @@ -197,6 +197,12 @@ chip soc/intel/cannonlake register "sdmode_delay" = "5" device generic 0 on end end + chip drivers/sof + register "spkr_tplg" = "max98357a" + register "jack_tplg" = "rt5682" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end end # Intel HDA end diff --git a/src/mainboard/google/hatch/variants/hatch/overridetree.cb b/src/mainboard/google/hatch/variants/hatch/overridetree.cb index 3f77292c1c..50f8dbf47b 100644 --- a/src/mainboard/google/hatch/variants/hatch/overridetree.cb +++ b/src/mainboard/google/hatch/variants/hatch/overridetree.cb @@ -175,6 +175,12 @@ chip soc/intel/cannonlake register "sdmode_delay" = "5" device generic 0 on end end + chip drivers/sof + register "spkr_tplg" = "max98357a" + register "jack_tplg" = "rt5682" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end end # Intel HDA end diff --git a/src/mainboard/google/hatch/variants/helios/overridetree.cb b/src/mainboard/google/hatch/variants/helios/overridetree.cb index dd5529ac46..0dc0f1cdef 100644 --- a/src/mainboard/google/hatch/variants/helios/overridetree.cb +++ b/src/mainboard/google/hatch/variants/helios/overridetree.cb @@ -199,5 +199,13 @@ chip soc/intel/cannonlake device spi 1 on end end # FPMCU end # GSPI #1 + device pci 1f.3 on + chip drivers/sof + register "spkr_tplg" = "rt1011" + register "jack_tplg" = "rt5682" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end + end # Intel HDA end end diff --git a/src/mainboard/google/hatch/variants/helios_diskswap/overridetree.cb b/src/mainboard/google/hatch/variants/helios_diskswap/overridetree.cb index bc49e847a0..e18267dbdf 100644 --- a/src/mainboard/google/hatch/variants/helios_diskswap/overridetree.cb +++ b/src/mainboard/google/hatch/variants/helios_diskswap/overridetree.cb @@ -218,6 +218,12 @@ chip soc/intel/cannonlake register "sdmode_delay" = "5" device generic 0 on end end + chip drivers/sof + register "spkr_tplg" = "rt1011" + register "jack_tplg" = "rt5682" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end end # Intel HDA end end diff --git a/src/mainboard/google/hatch/variants/jinlon/overridetree.cb b/src/mainboard/google/hatch/variants/jinlon/overridetree.cb index 3c29b23888..5bf8ac87db 100644 --- a/src/mainboard/google/hatch/variants/jinlon/overridetree.cb +++ b/src/mainboard/google/hatch/variants/jinlon/overridetree.cb @@ -200,6 +200,12 @@ chip soc/intel/cannonlake register "sdmode_delay" = "5" device generic 0 on end end + chip drivers/sof + register "spkr_tplg" = "max98357a" + register "jack_tplg" = "rt5682" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end end # Intel HDA end diff --git a/src/mainboard/google/hatch/variants/kindred/overridetree.cb b/src/mainboard/google/hatch/variants/kindred/overridetree.cb index 17b79bb314..a2c9322fbb 100644 --- a/src/mainboard/google/hatch/variants/kindred/overridetree.cb +++ b/src/mainboard/google/hatch/variants/kindred/overridetree.cb @@ -211,6 +211,12 @@ chip soc/intel/cannonlake register "sdmode_delay" = "5" device generic 0 on end end + chip drivers/sof + register "spkr_tplg" = "max98357a" + register "jack_tplg" = "rt5682" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end end # Intel HDA end diff --git a/src/mainboard/google/hatch/variants/kohaku/overridetree.cb b/src/mainboard/google/hatch/variants/kohaku/overridetree.cb index 915b6c36a6..5155ebd564 100644 --- a/src/mainboard/google/hatch/variants/kohaku/overridetree.cb +++ b/src/mainboard/google/hatch/variants/kohaku/overridetree.cb @@ -266,6 +266,12 @@ chip soc/intel/cannonlake register "sdmode_delay" = "5" device generic 0 on end end + chip drivers/sof + register "spkr_tplg" = "max98357a" + register "jack_tplg" = "da7219" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end end # Intel HDA end # domain end diff --git a/src/mainboard/google/hatch/variants/mushu/overridetree.cb b/src/mainboard/google/hatch/variants/mushu/overridetree.cb index 632b1462ac..82ffb1c6f8 100644 --- a/src/mainboard/google/hatch/variants/mushu/overridetree.cb +++ b/src/mainboard/google/hatch/variants/mushu/overridetree.cb @@ -195,6 +195,12 @@ chip soc/intel/cannonlake register "sdmode_delay" = "5" device generic 0 on end end + chip drivers/sof + register "spkr_tplg" = "max98357a" + register "jack_tplg" = "rt5682" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end end # Intel HDA end diff --git a/src/mainboard/google/hatch/variants/nightfury/overridetree.cb b/src/mainboard/google/hatch/variants/nightfury/overridetree.cb index 2d7bf45d44..433abaea42 100644 --- a/src/mainboard/google/hatch/variants/nightfury/overridetree.cb +++ b/src/mainboard/google/hatch/variants/nightfury/overridetree.cb @@ -263,5 +263,13 @@ chip soc/intel/cannonlake device pci 1d.5 off end device pci 1a.0 on end #eMMC device pci 1e.3 off end # GSPI #1 + device pci 1f.3 on + chip drivers/sof + register "spkr_tplg" = "max98390" + register "jack_tplg" = "da7219" + register "mic_tplg" = "_2ch_pdm0" + device generic 0 on end + end + end # Intel HDA end # domain end |