aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/arm/primecell.txt
blob: 0df6acacfaea689098b9539f1b3d1e32592021e5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
* ARM Primecell Peripherals

ARM, Ltd. Primecell peripherals have a standard id register that can be used to
identify the peripheral type, vendor, and revision. This value can be used for
driver matching.

Required properties:

- compatible : should be a specific name for the peripheral and
               "arm,primecell".  The specific name will match the ARM
               engineering name for the logic block in the form: "arm,pl???"

Optional properties:

- arm,primecell-periphid : Value to override the h/w value with
- clocks : From common clock binding. First clock is phandle to clock for apb
	pclk. Additional clocks are optional and specific to those peripherals.
- clock-names : From common clock binding. Shall be "apb_pclk" for first clock.
- dmas : From common DMA binding. If present, refers to one or more dma channels.
- dma-names : From common DMA binding, needs to match the 'dmas' property.
              Devices with exactly one receive and transmit channel shall name
              these "rx" and "tx", respectively.
- pinctrl-<n> : Pinctrl states as described in bindings/pinctrl/pinctrl-bindings.txt
- pinctrl-names : Names corresponding to the numbered pinctrl states
- interrupts : one or more interrupt specifiers
- interrupt-names : names corresponding to the interrupts properties

Example:

serial@fff36000 {
	compatible = "arm,pl011", "arm,primecell";
	arm,primecell-periphid = <0x00341011>;

	clocks = <&pclk>;
	clock-names = "apb_pclk";

	dmas = <&dma-controller 4>, <&dma-controller 5>;
	dma-names = "rx", "tx";	

	pinctrl-0 = <&uart0_default_mux>, <&uart0_default_mode>;
	pinctrl-1 = <&uart0_sleep_mode>;
	pinctrl-names = "default","sleep";

	interrupts = <0 11 0x4>;
};