sun4i-codec.txt 1.5 KB
Newer Older
1 2 3
* Allwinner A10 Codec

Required properties:
4 5 6 7
- compatible: must be one of the following compatibles:
		- "allwinner,sun4i-a10-codec"
		- "allwinner,sun6i-a31-codec"
		- "allwinner,sun7i-a20-codec"
8 9 10 11 12 13 14 15 16 17 18
- reg: must contain the registers location and length
- interrupts: must contain the codec interrupt
- dmas: DMA channels for tx and rx dma. See the DMA client binding,
	Documentation/devicetree/bindings/dma/dma.txt
- dma-names: should include "tx" and "rx".
- clocks: a list of phandle + clock-specifer pairs, one for each entry
  in clock-names.
- clock-names: should contain followings:
   - "apb": the parent APB clock for this controller
   - "codec": the parent module clock

19 20 21
Optional properties:
- allwinner,pa-gpios: gpio to enable external amplifier

22 23 24 25
Required properties for the following compatibles:
		- "allwinner,sun6i-a31-codec"
- resets: phandle to the reset control for this device

26 27 28 29 30 31 32 33 34 35 36
Example:
codec: codec@01c22c00 {
	#sound-dai-cells = <0>;
	compatible = "allwinner,sun7i-a20-codec";
	reg = <0x01c22c00 0x40>;
	interrupts = <0 30 4>;
	clocks = <&apb0_gates 0>, <&codec_clk>;
	clock-names = "apb", "codec";
	dmas = <&dma 0 19>, <&dma 0 19>;
	dma-names = "rx", "tx";
};
37 38 39 40 41 42 43 44 45 46 47 48

codec: codec@01c22c00 {
	#sound-dai-cells = <0>;
	compatible = "allwinner,sun6i-a31-codec";
	reg = <0x01c22c00 0x98>;
	interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
	clocks = <&ccu CLK_APB1_CODEC>, <&ccu CLK_CODEC>;
	clock-names = "apb", "codec";
	resets = <&ccu RST_APB1_CODEC>;
	dmas = <&dma 15>, <&dma 15>;
	dma-names = "rx", "tx";
};