ASoC: spdif_receiver: Add DT support.
authorMarek Belisko <marek.belisko@gmail.com>
Thu, 25 Apr 2013 13:13:14 +0000 (15:13 +0200)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sun, 12 May 2013 16:51:06 +0000 (20:51 +0400)
Add devicetree support for this dummy audio soc driver.

Signed-off-by: Michal Bachraty <michal.bachraty@streamunlimited.com>
Signed-off-by: Marek Belisko <marek.belisko@streamunlimited.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Documentation/devicetree/bindings/sound/spdif-receiver.txt [new file with mode: 0644]
sound/soc/codecs/spdif_receiver.c

diff --git a/Documentation/devicetree/bindings/sound/spdif-receiver.txt b/Documentation/devicetree/bindings/sound/spdif-receiver.txt
new file mode 100644 (file)
index 0000000..80f807b
--- /dev/null
@@ -0,0 +1,10 @@
+Device-Tree bindings for dummy spdif receiver
+
+Required properties:
+       - compatible: should be "linux,spdif-dir".
+
+Example node:
+
+       codec: spdif-receiver {
+               compatible = "linux,spdif-dir";
+       };
index dd8d856..e9d7881 100644 (file)
@@ -21,6 +21,7 @@
 #include <sound/soc.h>
 #include <sound/pcm.h>
 #include <sound/initval.h>
+#include <linux/of.h>
 
 #define STUB_RATES     SNDRV_PCM_RATE_8000_192000
 #define STUB_FORMATS   (SNDRV_PCM_FMTBIT_S16_LE | \
@@ -51,12 +52,21 @@ static int spdif_dir_remove(struct platform_device *pdev)
        return 0;
 }
 
+#ifdef CONFIG_OF
+static const struct of_device_id spdif_dir_dt_ids[] = {
+       { .compatible = "linux,spdif-dir", },
+       { }
+};
+MODULE_DEVICE_TABLE(of, spdif_dir_dt_ids);
+#endif
+
 static struct platform_driver spdif_dir_driver = {
        .probe          = spdif_dir_probe,
        .remove         = spdif_dir_remove,
        .driver         = {
                .name   = "spdif-dir",
                .owner  = THIS_MODULE,
+               .of_match_table = of_match_ptr(spdif_dir_dt_ids),
        },
 };