From 206821ee2f4ecae68fb292d0075bb82acac0c8bb Mon Sep 17 00:00:00 2001 From: Sathyanarayana Nujella Date: Fri, 19 Jan 2018 10:23:05 -0800 Subject: mainboard/google/zoombini: Add config for meowth audio Add NHLT and dt support for meowth with max98373 amp. BUG=b:71724897 TEST='emerge-meowth coreboot' compiles correctly TEST=check SSDT and verify entries for max98373 TEST=check NHLT ACPI tables included blobs for max98373 Change-Id: Ic89bf669c7ab2ef39ce64e4da6a57a7069ee75f9 Signed-off-by: Sathyanarayana Nujella Signed-off-by: Lijian Zhao Reviewed-on: https://review.coreboot.org/23334 Tested-by: build bot (Jenkins) Reviewed-by: Nick Vaccaro --- .../google/zoombini/variants/baseboard/nhlt.c | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 src/mainboard/google/zoombini/variants/baseboard/nhlt.c (limited to 'src/mainboard/google/zoombini/variants/baseboard/nhlt.c') diff --git a/src/mainboard/google/zoombini/variants/baseboard/nhlt.c b/src/mainboard/google/zoombini/variants/baseboard/nhlt.c new file mode 100644 index 0000000000..0741b0d62f --- /dev/null +++ b/src/mainboard/google/zoombini/variants/baseboard/nhlt.c @@ -0,0 +1,52 @@ +/* + * This file is part of the coreboot project. + * + * Copyright 2017 Intel Corp. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include +#include +#include + +void __attribute__((weak)) variant_nhlt_init(struct nhlt *nhlt) +{ + /* 1-dmic configuration */ + if (IS_ENABLED(CONFIG_NHLT_DMIC_1CH_16B) && + !nhlt_soc_add_dmic_array(nhlt, 1)) + printk(BIOS_DEBUG, "Added 1CH DMIC array.\n"); + /* 2-dmic configuration */ + if (IS_ENABLED(CONFIG_NHLT_DMIC_2CH_16B) && + !nhlt_soc_add_dmic_array(nhlt, 2)) + printk(BIOS_DEBUG, "Added 2CH DMIC array.\n"); + /* 4-dmic configuration */ + if (IS_ENABLED(CONFIG_NHLT_DMIC_4CH_16B) && + !nhlt_soc_add_dmic_array(nhlt, 4)) + printk(BIOS_DEBUG, "Added 4CH DMIC array.\n"); + + + if (IS_ENABLED(CONFIG_INCLUDE_SND_MAX98357_DA7219_NHLT)) { + /* Dialog for Headset codec. Headset codec is bi-directional + but uses the same configuration settings for render and + capture endpoints. */ + if (!nhlt_soc_add_da7219(nhlt, AUDIO_LINK_SSP2)) + printk(BIOS_DEBUG, "Added Dialog_7219 codec.\n"); + + /* MAXIM Smart Amps for left and right speakers. */ + if (!nhlt_soc_add_max98357(nhlt, AUDIO_LINK_SSP1)) + printk(BIOS_DEBUG, "Added Maxim_98357 codec.\n"); + } + + if (IS_ENABLED(CONFIG_INCLUDE_SND_MAX98373_NHLT) && + !nhlt_soc_add_max98373(nhlt, AUDIO_LINK_SSP1)) + printk(BIOS_DEBUG, "Added Maxim_98373 codec.\n"); +} -- cgit v1.2.3