xref: /openbmc/linux/sound/soc/codecs/adau1372-i2c.c (revision 9dbbc3b9)
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * Driver for ADAU1372 codec
4  *
5  * Copyright 2016 Analog Devices Inc.
6  *  Author: Lars-Peter Clausen <lars@metafoo.de>
7  */
8 
9 #include <linux/i2c.h>
10 #include <linux/mod_devicetable.h>
11 #include <linux/module.h>
12 #include <linux/regmap.h>
13 #include <sound/soc.h>
14 
15 #include "adau1372.h"
16 
17 static int adau1372_i2c_probe(struct i2c_client *client, const struct i2c_device_id *id)
18 {
19 	return adau1372_probe(&client->dev,
20 		devm_regmap_init_i2c(client, &adau1372_regmap_config), NULL);
21 }
22 
23 static const struct i2c_device_id adau1372_i2c_ids[] = {
24 	{ "adau1372", 0 },
25 	{ }
26 };
27 MODULE_DEVICE_TABLE(i2c, adau1372_i2c_ids);
28 
29 static struct i2c_driver adau1372_i2c_driver = {
30 	.driver = {
31 		.name = "adau1372",
32 	},
33 	.probe = adau1372_i2c_probe,
34 	.id_table = adau1372_i2c_ids,
35 };
36 module_i2c_driver(adau1372_i2c_driver);
37 
38 MODULE_DESCRIPTION("ASoC ADAU1372 CODEC I2C driver");
39 MODULE_AUTHOR("Lars-Peter Clausen <lars@metafoo.de>");
40 MODULE_LICENSE("GPL v2");
41