summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/serial/samsung_uart.txt
blob: e85f37ec33f0277b27ab7aa4f39c4b34c4cbfcd2 (plain)
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
47
48
49
50
51
52
53
54
55
56
57
58
* Samsung's UART Controller

The Samsung's UART controller is used for interfacing SoC with serial
communicaion devices.

Required properties:
- compatible: should be one of following:
  - "samsung,exynos4210-uart" -  Exynos4210 SoC,
  - "samsung,s3c2410-uart" - compatible with ports present on S3C2410 SoC,
  - "samsung,s3c2412-uart" - compatible with ports present on S3C2412 SoC,
  - "samsung,s3c2440-uart" - compatible with ports present on S3C2440 SoC,
  - "samsung,s3c6400-uart" - compatible with ports present on S3C6400 SoC,
  - "samsung,s5pv210-uart" - compatible with ports present on S5PV210 SoC.

- reg: base physical address of the controller and length of memory mapped
  region.

- interrupts: a single interrupt signal to SoC interrupt controller,
  according to interrupt bindings documentation [1].

- clock-names: input names of clocks used by the controller:
  - "uart" - controller bus clock,
  - "clk_uart_baudN" - Nth baud base clock input (N = 0, 1, ...),
    according to SoC User's Manual (only N = 0 is allowedfor SoCs without
    internal baud clock mux).
- clocks: phandles and specifiers for all clocks specified in "clock-names"
  property, in the same order, according to clock bindings documentation [2].

[1] Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
[2] Documentation/devicetree/bindings/clock/clock-bindings.txt

Optional properties:
- samsung,uart-fifosize: The fifo size supported by the UART channel

Note: Each Samsung UART should have an alias correctly numbered in the
"aliases" node, according to serialN format, where N is the port number
(non-negative decimal integer) as specified by User's Manual of respective
SoC.

Example:
	aliases {
		serial0 = &uart0;
		serial1 = &uart1;
		serial2 = &uart2;
	};

Example:
	uart1: serial@7f005400 {
		compatible = "samsung,s3c6400-uart";
		reg = <0x7f005400 0x100>;
		interrupt-parent = <&vic1>;
		interrupts = <6>;
		clock-names = "uart", "clk_uart_baud2",
				"clk_uart_baud3";
		clocks = <&clocks PCLK_UART1>, <&clocks PCLK_UART1>,
				<&clocks SCLK_UART>;
		samsung,uart-fifosize = <16>;
	};