diff options
author | Olof Johansson <olof@lixom.net> | 2012-09-24 00:51:39 -0400 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2012-09-24 00:51:39 -0400 |
commit | db404e72bb5432c886ff0ea42e7b31d16be0c837 (patch) | |
tree | 91cf9618fa0b5233115abe6863d2f8a36390c050 /Documentation | |
parent | 40169a7c399346281da55ed9905a104d3da47945 (diff) | |
parent | e9a91de7602a0a6999f23a2981db68b69aa695a7 (diff) |
Merge tag 'vt8500-for-next' of git://git.code.sf.net/p/linuxwmt/code into next/dt
From Tony Prisk:
Update arch-vt8500 and drivers to device tree and
remove existing non-dt code.
* tag 'vt8500-for-next' of git://git.code.sf.net/p/linuxwmt/code:
arm: vt8500: Update arch-vt8500 to devicetree support.
arm: vt8500: gpio: Devicetree support for arch-vt8500
arm: vt8500: doc: Add device tree bindings for arch-vt8500 devices
arm: vt8500: clk: Add Common Clock Framework support
video: vt8500: Add devicetree support for vt8500-fb and wm8505-fb
serial: vt8500: Add devicetree support for vt8500-serial
rtc: vt8500: Add devicetree support for vt8500-rtc
arm: vt8500: Add device tree files for VIA/Wondermedia SoC's
Resolved add/change conflict in drivers/clk/Makefile.
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'Documentation')
14 files changed, 316 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/arm/vt8500.txt b/Documentation/devicetree/bindings/arm/vt8500.txt new file mode 100644 index 000000000000..d657832c6819 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/vt8500.txt | |||
@@ -0,0 +1,14 @@ | |||
1 | VIA/Wondermedia VT8500 Platforms Device Tree Bindings | ||
2 | --------------------------------------- | ||
3 | |||
4 | Boards with the VIA VT8500 SoC shall have the following properties: | ||
5 | Required root node property: | ||
6 | compatible = "via,vt8500"; | ||
7 | |||
8 | Boards with the Wondermedia WM8505 SoC shall have the following properties: | ||
9 | Required root node property: | ||
10 | compatible = "wm,wm8505"; | ||
11 | |||
12 | Boards with the Wondermedia WM8650 SoC shall have the following properties: | ||
13 | Required root node property: | ||
14 | compatible = "wm,wm8650"; | ||
diff --git a/Documentation/devicetree/bindings/arm/vt8500/via,vt8500-intc.txt b/Documentation/devicetree/bindings/arm/vt8500/via,vt8500-intc.txt new file mode 100644 index 000000000000..0a4ce1051b02 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/vt8500/via,vt8500-intc.txt | |||
@@ -0,0 +1,16 @@ | |||
1 | VIA/Wondermedia VT8500 Interrupt Controller | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "via,vt8500-intc" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | - #interrupt-cells : should be <1> | ||
8 | |||
9 | Example: | ||
10 | |||
11 | intc: interrupt-controller@d8140000 { | ||
12 | compatible = "via,vt8500-intc"; | ||
13 | interrupt-controller; | ||
14 | reg = <0xd8140000 0x10000>; | ||
15 | #interrupt-cells = <1>; | ||
16 | }; | ||
diff --git a/Documentation/devicetree/bindings/arm/vt8500/via,vt8500-pmc.txt b/Documentation/devicetree/bindings/arm/vt8500/via,vt8500-pmc.txt new file mode 100644 index 000000000000..521b9c7de933 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/vt8500/via,vt8500-pmc.txt | |||
@@ -0,0 +1,13 @@ | |||
1 | VIA/Wondermedia VT8500 Power Management Controller | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "via,vt8500-pmc" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | |||
8 | Example: | ||
9 | |||
10 | pmc@d8130000 { | ||
11 | compatible = "via,vt8500-pmc"; | ||
12 | reg = <0xd8130000 0x1000>; | ||
13 | }; | ||
diff --git a/Documentation/devicetree/bindings/arm/vt8500/via,vt8500-timer.txt b/Documentation/devicetree/bindings/arm/vt8500/via,vt8500-timer.txt new file mode 100644 index 000000000000..901c73f0d8ef --- /dev/null +++ b/Documentation/devicetree/bindings/arm/vt8500/via,vt8500-timer.txt | |||
@@ -0,0 +1,15 @@ | |||
1 | VIA/Wondermedia VT8500 Timer | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "via,vt8500-timer" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | - interrupts : interrupt for the timer | ||
8 | |||
9 | Example: | ||
10 | |||
11 | timer@d8130100 { | ||
12 | compatible = "via,vt8500-timer"; | ||
13 | reg = <0xd8130100 0x28>; | ||
14 | interrupts = <36>; | ||
15 | }; | ||
diff --git a/Documentation/devicetree/bindings/clock/vt8500.txt b/Documentation/devicetree/bindings/clock/vt8500.txt new file mode 100644 index 000000000000..a880c70d0047 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/vt8500.txt | |||
@@ -0,0 +1,72 @@ | |||
1 | Device Tree Clock bindings for arch-vt8500 | ||
2 | |||
3 | This binding uses the common clock binding[1]. | ||
4 | |||
5 | [1] Documentation/devicetree/bindings/clock/clock-bindings.txt | ||
6 | |||
7 | Required properties: | ||
8 | - compatible : shall be one of the following: | ||
9 | "via,vt8500-pll-clock" - for a VT8500/WM8505 PLL clock | ||
10 | "wm,wm8650-pll-clock" - for a WM8650 PLL clock | ||
11 | "via,vt8500-device-clock" - for a VT/WM device clock | ||
12 | |||
13 | Required properties for PLL clocks: | ||
14 | - reg : shall be the control register offset from PMC base for the pll clock. | ||
15 | - clocks : shall be the input parent clock phandle for the clock. This should | ||
16 | be the reference clock. | ||
17 | - #clock-cells : from common clock binding; shall be set to 0. | ||
18 | |||
19 | Required properties for device clocks: | ||
20 | - clocks : shall be the input parent clock phandle for the clock. This should | ||
21 | be a pll output. | ||
22 | - #clock-cells : from common clock binding; shall be set to 0. | ||
23 | |||
24 | |||
25 | Device Clocks | ||
26 | |||
27 | Device clocks are required to have one or both of the following sets of | ||
28 | properties: | ||
29 | |||
30 | |||
31 | Gated device clocks: | ||
32 | |||
33 | Required properties: | ||
34 | - enable-reg : shall be the register offset from PMC base for the enable | ||
35 | register. | ||
36 | - enable-bit : shall be the bit within enable-reg to enable/disable the clock. | ||
37 | |||
38 | |||
39 | Divisor device clocks: | ||
40 | |||
41 | Required property: | ||
42 | - divisor-reg : shall be the register offset from PMC base for the divisor | ||
43 | register. | ||
44 | Optional property: | ||
45 | - divisor-mask : shall be the mask for the divisor register. Defaults to 0x1f | ||
46 | if not specified. | ||
47 | |||
48 | |||
49 | For example: | ||
50 | |||
51 | ref25: ref25M { | ||
52 | #clock-cells = <0>; | ||
53 | compatible = "fixed-clock"; | ||
54 | clock-frequency = <25000000>; | ||
55 | }; | ||
56 | |||
57 | plla: plla { | ||
58 | #clock-cells = <0>; | ||
59 | compatible = "wm,wm8650-pll-clock"; | ||
60 | clocks = <&ref25>; | ||
61 | reg = <0x200>; | ||
62 | }; | ||
63 | |||
64 | sdhc: sdhc { | ||
65 | #clock-cells = <0>; | ||
66 | compatible = "via,vt8500-device-clock"; | ||
67 | clocks = <&pllb>; | ||
68 | divisor-reg = <0x328>; | ||
69 | divisor-mask = <0x3f>; | ||
70 | enable-reg = <0x254>; | ||
71 | enable-bit = <18>; | ||
72 | }; | ||
diff --git a/Documentation/devicetree/bindings/gpio/gpio-vt8500.txt b/Documentation/devicetree/bindings/gpio/gpio-vt8500.txt new file mode 100644 index 000000000000..f4dc5233167e --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/gpio-vt8500.txt | |||
@@ -0,0 +1,24 @@ | |||
1 | VIA/Wondermedia VT8500 GPIO Controller | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "via,vt8500-gpio", "wm,wm8505-gpio" | ||
6 | or "wm,wm8650-gpio" depending on your SoC | ||
7 | - reg : Should contain 1 register range (address and length) | ||
8 | - #gpio-cells : should be <3>. | ||
9 | 1) bank | ||
10 | 2) pin number | ||
11 | 3) flags - should be 0 | ||
12 | |||
13 | Example: | ||
14 | |||
15 | gpio: gpio-controller@d8110000 { | ||
16 | compatible = "via,vt8500-gpio"; | ||
17 | gpio-controller; | ||
18 | reg = <0xd8110000 0x10000>; | ||
19 | #gpio-cells = <3>; | ||
20 | }; | ||
21 | |||
22 | vibrate { | ||
23 | gpios = <&gpio 0 1 0>; /* Bank 0, Pin 1, No flags */ | ||
24 | }; | ||
diff --git a/Documentation/devicetree/bindings/rtc/via,vt8500-rtc.txt b/Documentation/devicetree/bindings/rtc/via,vt8500-rtc.txt new file mode 100644 index 000000000000..3c0484c49582 --- /dev/null +++ b/Documentation/devicetree/bindings/rtc/via,vt8500-rtc.txt | |||
@@ -0,0 +1,15 @@ | |||
1 | VIA/Wondermedia VT8500 Realtime Clock Controller | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "via,vt8500-rtc" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | - interrupts : alarm interrupt | ||
8 | |||
9 | Example: | ||
10 | |||
11 | rtc@d8100000 { | ||
12 | compatible = "via,vt8500-rtc"; | ||
13 | reg = <0xd8100000 0x10000>; | ||
14 | interrupts = <48>; | ||
15 | }; | ||
diff --git a/Documentation/devicetree/bindings/tty/serial/via,vt8500-uart.txt b/Documentation/devicetree/bindings/tty/serial/via,vt8500-uart.txt new file mode 100644 index 000000000000..5feef1ef167d --- /dev/null +++ b/Documentation/devicetree/bindings/tty/serial/via,vt8500-uart.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | VIA/Wondermedia VT8500 UART Controller | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "via,vt8500-uart" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | - interrupts : UART interrupt | ||
8 | - clocks : phandle to the uart source clock (usually a 24Mhz fixed clock) | ||
9 | |||
10 | Example: | ||
11 | |||
12 | uart@d8210000 { | ||
13 | compatible = "via,vt8500-uart"; | ||
14 | reg = <0xd8210000 0x1040>; | ||
15 | interrupts = <47>; | ||
16 | clocks = <&ref24>; | ||
17 | }; | ||
diff --git a/Documentation/devicetree/bindings/usb/platform-uhci.txt b/Documentation/devicetree/bindings/usb/platform-uhci.txt new file mode 100644 index 000000000000..a4fb0719d157 --- /dev/null +++ b/Documentation/devicetree/bindings/usb/platform-uhci.txt | |||
@@ -0,0 +1,15 @@ | |||
1 | Generic Platform UHCI Controller | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "platform-uhci" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | - interrupts : UHCI controller interrupt | ||
8 | |||
9 | Example: | ||
10 | |||
11 | uhci@d8007b00 { | ||
12 | compatible = "platform-uhci"; | ||
13 | reg = <0xd8007b00 0x200>; | ||
14 | interrupts = <43>; | ||
15 | }; | ||
diff --git a/Documentation/devicetree/bindings/usb/via,vt8500-ehci.txt b/Documentation/devicetree/bindings/usb/via,vt8500-ehci.txt new file mode 100644 index 000000000000..17b3ad1d97e7 --- /dev/null +++ b/Documentation/devicetree/bindings/usb/via,vt8500-ehci.txt | |||
@@ -0,0 +1,15 @@ | |||
1 | VIA/Wondermedia VT8500 EHCI Controller | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "via,vt8500-ehci" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | - interrupts : ehci controller interrupt | ||
8 | |||
9 | Example: | ||
10 | |||
11 | ehci@d8007900 { | ||
12 | compatible = "via,vt8500-ehci"; | ||
13 | reg = <0xd8007900 0x200>; | ||
14 | interrupts = <43>; | ||
15 | }; | ||
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt index db4d3af3643c..5c63da29aa05 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.txt +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt | |||
@@ -47,5 +47,7 @@ sirf SiRF Technology, Inc. | |||
47 | st STMicroelectronics | 47 | st STMicroelectronics |
48 | stericsson ST-Ericsson | 48 | stericsson ST-Ericsson |
49 | ti Texas Instruments | 49 | ti Texas Instruments |
50 | via VIA Technologies, Inc. | ||
50 | wlf Wolfson Microelectronics | 51 | wlf Wolfson Microelectronics |
52 | wm Wondermedia Technologies, Inc. | ||
51 | xlnx Xilinx | 53 | xlnx Xilinx |
diff --git a/Documentation/devicetree/bindings/video/via,vt8500-fb.txt b/Documentation/devicetree/bindings/video/via,vt8500-fb.txt new file mode 100644 index 000000000000..c870b6478ec8 --- /dev/null +++ b/Documentation/devicetree/bindings/video/via,vt8500-fb.txt | |||
@@ -0,0 +1,62 @@ | |||
1 | VIA VT8500 Framebuffer | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "via,vt8500-fb" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | - interrupts : framebuffer controller interrupt | ||
8 | - display: a phandle pointing to the display node | ||
9 | |||
10 | Required nodes: | ||
11 | - display: a display node is required to initialize the lcd panel | ||
12 | This should be in the board dts. | ||
13 | - default-mode: a videomode within the display with timing parameters | ||
14 | as specified below. | ||
15 | |||
16 | Example: | ||
17 | |||
18 | fb@d800e400 { | ||
19 | compatible = "via,vt8500-fb"; | ||
20 | reg = <0xd800e400 0x400>; | ||
21 | interrupts = <12>; | ||
22 | display = <&display>; | ||
23 | default-mode = <&mode0>; | ||
24 | }; | ||
25 | |||
26 | VIA VT8500 Display | ||
27 | ----------------------------------------------------- | ||
28 | Required properties (as per of_videomode_helper): | ||
29 | |||
30 | - hactive, vactive: Display resolution | ||
31 | - hfront-porch, hback-porch, hsync-len: Horizontal Display timing parameters | ||
32 | in pixels | ||
33 | vfront-porch, vback-porch, vsync-len: Vertical display timing parameters in | ||
34 | lines | ||
35 | - clock: displayclock in Hz | ||
36 | - bpp: lcd panel bit-depth. | ||
37 | <16> for RGB565, <32> for RGB888 | ||
38 | |||
39 | Optional properties (as per of_videomode_helper): | ||
40 | - width-mm, height-mm: Display dimensions in mm | ||
41 | - hsync-active-high (bool): Hsync pulse is active high | ||
42 | - vsync-active-high (bool): Vsync pulse is active high | ||
43 | - interlaced (bool): This is an interlaced mode | ||
44 | - doublescan (bool): This is a doublescan mode | ||
45 | |||
46 | Example: | ||
47 | display: display@0 { | ||
48 | modes { | ||
49 | mode0: mode@0 { | ||
50 | hactive = <800>; | ||
51 | vactive = <480>; | ||
52 | hback-porch = <88>; | ||
53 | hfront-porch = <40>; | ||
54 | hsync-len = <0>; | ||
55 | vback-porch = <32>; | ||
56 | vfront-porch = <11>; | ||
57 | vsync-len = <1>; | ||
58 | clock = <0>; /* unused but required */ | ||
59 | bpp = <16>; /* non-standard but required */ | ||
60 | }; | ||
61 | }; | ||
62 | }; | ||
diff --git a/Documentation/devicetree/bindings/video/wm,prizm-ge-rops.txt b/Documentation/devicetree/bindings/video/wm,prizm-ge-rops.txt new file mode 100644 index 000000000000..a850fa011f02 --- /dev/null +++ b/Documentation/devicetree/bindings/video/wm,prizm-ge-rops.txt | |||
@@ -0,0 +1,13 @@ | |||
1 | VIA/Wondermedia Graphics Engine Controller | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "wm,prizm-ge-rops" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | |||
8 | Example: | ||
9 | |||
10 | ge_rops@d8050400 { | ||
11 | compatible = "wm,prizm-ge-rops"; | ||
12 | reg = <0xd8050400 0x100>; | ||
13 | }; | ||
diff --git a/Documentation/devicetree/bindings/video/wm,wm8505-fb.txt b/Documentation/devicetree/bindings/video/wm,wm8505-fb.txt new file mode 100644 index 000000000000..3d325e1d11ee --- /dev/null +++ b/Documentation/devicetree/bindings/video/wm,wm8505-fb.txt | |||
@@ -0,0 +1,23 @@ | |||
1 | Wondermedia WM8505 Framebuffer | ||
2 | ----------------------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "wm,wm8505-fb" | ||
6 | - reg : Should contain 1 register ranges(address and length) | ||
7 | - via,display: a phandle pointing to the display node | ||
8 | |||
9 | Required nodes: | ||
10 | - display: a display node is required to initialize the lcd panel | ||
11 | This should be in the board dts. See definition in | ||
12 | Documentation/devicetree/bindings/video/via,vt8500-fb.txt | ||
13 | - default-mode: a videomode node as specified in | ||
14 | Documentation/devicetree/bindings/video/via,vt8500-fb.txt | ||
15 | |||
16 | Example: | ||
17 | |||
18 | fb@d8050800 { | ||
19 | compatible = "wm,wm8505-fb"; | ||
20 | reg = <0xd8050800 0x200>; | ||
21 | display = <&display>; | ||
22 | default-mode = <&mode0>; | ||
23 | }; | ||