Signed-off-by: Martin Roth <martin@coreboot.org> Change-Id: Ibb7b48a7a144421aff29acbb7ac30968ae5fe5ab Reviewed-on: https://review.coreboot.org/c/coreboot/+/36329 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Patrick Rudolph <siro@das-labor.org>
129 lines
2.9 KiB
C
129 lines
2.9 KiB
C
/*
|
|
* This file is part of the coreboot project.
|
|
*
|
|
* 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 <arch/acpi_device.h>
|
|
|
|
/*
|
|
* Dialog Semiconductor DA7219 Audio Codec devicetree bindings
|
|
* linux/Documentation/devicetree/bindings/sound/da7219.txt
|
|
*/
|
|
struct drivers_i2c_da7219_config {
|
|
/* Interrupt configuration */
|
|
struct acpi_irq irq;
|
|
|
|
/* Use GPIO based interrupt instead of PIRQ */
|
|
struct acpi_gpio irq_gpio;
|
|
|
|
/* I2C Bus Frequency in Hertz (default 400kHz) */
|
|
unsigned int bus_speed;
|
|
|
|
/*
|
|
* micbias-lvl : Voltage (mV) for Mic Bias
|
|
* [<1600>, <1800>, <2000>, <2200>, <2400>, <2600>]
|
|
*/
|
|
unsigned int micbias_lvl;
|
|
|
|
/*
|
|
* mic-amp-in-sel : Mic input source type
|
|
* ["diff", "se_p", "se_n"]
|
|
*/
|
|
const char *mic_amp_in_sel;
|
|
|
|
/*
|
|
* Properties for da7219_aad child node
|
|
*/
|
|
|
|
/*
|
|
* micbias-pulse-lvl : Mic bias higher voltage pulse level (mV)
|
|
* [<2800>, <2900>]
|
|
*/
|
|
unsigned int micbias_pulse_lvl;
|
|
|
|
/*
|
|
* micbias-pulse-time : Mic bias higher voltage pulse duration (ms)
|
|
*/
|
|
unsigned int micbias_pulse_time;
|
|
|
|
/*
|
|
* btn-cfg : Periodic button press measurements for 4-pole jack (ms)
|
|
* [<2>, <5>, <10>, <50>, <100>, <200>, <500>]
|
|
*/
|
|
unsigned int btn_cfg;
|
|
|
|
/*
|
|
* mic-det-thr : Impedance threshold for mic detection measurement (Ohms)
|
|
* [<200>, <500>, <750>, <1000>]
|
|
*/
|
|
unsigned int mic_det_thr;
|
|
|
|
/*
|
|
* jack-ins-deb : Debounce time for jack insertion (ms)
|
|
* [<5>, <10>, <20>, <50>, <100>, <200>, <500>, <1000>]
|
|
*/
|
|
unsigned int jack_ins_deb;
|
|
|
|
/*
|
|
* jack-det-rate : Jack type detection latency (3/4 pole)
|
|
* ["32ms_64ms", "64ms_128ms", "128ms_256ms", "256ms_512ms"]
|
|
*/
|
|
const char *jack_det_rate;
|
|
|
|
/*
|
|
* jack-rem-deb : Debounce time for jack removal (ms)
|
|
* [<1>, <5>, <10>, <20>]
|
|
*/
|
|
unsigned int jack_rem_deb;
|
|
|
|
/*
|
|
* a-d-btn-thr : Impedance threshold between buttons A and D
|
|
* [0x0 - 0xFF]
|
|
*/
|
|
unsigned int a_d_btn_thr;
|
|
|
|
/*
|
|
* d-b-btn-thr : Impedance threshold between buttons D and B
|
|
* [0x0 - 0xFF]
|
|
*/
|
|
unsigned int d_b_btn_thr;
|
|
|
|
/*
|
|
* b-c-btn-thr : Impedance threshold between buttons B and C
|
|
* [0x0 - 0xFF]
|
|
*/
|
|
unsigned int b_c_btn_thr;
|
|
|
|
/*
|
|
* c-mic-btn-thr : Impedance threshold between button C and Mic
|
|
* [0x0 - 0xFF]
|
|
*/
|
|
unsigned int c_mic_btn_thr;
|
|
|
|
/*
|
|
* btn-avg : Number of 8-bit readings for averaged button measurement
|
|
* [<1>, <2>, <4>, <8>]
|
|
*/
|
|
unsigned int btn_avg;
|
|
|
|
/*
|
|
* adc-1bit-rpt : Repeat count for 1-bit button measurement
|
|
* [<1>, <2>, <4>, <8>]
|
|
*/
|
|
unsigned int adc_1bit_rpt;
|
|
|
|
/*
|
|
* mclk-name : Pass the system clk to da7219
|
|
* ["name of mclk" ]
|
|
*/
|
|
const char *mclk_name;
|
|
};
|