/* * ALSA SoC TLV320AIC23 codec driver I2C interface * * Author: Arun KS, * Copyright: (C) 2008 Mistral Solutions Pvt Ltd., * * Based on sound/soc/codecs/wm8731.c by Richard Purdie * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #include #include #include #include #include #include "tlv320aic23.h" static int tlv320aic23_i2c_probe(struct i2c_client *i2c, const struct i2c_device_id *i2c_id) { struct regmap *regmap; if (!i2c_check_functionality(i2c->adapter, I2C_FUNC_SMBUS_BYTE_DATA)) return -EINVAL; regmap = devm_regmap_init_i2c(i2c, &tlv320aic23_regmap); return tlv320aic23_probe(&i2c->dev, regmap); } static int tlv320aic23_i2c_remove(struct i2c_client *i2c) { snd_soc_unregister_codec(&i2c->dev); return 0; } static const struct i2c_device_id tlv320aic23_id[] = { {"tlv320aic23", 0}, {} }; MODULE_DEVICE_TABLE(i2c, tlv320aic23_id); static const struct of_device_id tlv320aic23_of_match[] = { { .compatible = "ti,tlv320aic23", }, { } }; MODULE_DEVICE_TABLE(of, tlv320aic23_of_match); static struct i2c_driver tlv320aic23_i2c_driver = { .driver = { .name = "tlv320aic23-codec", .of_match_table = of_match_ptr(tlv320aic23_of_match), }, .probe = tlv320aic23_i2c_probe, .remove = tlv320aic23_i2c_remove, .id_table = tlv320aic23_id, }; module_i2c_driver(tlv320aic23_i2c_driver); MODULE_DESCRIPTION("ASoC TLV320AIC23 codec driver I2C"); MODULE_AUTHOR("Arun KS "); MODULE_LICENSE("GPL"); t/log/drivers/usb'>logtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-12-12 14:55:04 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2016-12-12 14:55:04 -0800
commit212f30008a284a9312d95dad6cc237ff81173d73 (patch)
treed3fb92f2f32e0c8dfb6f351d15090dc518ecc6f2 /drivers/usb
parent6f3be0f04354185e81a006b8e4dfc307edad75e7 (diff)
parent34bc3560c657d3d4fb17367ed9bfda803166dce0 (diff)
Merge branch 'x86-idle-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 idle updates from Ingo Molnar: "There were two bigger changes in this development cycle: - remove idle notifiers: 32 files changed, 74 insertions(+), 803 deletions(-) These notifiers were of questionable value and the main usecase, the i7300 driver, was essentially unmaintained and can be removed, plus modern power management concepts don't need the callback - so use this golden opportunity and get rid of this opaque and fragile callback from a latency sensitive code path. (Len Brown, Thomas Gleixner) - improve the AMD Erratum 400 workaround that used high overhead MSR polling in the idle loop (Borisla Petkov, Thomas Gleixner)" * 'x86-idle-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86: Remove empty idle.h header x86/amd: Simplify AMD E400 aware idle routine x86/amd: Check for the C1E bug post ACPI subsystem init x86/bugs: Separate AMD E400 erratum and C1E bug x86/cpufeature: Provide helper to set bugs bits x86/idle: Remove enter_idle(), exit_idle() x86: Remove x86_test_and_clear_bit_percpu() x86/idle: Remove is_idle flag x86/idle: Remove idle_notifier i7300_idle: Remove this driver
Diffstat (limited to 'drivers/usb')