This adds devicetree support to the wm8974 codec driver.
With a DT-based kernel, there is no board-specific setting
to select the driver so allow it to be manually chosen.

Signed-off-by: Mans Rullgard <m...@mansr.com>
---
 sound/soc/codecs/Kconfig  | 3 ++-
 sound/soc/codecs/wm8974.c | 7 +++++++
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
index cfdafc4..e36b14c 100644
--- a/sound/soc/codecs/Kconfig
+++ b/sound/soc/codecs/Kconfig
@@ -838,7 +838,8 @@ config SND_SOC_WM8971
        tristate
 
 config SND_SOC_WM8974
-       tristate
+       tristate "Wolfson Microelectronics WM8974 codec"
+       depends on I2C
 
 config SND_SOC_WM8978
        tristate "Wolfson Microelectronics WM8978 codec"
diff --git a/sound/soc/codecs/wm8974.c b/sound/soc/codecs/wm8974.c
index 4c29bd2..c284c7b 100644
--- a/sound/soc/codecs/wm8974.c
+++ b/sound/soc/codecs/wm8974.c
@@ -632,9 +632,16 @@ static const struct i2c_device_id wm8974_i2c_id[] = {
 };
 MODULE_DEVICE_TABLE(i2c, wm8974_i2c_id);
 
+static const struct of_device_id wm8974_of_match[] = {
+       { .compatible = "wlf,wm8974", },
+       { }
+};
+MODULE_DEVICE_TABLE(of, wm8974_of_match);
+
 static struct i2c_driver wm8974_i2c_driver = {
        .driver = {
                .name = "wm8974",
+               .of_match_table = wm8974_of_match,
        },
        .probe =    wm8974_i2c_probe,
        .remove =   wm8974_i2c_remove,
-- 
2.6.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to