diff options
-rw-r--r-- | Documentation/devicetree/bindings/sound/omap-dmic.txt | 21 | ||||
-rw-r--r-- | sound/soc/omap/omap-dmic.c | 8 |
2 files changed, 29 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/sound/omap-dmic.txt b/Documentation/devicetree/bindings/sound/omap-dmic.txt new file mode 100644 index 000000000000..fd8105f18978 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/omap-dmic.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | * Texas Instruments OMAP4+ Digital Microphone Module | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "ti,omap4-dmic" | ||
5 | - reg: Register location and size as an array: | ||
6 | <MPU access base address, size>, | ||
7 | <L3 interconnect address, size>; | ||
8 | - interrupts: Interrupt number for DMIC | ||
9 | - interrupt-parent: The parent interrupt controller | ||
10 | - ti,hwmods: Name of the hwmod associated with OMAP dmic IP | ||
11 | |||
12 | Example: | ||
13 | |||
14 | dmic: dmic@4012e000 { | ||
15 | compatible = "ti,omap4-dmic"; | ||
16 | reg = <0x4012e000 0x7f>, /* MPU private access */ | ||
17 | <0x4902e000 0x7f>; /* L3 Interconnect */ | ||
18 | interrupts = <0 114 0x4>; | ||
19 | interrupt-parent = <&gic>; | ||
20 | ti,hwmods = "dmic"; | ||
21 | }; | ||
diff --git a/sound/soc/omap/omap-dmic.c b/sound/soc/omap/omap-dmic.c index 4dcb5a7e40e8..75f5dca0e8d2 100644 --- a/sound/soc/omap/omap-dmic.c +++ b/sound/soc/omap/omap-dmic.c | |||
@@ -32,6 +32,7 @@ | |||
32 | #include <linux/io.h> | 32 | #include <linux/io.h> |
33 | #include <linux/slab.h> | 33 | #include <linux/slab.h> |
34 | #include <linux/pm_runtime.h> | 34 | #include <linux/pm_runtime.h> |
35 | #include <linux/of_device.h> | ||
35 | #include <plat/dma.h> | 36 | #include <plat/dma.h> |
36 | 37 | ||
37 | #include <sound/core.h> | 38 | #include <sound/core.h> |
@@ -528,10 +529,17 @@ static int __devexit asoc_dmic_remove(struct platform_device *pdev) | |||
528 | return 0; | 529 | return 0; |
529 | } | 530 | } |
530 | 531 | ||
532 | static const struct of_device_id omap_dmic_of_match[] = { | ||
533 | { .compatible = "ti,omap4-dmic", }, | ||
534 | { } | ||
535 | }; | ||
536 | MODULE_DEVICE_TABLE(of, omap_dmic_of_match); | ||
537 | |||
531 | static struct platform_driver asoc_dmic_driver = { | 538 | static struct platform_driver asoc_dmic_driver = { |
532 | .driver = { | 539 | .driver = { |
533 | .name = "omap-dmic", | 540 | .name = "omap-dmic", |
534 | .owner = THIS_MODULE, | 541 | .owner = THIS_MODULE, |
542 | .of_match_table = omap_dmic_of_match, | ||
535 | }, | 543 | }, |
536 | .probe = asoc_dmic_probe, | 544 | .probe = asoc_dmic_probe, |
537 | .remove = __devexit_p(asoc_dmic_remove), | 545 | .remove = __devexit_p(asoc_dmic_remove), |