mb/google/volteer: Add firmware configuration probing for audio

For all of the audio devices in devicetree.cb add the probe matches
that will determine if the device should be enabled or not based on
the selected audio daughter board type.

AUDIO=MAX98357_ALC5682I_I2S: enable max98357 and alc5628, disable others
AUDIO=MAX98373_ALC5682I_I2S: enable max98373 and alc5682, disable others
AUDIO=MAX98373_ALC5682_SNDW: enable soundwire devices, disable others

BUG=b:147462631
TEST=test different device present in ACPI based on fw_config value:
> AUDIO=NONE
ectool cbi set 6 0x00000000 4 2
> AUDIO=MAX98357_ALC5682I_I2S
ectool cbi set 6 0x00000100 4 2
> AUDIO=MAX98373_ALC5682I_I2S
ectool cbi set 6 0x00000200 4 2
> AUDIO=MAX98373_ALC5682_SNDW
ectool cbi set 6 0x00000300 4 2

Change-Id: I5492e8cddcff3ba01023b0daef02be3508d347b0
Signed-off-by: Duncan Laurie <dlaurie@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/41216
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Duncan Laurie 2020-05-10 11:24:13 -07:00 committed by Duncan Laurie
parent 9db8c2585a
commit 43462782dc
1 changed files with 14 additions and 4 deletions

View File

@ -11,7 +11,10 @@ chip soc/intel/tigerlake
register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER" register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
register "property_list[0].name" = ""realtek,jd-src"" register "property_list[0].name" = ""realtek,jd-src""
register "property_list[0].integer" = "1" register "property_list[0].integer" = "1"
device i2c 1a on end device i2c 1a on
probe AUDIO MAX98357_ALC5682I_I2S
probe AUDIO MAX98373_ALC5682I_I2S
end
end end
chip drivers/i2c/max98373 chip drivers/i2c/max98373
register "vmon_slot_no" = "0" register "vmon_slot_no" = "0"
@ -19,7 +22,9 @@ chip soc/intel/tigerlake
register "uid" = "0" register "uid" = "0"
register "desc" = ""Right Speaker Amp"" register "desc" = ""Right Speaker Amp""
register "name" = ""MAXR"" register "name" = ""MAXR""
device i2c 31 on end device i2c 31 on
probe AUDIO MAX98373_ALC5682I_I2S
end
end end
chip drivers/i2c/max98373 chip drivers/i2c/max98373
register "vmon_slot_no" = "2" register "vmon_slot_no" = "2"
@ -27,7 +32,9 @@ chip soc/intel/tigerlake
register "uid" = "1" register "uid" = "1"
register "desc" = ""Left Speaker Amp"" register "desc" = ""Left Speaker Amp""
register "name" = ""MAXL"" register "name" = ""MAXL""
device i2c 32 on end device i2c 32 on
probe AUDIO MAX98373_ALC5682I_I2S
end
end end
end end
device pci 1f.3 on device pci 1f.3 on
@ -35,10 +42,13 @@ chip soc/intel/tigerlake
register "hid" = ""MX98357A"" register "hid" = ""MX98357A""
register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A10)" register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A10)"
register "sdmode_delay" = "5" register "sdmode_delay" = "5"
device generic 0 on end device generic 0 on
probe AUDIO MAX98357_ALC5682I_I2S
end
end end
chip drivers/intel/soundwire chip drivers/intel/soundwire
device generic 0 on device generic 0 on
probe AUDIO MAX98373_ALC5682_SNDW
chip drivers/soundwire/alc5682 chip drivers/soundwire/alc5682
# SoundWire Link 0 ID 1 # SoundWire Link 0 ID 1
register "desc" = ""Headset Codec"" register "desc" = ""Headset Codec""