summaryrefslogtreecommitdiff
path: root/drivers/mfd/madera-i2c.c
diff options
context:
space:
mode:
authorRichard Fitzgerald <rf@opensource.cirrus.com>2019-05-30 15:39:52 +0100
committerLee Jones <lee.jones@linaro.org>2019-07-02 12:11:31 +0100
commit1ef921b6d1b68887be22f02dabc6ae73c112dce4 (patch)
tree9e2bf4a5f03b2517402e0ddcd71fafb2858c8c81 /drivers/mfd/madera-i2c.c
parent8f759058e9f9616980aaf838a45cc545cbe6e447 (diff)
mfd: madera: Add Madera core support for CS47L15
This patch adds all the core support and defines for the Cirrus Logic CS47L15 smart audio CODEC. Registers or fields are named MADERA_* if it is part of the common hardware platform and does not conflict with any other Madera codecs. It is named CS47L15_* if it is unique to CS47L15 and conflicts with definitions on other codecs. Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/mfd/madera-i2c.c')
-rw-r--r--drivers/mfd/madera-i2c.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/mfd/madera-i2c.c b/drivers/mfd/madera-i2c.c
index 05ae94be01d8..bd868459cedb 100644
--- a/drivers/mfd/madera-i2c.c
+++ b/drivers/mfd/madera-i2c.c
@@ -39,6 +39,12 @@ static int madera_i2c_probe(struct i2c_client *i2c,
type = id->driver_data;
switch (type) {
+ case CS47L15:
+ if (IS_ENABLED(CONFIG_MFD_CS47L15)) {
+ regmap_16bit_config = &cs47l15_16bit_i2c_regmap;
+ regmap_32bit_config = &cs47l15_32bit_i2c_regmap;
+ }
+ break;
case CS47L35:
if (IS_ENABLED(CONFIG_MFD_CS47L35)) {
regmap_16bit_config = &cs47l35_16bit_i2c_regmap;
@@ -113,6 +119,7 @@ static int madera_i2c_remove(struct i2c_client *i2c)
}
static const struct i2c_device_id madera_i2c_id[] = {
+ { "cs47l15", CS47L15 },
{ "cs47l35", CS47L35 },
{ "cs47l85", CS47L85 },
{ "cs47l90", CS47L90 },