ASoC: tlv320aic32x4: Add support for tlv320aic32x6

Add support for the tlv320aic32x6 family of devices.
These devices share the same register set as the tlv320aic32x4
and this driver can be re-used.

TLV320aic32x6 data sheets are here:
tlv320aic3256 - http://www.ti.com/lit/gpn/tlv320aic3256
tlv320aic3206 - http://www.ti.com/lit/gpn/tlv320aic3206

Signed-off-by: Dan Murphy <dmurphy@ti.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Dan Murphy 2017-07-12 13:36:59 -05:00 committed by Mark Brown
parent 5771a8c088
commit fde0543f11
3 changed files with 7 additions and 1 deletions

View File

@ -3,7 +3,9 @@ Texas Instruments - tlv320aic32x4 Codec module
The tlv320aic32x4 serial control bus communicates through I2C protocols The tlv320aic32x4 serial control bus communicates through I2C protocols
Required properties: Required properties:
- compatible: Should be "ti,tlv320aic32x4" - compatible - "string" - One of:
"ti,tlv320aic32x4" TLV320AIC3204
"ti,tlv320aic32x6" TLV320AIC3206, TLV320AIC3256
- reg: I2C slave address - reg: I2C slave address
- supply-*: Required supply regulators are: - supply-*: Required supply regulators are:
"iov" - digital IO power supply "iov" - digital IO power supply

View File

@ -47,12 +47,14 @@ static int aic32x4_i2c_remove(struct i2c_client *i2c)
static const struct i2c_device_id aic32x4_i2c_id[] = { static const struct i2c_device_id aic32x4_i2c_id[] = {
{ "tlv320aic32x4", 0 }, { "tlv320aic32x4", 0 },
{ "tlv320aic32x6", 1 },
{ /* sentinel */ } { /* sentinel */ }
}; };
MODULE_DEVICE_TABLE(i2c, aic32x4_i2c_id); MODULE_DEVICE_TABLE(i2c, aic32x4_i2c_id);
static const struct of_device_id aic32x4_of_id[] = { static const struct of_device_id aic32x4_of_id[] = {
{ .compatible = "ti,tlv320aic32x4", }, { .compatible = "ti,tlv320aic32x4", },
{ .compatible = "ti,tlv320aic32x6", },
{ /* senitel */ } { /* senitel */ }
}; };
MODULE_DEVICE_TABLE(of, aic32x4_of_id); MODULE_DEVICE_TABLE(of, aic32x4_of_id);

View File

@ -48,12 +48,14 @@ static int aic32x4_spi_remove(struct spi_device *spi)
static const struct spi_device_id aic32x4_spi_id[] = { static const struct spi_device_id aic32x4_spi_id[] = {
{ "tlv320aic32x4", 0 }, { "tlv320aic32x4", 0 },
{ "tlv320aic32x6", 1 },
{ /* sentinel */ } { /* sentinel */ }
}; };
MODULE_DEVICE_TABLE(spi, aic32x4_spi_id); MODULE_DEVICE_TABLE(spi, aic32x4_spi_id);
static const struct of_device_id aic32x4_of_id[] = { static const struct of_device_id aic32x4_of_id[] = {
{ .compatible = "ti,tlv320aic32x4", }, { .compatible = "ti,tlv320aic32x4", },
{ .compatible = "ti,tlv320aic32x6", },
{ /* senitel */ } { /* senitel */ }
}; };
MODULE_DEVICE_TABLE(of, aic32x4_of_id); MODULE_DEVICE_TABLE(of, aic32x4_of_id);