summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNaveen Manohar <naveen.m@intel.com>2017-11-04 04:00:12 +0530
committerFurquan Shaikh <furquan@google.com>2017-11-07 23:37:38 +0000
commit5bcb23ebbb85d9616f8ba2a82e48178559b350e6 (patch)
tree0a6409106efb16fef7d6fc0d651ee90a682117b8
parent351059a0b4a32eff7a2e44b2b745690dbd091867 (diff)
downloadcoreboot-5bcb23ebbb85d9616f8ba2a82e48178559b350e6.tar.xz
mb/google/poppy/variants/nautilus: Enable Dialog DA7219 support
Enable Dialog DA7219 codec i2c device and add required SSDT parameters BUG=b:68686020 TEST=With req'd driver support in kernel v4.4 verify audio on headset Change-Id: Ic815c929f29bec0d26a2981e9933b752c2d84c70 Signed-off-by: Naveen Manohar <naveen.m@intel.com> Signed-off-by: Shruthi Sudhakar <shruthi.sudhakar@intel.com> Reviewed-on: https://review.coreboot.org/22264 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
-rw-r--r--src/mainboard/google/poppy/Kconfig1
-rw-r--r--src/mainboard/google/poppy/variants/nautilus/devicetree.cb27
-rw-r--r--src/mainboard/google/poppy/variants/nautilus/gpio.c2
3 files changed, 28 insertions, 2 deletions
diff --git a/src/mainboard/google/poppy/Kconfig b/src/mainboard/google/poppy/Kconfig
index f186daac61..f725113fdc 100644
--- a/src/mainboard/google/poppy/Kconfig
+++ b/src/mainboard/google/poppy/Kconfig
@@ -3,6 +3,7 @@ config BOARD_GOOGLE_BASEBOARD_POPPY
def_bool n
select BOARD_ID_AUTO
select BOARD_ROMSIZE_KB_16384
+ select DRIVERS_I2C_DA7219 if BOARD_GOOGLE_NAUTILUS
select DRIVERS_I2C_GENERIC
select DRIVERS_I2C_HID
select DRIVERS_I2C_MAX98927 if !BOARD_GOOGLE_NAUTILUS
diff --git a/src/mainboard/google/poppy/variants/nautilus/devicetree.cb b/src/mainboard/google/poppy/variants/nautilus/devicetree.cb
index bc4d7682fd..2721218659 100644
--- a/src/mainboard/google/poppy/variants/nautilus/devicetree.cb
+++ b/src/mainboard/google/poppy/variants/nautilus/devicetree.cb
@@ -204,6 +204,13 @@ chip soc/intel/skylake
[PchSerialIoIndexUart2] = PchSerialIoSkipInit,
}"
+ # Enable I2C5 for audio codec at 400kHz
+ register "i2c[5]" = "{
+ .speed = I2C_SPEED_FAST,
+ .rise_time_ns = 104,
+ .fall_time_ns = 52,
+ }"
+
register "speed_shift_enable" = "1"
# PL2 override 15W for KBL-Y
register "tdp_pl2_override" = "15"
@@ -241,7 +248,25 @@ chip soc/intel/skylake
device pci 16.4 off end # Management Engine Interface 3
device pci 17.0 off end # SATA
device pci 19.0 on end # UART #2
- device pci 19.1 on end # I2C #5
+ device pci 19.1 on
+ chip drivers/i2c/da7219
+ register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D9_IRQ)"
+ register "btn_cfg" = "50"
+ register "mic_det_thr" = "500"
+ register "jack_ins_deb" = "20"
+ register "jack_det_rate" = ""32ms_64ms""
+ register "jack_rem_deb" = "1"
+ register "a_d_btn_thr" = "0xa"
+ register "d_b_btn_thr" = "0x16"
+ register "b_c_btn_thr" = "0x21"
+ register "c_mic_btn_thr" = "0x3e"
+ register "btn_avg" = "4"
+ register "adc_1bit_rpt" = "1"
+ register "micbias_lvl" = "2600"
+ register "mic_amp_in_sel" = ""diff""
+ device i2c 1A on end
+ end
+ end # I2C #5
device pci 19.2 on
chip drivers/i2c/generic
register "hid" = ""ELAN0000""
diff --git a/src/mainboard/google/poppy/variants/nautilus/gpio.c b/src/mainboard/google/poppy/variants/nautilus/gpio.c
index 713309539f..51d3b77032 100644
--- a/src/mainboard/google/poppy/variants/nautilus/gpio.c
+++ b/src/mainboard/google/poppy/variants/nautilus/gpio.c
@@ -179,7 +179,7 @@ static const struct pad_config gpio_table[] = {
/* D8 : ISH_I2C1_SCL ==> NC */
PAD_CFG_NC(GPP_D8),
/* D9 : ISH_SPI_CS# ==> CHP1_HEADSET_INT_L */
- PAD_CFG_GPI_APIC_INVERT(GPP_D9, NONE, DEEP),
+ PAD_CFG_GPI_APIC(GPP_D9, 20K_PU, DEEP),
/* D10 : ISH_SPI_CLK ==> NC */
PAD_CFG_NC(GPP_D10),
/* D11 : ISH_SPI_MISO ==> NC */