~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/sound/rockchip,pdm.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/sound/rockchip,pdm.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Rockchip PDM controller
  8 
  9 description:
 10   The Pulse Density Modulation Interface Controller (PDMC) is
 11   a PDM interface controller and decoder that support PDM format.
 12   It integrates a clock generator driving the PDM microphone
 13   and embeds filters which decimate the incoming bit stream to
 14   obtain most common audio rates.
 15 
 16 maintainers:
 17   - Heiko Stuebner <heiko@sntech.de>
 18 
 19 allOf:
 20   - $ref: dai-common.yaml#
 21 
 22 properties:
 23   compatible:
 24     enum:
 25       - rockchip,pdm
 26       - rockchip,px30-pdm
 27       - rockchip,rk1808-pdm
 28       - rockchip,rk3308-pdm
 29       - rockchip,rk3568-pdm
 30       - rockchip,rv1126-pdm
 31 
 32   reg:
 33     maxItems: 1
 34 
 35   interrupts:
 36     maxItems: 1
 37 
 38   clocks:
 39     items:
 40       - description: clock for PDM controller
 41       - description: clock for PDM BUS
 42 
 43   clock-names:
 44     items:
 45       - const: pdm_clk
 46       - const: pdm_hclk
 47 
 48   dmas:
 49     maxItems: 1
 50 
 51   dma-names:
 52     items:
 53       - const: rx
 54 
 55   power-domains:
 56     maxItems: 1
 57 
 58   resets:
 59     items:
 60       - description: reset for PDM controller
 61 
 62   reset-names:
 63     items:
 64       - const: pdm-m
 65 
 66   rockchip,path-map:
 67     $ref: /schemas/types.yaml#/definitions/uint32-array
 68     description:
 69       Defines the mapping of PDM SDIx to PDM PATHx.
 70       By default, they are mapped one-to-one.
 71     maxItems: 4
 72     uniqueItems: true
 73     items:
 74       enum: [ 0, 1, 2, 3 ]
 75 
 76   "#sound-dai-cells":
 77     const: 0
 78 
 79 required:
 80   - compatible
 81   - reg
 82   - interrupts
 83   - clocks
 84   - clock-names
 85   - dmas
 86   - dma-names
 87   - "#sound-dai-cells"
 88 
 89 unevaluatedProperties: false
 90 
 91 examples:
 92   - |
 93     #include <dt-bindings/clock/rk3328-cru.h>
 94     #include <dt-bindings/interrupt-controller/arm-gic.h>
 95     #include <dt-bindings/interrupt-controller/irq.h>
 96     #include <dt-bindings/pinctrl/rockchip.h>
 97 
 98     bus {
 99         #address-cells = <2>;
100         #size-cells = <2>;
101 
102         pdm@ff040000 {
103             compatible = "rockchip,pdm";
104             reg = <0x0 0xff040000 0x0 0x1000>;
105             interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
106             clocks = <&cru SCLK_PDM>, <&cru HCLK_PDM>;
107             clock-names = "pdm_clk", "pdm_hclk";
108             dmas = <&dmac 16>;
109             dma-names = "rx";
110             #sound-dai-cells = <0>;
111             pinctrl-names = "default", "sleep";
112             pinctrl-0 = <&pdmm0_clk
113                          &pdmm0_sdi0
114                          &pdmm0_sdi1
115                          &pdmm0_sdi2
116                          &pdmm0_sdi3>;
117             pinctrl-1 = <&pdmm0_clk_sleep
118                          &pdmm0_sdi0_sleep
119                          &pdmm0_sdi1_sleep
120                          &pdmm0_sdi2_sleep
121                          &pdmm0_sdi3_sleep>;
122         };
123     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php