mb/google/poppy/variants/rammus: add audio, mic and codec configuration

Rammus uses DA7219 Headset, Maxim MAX98927 Smart Amps and 4 channel dmic

BUG=b:111579386
BRANCH=Master
TEST=Build pass

Change-Id: If21a3870ee4b000a776d2f3e025fb43ef2fe48c7
Signed-off-by: Zhuohao Lee <zhuohao@chromium.org>
Reviewed-on: https://review.coreboot.org/27805
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
Zhuohao Lee 2018-08-02 23:36:47 +08:00 committed by Patrick Georgi
parent 0d8d4c642a
commit bd6f00f7a3
3 changed files with 52 additions and 0 deletions

View File

@ -86,6 +86,12 @@ config INCLUDE_NHLT_BLOBS_NOCTURNE
select NHLT_DMIC_4CH select NHLT_DMIC_4CH
select NHLT_MAX98373 select NHLT_MAX98373
config INCLUDE_NHLT_BLOBS_RAMMUS
bool "Include blobs for rammus audio."
select NHLT_DA7219
select NHLT_DMIC_4CH
select NHLT_MAX98927
config MAINBOARD_DIR config MAINBOARD_DIR
string string
default "google/poppy" default "google/poppy"
@ -186,6 +192,8 @@ config VARIANT_SPECIFIC_OPTIONS_NOCTURNE
config VARIANT_SPECIFIC_OPTIONS_RAMMUS config VARIANT_SPECIFIC_OPTIONS_RAMMUS
def_bool n def_bool n
select CHROMEOS_WIFI_SAR if CHROMEOS select CHROMEOS_WIFI_SAR if CHROMEOS
select DRIVERS_I2C_MAX98927
select DRIVERS_I2C_DA7219
select MAINBOARD_HAS_SPI_TPM_CR50 select MAINBOARD_HAS_SPI_TPM_CR50
config VARIANT_SPECIFIC_OPTIONS_SORAKA config VARIANT_SPECIFIC_OPTIONS_SORAKA

View File

@ -1 +1,2 @@
SPD_SOURCES = empty # 0b0000 SPD_SOURCES = empty # 0b0000
ramstage-y += nhlt.c

View File

@ -0,0 +1,43 @@
/*
* This file is part of the coreboot project.
*
* Copyright 2018 Google Inc.
*
* 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 <baseboard/variants.h>
#include <console/console.h>
#include <nhlt.h>
#include <soc/nhlt.h>
void variant_nhlt_init(struct nhlt *nhlt)
{
/* 4 Channel DMIC array. */
if (nhlt_soc_add_dmic_array(nhlt, 4))
printk(BIOS_ERR, "Couldn't add 4CH DMIC array.\n");
/* Dialog DA7219 Headset codec. */
if (nhlt_soc_add_da7219(nhlt, AUDIO_LINK_SSP1))
printk(BIOS_ERR, "Couldn't add Dialog DA7219.\n");
/* Maxim MAX98927 Smart Amps for left and right channel */
if (nhlt_soc_add_max98927(nhlt, AUDIO_LINK_SSP0))
printk(BIOS_ERR, "Couldn't add Maxim MAX98927\n");
}
void variant_nhlt_oem_overrides(const char **oem_id, const char **oem_table_id,
uint32_t *oem_revision)
{
*oem_id = "GOOGLE";
*oem_table_id = "RAMMUSMAX";
*oem_revision = 0;
}