diff options
Diffstat (limited to 'sound/soc/codecs/cs530x-i2c.c')
| -rw-r--r-- | sound/soc/codecs/cs530x-i2c.c | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/sound/soc/codecs/cs530x-i2c.c b/sound/soc/codecs/cs530x-i2c.c index 22b1a4d6b61c..52b02ceaa7e3 100644 --- a/sound/soc/codecs/cs530x-i2c.c +++ b/sound/soc/codecs/cs530x-i2c.c @@ -2,8 +2,8 @@ // // CS530x CODEC driver // -// Copyright (C) 2024 Cirrus Logic, Inc. and -// Cirrus Logic International Semiconductor Ltd. +// Copyright (C) 2024-2025 Cirrus Logic, Inc. and +// Cirrus Logic International Semiconductor Ltd. #include <linux/device.h> #include <linux/module.h> @@ -14,6 +14,18 @@ static const struct of_device_id cs530x_of_match[] = { { + .compatible = "cirrus,cs4282", + .data = (void *)CS4282, + }, { + .compatible = "cirrus,cs4302", + .data = (void *)CS4302, + }, { + .compatible = "cirrus,cs4304", + .data = (void *)CS4304, + }, { + .compatible = "cirrus,cs4308", + .data = (void *)CS4308, + }, { .compatible = "cirrus,cs5302", .data = (void *)CS5302, }, { @@ -28,6 +40,10 @@ static const struct of_device_id cs530x_of_match[] = { MODULE_DEVICE_TABLE(of, cs530x_of_match); static const struct i2c_device_id cs530x_i2c_id[] = { + { "cs4282", CS4282 }, + { "cs4302", CS4302 }, + { "cs4304", CS4304 }, + { "cs4308", CS4308 }, { "cs5302", CS5302 }, { "cs5304", CS5304 }, { "cs5308", CS5308 }, @@ -45,10 +61,10 @@ static int cs530x_i2c_probe(struct i2c_client *client) i2c_set_clientdata(client, cs530x); - cs530x->regmap = devm_regmap_init_i2c(client, &cs530x_regmap); + cs530x->regmap = devm_regmap_init_i2c(client, &cs530x_regmap_i2c); if (IS_ERR(cs530x->regmap)) return dev_err_probe(&client->dev, PTR_ERR(cs530x->regmap), - "Failed to allocate register map\n"); + "Failed to allocate register map\n"); cs530x->devtype = (uintptr_t)i2c_get_match_data(client); cs530x->dev = &client->dev; |
