1fda8d26eSThomas Gleixner // SPDX-License-Identifier: GPL-2.0-only 20c2d6964SLars-Peter Clausen /* 30c2d6964SLars-Peter Clausen * ADAV803 audio driver 40c2d6964SLars-Peter Clausen * 50c2d6964SLars-Peter Clausen * Copyright 2014 Analog Devices Inc. 60c2d6964SLars-Peter Clausen */ 70c2d6964SLars-Peter Clausen 80c2d6964SLars-Peter Clausen #include <linux/module.h> 90c2d6964SLars-Peter Clausen #include <linux/i2c.h> 100c2d6964SLars-Peter Clausen #include <linux/regmap.h> 110c2d6964SLars-Peter Clausen 120c2d6964SLars-Peter Clausen #include <sound/soc.h> 130c2d6964SLars-Peter Clausen 140c2d6964SLars-Peter Clausen #include "adav80x.h" 150c2d6964SLars-Peter Clausen 160c2d6964SLars-Peter Clausen static const struct i2c_device_id adav803_id[] = { 17*ba2a2c37SUwe Kleine-König { "adav803" }, 180c2d6964SLars-Peter Clausen { } 190c2d6964SLars-Peter Clausen }; 200c2d6964SLars-Peter Clausen MODULE_DEVICE_TABLE(i2c, adav803_id); 210c2d6964SLars-Peter Clausen adav803_probe(struct i2c_client * client)22b79bd63aSStephen Kittstatic int adav803_probe(struct i2c_client *client) 230c2d6964SLars-Peter Clausen { 240c2d6964SLars-Peter Clausen return adav80x_bus_probe(&client->dev, 250c2d6964SLars-Peter Clausen devm_regmap_init_i2c(client, &adav80x_regmap_config)); 260c2d6964SLars-Peter Clausen } 270c2d6964SLars-Peter Clausen 280c2d6964SLars-Peter Clausen static struct i2c_driver adav803_driver = { 290c2d6964SLars-Peter Clausen .driver = { 300c2d6964SLars-Peter Clausen .name = "adav803", 310c2d6964SLars-Peter Clausen }, 329abcd240SUwe Kleine-König .probe = adav803_probe, 330c2d6964SLars-Peter Clausen .id_table = adav803_id, 340c2d6964SLars-Peter Clausen }; 350c2d6964SLars-Peter Clausen module_i2c_driver(adav803_driver); 360c2d6964SLars-Peter Clausen 370c2d6964SLars-Peter Clausen MODULE_DESCRIPTION("ASoC ADAV803 driver"); 380c2d6964SLars-Peter Clausen MODULE_AUTHOR("Lars-Peter Clausen <lars@metafoo.de>"); 390c2d6964SLars-Peter Clausen MODULE_AUTHOR("Yi Li <yi.li@analog.com>>"); 400c2d6964SLars-Peter Clausen MODULE_LICENSE("GPL"); 41