ASoC: rt5645: Introduce mapping for ACPI-defined GPIO
On at least one laptop (ECS EF20EA) the 'hp-detect' GPIO is defined in the DSDT table by the ACPI GpioIo resources in _CRS. The GPIO related information should be mapped to the rt5645 driver to enable the jack detection also on non-DT platforms. Signed-off-by: Chris Chiu <chiu@endlessos.org> Link: https://lore.kernel.org/r/20210111054141.4668-2-chiu@endlessos.org Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
31c51a424f
commit
21f603482a
@ -42,6 +42,8 @@ static unsigned int quirk = -1;
|
|||||||
module_param(quirk, uint, 0444);
|
module_param(quirk, uint, 0444);
|
||||||
MODULE_PARM_DESC(quirk, "RT5645 pdata quirk override");
|
MODULE_PARM_DESC(quirk, "RT5645 pdata quirk override");
|
||||||
|
|
||||||
|
static const struct acpi_gpio_mapping *cht_rt5645_gpios;
|
||||||
|
|
||||||
#define RT5645_DEVICE_ID 0x6308
|
#define RT5645_DEVICE_ID 0x6308
|
||||||
#define RT5650_DEVICE_ID 0x6419
|
#define RT5650_DEVICE_ID 0x6419
|
||||||
|
|
||||||
@ -3831,6 +3833,10 @@ static int rt5645_i2c_probe(struct i2c_client *i2c,
|
|||||||
rt5645->pdata.dmic2_data_pin = QUIRK_DMIC2_DATA_PIN(quirk);
|
rt5645->pdata.dmic2_data_pin = QUIRK_DMIC2_DATA_PIN(quirk);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (cht_rt5645_gpios && has_acpi_companion(&i2c->dev))
|
||||||
|
if (devm_acpi_dev_add_driver_gpios(&i2c->dev, cht_rt5645_gpios))
|
||||||
|
dev_dbg(&i2c->dev, "Failed to add driver gpios\n");
|
||||||
|
|
||||||
rt5645->gpiod_hp_det = devm_gpiod_get_optional(&i2c->dev, "hp-detect",
|
rt5645->gpiod_hp_det = devm_gpiod_get_optional(&i2c->dev, "hp-detect",
|
||||||
GPIOD_IN);
|
GPIOD_IN);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user