Commit | Line | Data |
---|---|---|
47c71bd6 BD |
1 | Renesas RCar Video Input driver (rcar_vin) |
2 | ------------------------------------------ | |
3 | ||
4 | The rcar_vin device provides video input capabilities for the Renesas R-Car | |
5 | family of devices. The current blocks are always slaves and suppot one input | |
6 | channel which can be either RGB, YUYV or BT656. | |
7 | ||
bd546882 | 8 | - compatible: Must be one or more of the following |
1dff3338 | 9 | - "renesas,vin-r8a7795" for the R8A7795 device |
76deaff8 YK |
10 | - "renesas,vin-r8a7794" for the R8A7794 device |
11 | - "renesas,vin-r8a7793" for the R8A7793 device | |
1d260123 | 12 | - "renesas,vin-r8a7792" for the R8A7792 device |
47c71bd6 BD |
13 | - "renesas,vin-r8a7791" for the R8A7791 device |
14 | - "renesas,vin-r8a7790" for the R8A7790 device | |
15 | - "renesas,vin-r8a7779" for the R8A7779 device | |
16 | - "renesas,vin-r8a7778" for the R8A7778 device | |
bd546882 YK |
17 | - "renesas,rcar-gen2-vin" for a generic R-Car Gen2 compatible device. |
18 | - "renesas,rcar-gen3-vin" for a generic R-Car Gen3 compatible device. | |
19 | ||
20 | When compatible with the generic version nodes must list the | |
21 | SoC-specific version corresponding to the platform first | |
22 | followed by the generic version. | |
23 | ||
47c71bd6 BD |
24 | - reg: the register base and size for the device registers |
25 | - interrupts: the interrupt for the device | |
26 | - clocks: Reference to the parent clock | |
27 | ||
28 | Additionally, an alias named vinX will need to be created to specify | |
29 | which video input device this is. | |
30 | ||
31 | The per-board settings: | |
32 | - port sub-node describing a single endpoint connected to the vin | |
33 | as described in video-interfaces.txt[1]. Only the first one will | |
34 | be considered as each vin interface has one input port. | |
35 | ||
36 | These settings are used to work out video input format and widths | |
37 | into the system. | |
38 | ||
39 | ||
40 | Device node example | |
41 | ------------------- | |
42 | ||
43 | aliases { | |
44 | vin0 = &vin0; | |
45 | }; | |
46 | ||
47 | vin0: vin@0xe6ef0000 { | |
bd546882 | 48 | compatible = "renesas,vin-r8a7790", "renesas,rcar-gen2-vin"; |
47c71bd6 BD |
49 | clocks = <&mstp8_clks R8A7790_CLK_VIN0>; |
50 | reg = <0 0xe6ef0000 0 0x1000>; | |
51 | interrupts = <0 188 IRQ_TYPE_LEVEL_HIGH>; | |
52 | status = "disabled"; | |
53 | }; | |
54 | ||
55 | Board setup example (vin1 composite video input) | |
56 | ------------------------------------------------ | |
57 | ||
58 | &i2c2 { | |
59 | status = "ok"; | |
60 | pinctrl-0 = <&i2c2_pins>; | |
61 | pinctrl-names = "default"; | |
62 | ||
63 | adv7180@20 { | |
64 | compatible = "adi,adv7180"; | |
65 | reg = <0x20>; | |
66 | remote = <&vin1>; | |
67 | ||
68 | port { | |
69 | adv7180: endpoint { | |
70 | bus-width = <8>; | |
71 | remote-endpoint = <&vin1ep0>; | |
72 | }; | |
73 | }; | |
74 | }; | |
75 | }; | |
76 | ||
77 | /* composite video input */ | |
78 | &vin1 { | |
79 | pinctrl-0 = <&vin1_pins>; | |
80 | pinctrl-names = "default"; | |
81 | ||
82 | status = "ok"; | |
83 | ||
84 | port { | |
85 | #address-cells = <1>; | |
86 | #size-cells = <0>; | |
87 | ||
88 | vin1ep0: endpoint { | |
89 | remote-endpoint = <&adv7180>; | |
90 | bus-width = <8>; | |
91 | }; | |
92 | }; | |
93 | }; | |
94 | ||
95 | ||
96 | ||
97 | [1] video-interfaces.txt common video media interface |