| .. | .. |
|---|
| 5 | 5 | with discrete syncs or 8-bit ITU-R BT.656 with embedded syncs output formats. |
|---|
| 6 | 6 | |
|---|
| 7 | 7 | Required Properties: |
|---|
| 8 | | -- compatible: value must be "ti,tvp5150" |
|---|
| 9 | | -- reg: I2C slave address |
|---|
| 8 | +==================== |
|---|
| 9 | +- compatible: Value must be "ti,tvp5150". |
|---|
| 10 | +- reg: I2C slave address. |
|---|
| 10 | 11 | |
|---|
| 11 | 12 | Optional Properties: |
|---|
| 12 | | -- pdn-gpios: phandle for the GPIO connected to the PDN pin, if any. |
|---|
| 13 | | -- reset-gpios: phandle for the GPIO connected to the RESETB pin, if any. |
|---|
| 13 | +==================== |
|---|
| 14 | +- pdn-gpios: Phandle for the GPIO connected to the PDN pin, if any. |
|---|
| 15 | +- reset-gpios: Phandle for the GPIO connected to the RESETB pin, if any. |
|---|
| 14 | 16 | |
|---|
| 15 | | -The device node must contain one 'port' child node for its digital output |
|---|
| 16 | | -video port, in accordance with the video interface bindings defined in |
|---|
| 17 | | -Documentation/devicetree/bindings/media/video-interfaces.txt. |
|---|
| 17 | +The device node must contain one 'port' child node per device physical input |
|---|
| 18 | +and output port, in accordance with the video interface bindings defined in |
|---|
| 19 | +Documentation/devicetree/bindings/media/video-interfaces.txt. The port nodes |
|---|
| 20 | +are numbered as follows |
|---|
| 18 | 21 | |
|---|
| 19 | | -Required Endpoint Properties for parallel synchronization: |
|---|
| 22 | + Name Type Port |
|---|
| 23 | + -------------------------------------- |
|---|
| 24 | + AIP1A sink 0 |
|---|
| 25 | + AIP1B sink 1 |
|---|
| 26 | + Y-OUT src 2 |
|---|
| 20 | 27 | |
|---|
| 21 | | -- hsync-active: active state of the HSYNC signal. Must be <1> (HIGH). |
|---|
| 22 | | -- vsync-active: active state of the VSYNC signal. Must be <1> (HIGH). |
|---|
| 23 | | -- field-even-active: field signal level during the even field data |
|---|
| 24 | | - transmission. Must be <0>. |
|---|
| 28 | +The device node must contain at least one sink port and the src port. Each input |
|---|
| 29 | +port must be linked to an endpoint defined in [1]. The port/connector layout is |
|---|
| 30 | +as follows |
|---|
| 25 | 31 | |
|---|
| 26 | | -If none of hsync-active, vsync-active and field-even-active is specified, |
|---|
| 27 | | -the endpoint is assumed to use embedded BT.656 synchronization. |
|---|
| 32 | +tvp-5150 port@0 (AIP1A) |
|---|
| 33 | + endpoint@0 -----------> Comp0-Con port |
|---|
| 34 | + endpoint@1 ------+----> Svideo-Con port |
|---|
| 35 | +tvp-5150 port@1 (AIP1B) | |
|---|
| 36 | + endpoint@1 ------+ |
|---|
| 37 | + endpoint@0 -----------> Comp1-Con port |
|---|
| 38 | +tvp-5150 port@2 |
|---|
| 39 | + endpoint (video bitstream output at YOUT[0-7] parallel bus) |
|---|
| 28 | 40 | |
|---|
| 29 | | -Example: |
|---|
| 41 | +Required Endpoint Properties for parallel synchronization on output port: |
|---|
| 42 | +========================================================================= |
|---|
| 43 | + |
|---|
| 44 | +- hsync-active: Active state of the HSYNC signal. Must be <1> (HIGH). |
|---|
| 45 | +- vsync-active: Active state of the VSYNC signal. Must be <1> (HIGH). |
|---|
| 46 | +- field-even-active: Field signal level during the even field data |
|---|
| 47 | + transmission. Must be <0>. |
|---|
| 48 | + |
|---|
| 49 | +Note: Do not specify any of these properties if you want to use the embedded |
|---|
| 50 | + BT.656 synchronization. |
|---|
| 51 | + |
|---|
| 52 | +Optional Connector Properties: |
|---|
| 53 | +============================== |
|---|
| 54 | + |
|---|
| 55 | +- sdtv-standards: Set the possible signals to which the hardware tries to lock |
|---|
| 56 | + instead of using the autodetection mechnism. Please look at |
|---|
| 57 | + [1] for more information. |
|---|
| 58 | + |
|---|
| 59 | +[1] Documentation/devicetree/bindings/display/connector/analog-tv-connector.yaml. |
|---|
| 60 | + |
|---|
| 61 | +Example - three input sources: |
|---|
| 62 | +#include <dt-bindings/display/sdtv-standards.h> |
|---|
| 63 | + |
|---|
| 64 | +comp_connector_0 { |
|---|
| 65 | + compatible = "composite-video-connector"; |
|---|
| 66 | + label = "Composite0"; |
|---|
| 67 | + sdtv-standards = <SDTV_STD_PAL_M>; /* limit to pal-m signals */ |
|---|
| 68 | + |
|---|
| 69 | + port { |
|---|
| 70 | + composite0_to_tvp5150: endpoint { |
|---|
| 71 | + remote-endpoint = <&tvp5150_to_composite0>; |
|---|
| 72 | + }; |
|---|
| 73 | + }; |
|---|
| 74 | +}; |
|---|
| 75 | + |
|---|
| 76 | +comp_connector_1 { |
|---|
| 77 | + compatible = "composite-video-connector"; |
|---|
| 78 | + label = "Composite1"; |
|---|
| 79 | + sdtv-standards = <SDTV_STD_NTSC_M>; /* limit to ntsc-m signals */ |
|---|
| 80 | + |
|---|
| 81 | + port { |
|---|
| 82 | + composite1_to_tvp5150: endpoint { |
|---|
| 83 | + remote-endpoint = <&tvp5150_to_composite1>; |
|---|
| 84 | + }; |
|---|
| 85 | + }; |
|---|
| 86 | +}; |
|---|
| 87 | + |
|---|
| 88 | +svideo_connector { |
|---|
| 89 | + compatible = "svideo-connector"; |
|---|
| 90 | + label = "S-Video"; |
|---|
| 91 | + |
|---|
| 92 | + port { |
|---|
| 93 | + #address-cells = <1>; |
|---|
| 94 | + #size-cells = <0>; |
|---|
| 95 | + |
|---|
| 96 | + svideo_luma_to_tvp5150: endpoint@0 { |
|---|
| 97 | + reg = <0>; |
|---|
| 98 | + remote-endpoint = <&tvp5150_to_svideo_luma>; |
|---|
| 99 | + }; |
|---|
| 100 | + |
|---|
| 101 | + svideo_chroma_to_tvp5150: endpoint@1 { |
|---|
| 102 | + reg = <1>; |
|---|
| 103 | + remote-endpoint = <&tvp5150_to_svideo_chroma>; |
|---|
| 104 | + }; |
|---|
| 105 | + }; |
|---|
| 106 | +}; |
|---|
| 30 | 107 | |
|---|
| 31 | 108 | &i2c2 { |
|---|
| 32 | | - ... |
|---|
| 33 | 109 | tvp5150@5c { |
|---|
| 34 | 110 | compatible = "ti,tvp5150"; |
|---|
| 35 | 111 | reg = <0x5c>; |
|---|
| 36 | 112 | pdn-gpios = <&gpio4 30 GPIO_ACTIVE_LOW>; |
|---|
| 37 | 113 | reset-gpios = <&gpio6 7 GPIO_ACTIVE_LOW>; |
|---|
| 114 | + #address-cells = <1>; |
|---|
| 115 | + #size-cells = <0>; |
|---|
| 38 | 116 | |
|---|
| 39 | | - port { |
|---|
| 117 | + port@0 { |
|---|
| 118 | + #address-cells = <1>; |
|---|
| 119 | + #size-cells = <0>; |
|---|
| 120 | + reg = <0>; |
|---|
| 121 | + |
|---|
| 122 | + tvp5150_to_composite0: endpoint@0 { |
|---|
| 123 | + reg = <0>; |
|---|
| 124 | + remote-endpoint = <&composite0_to_tvp5150>; |
|---|
| 125 | + }; |
|---|
| 126 | + |
|---|
| 127 | + tvp5150_to_svideo_luma: endpoint@1 { |
|---|
| 128 | + reg = <1>; |
|---|
| 129 | + remote-endpoint = <&svideo_luma_to_tvp5150>; |
|---|
| 130 | + }; |
|---|
| 131 | + }; |
|---|
| 132 | + |
|---|
| 133 | + port@1 { |
|---|
| 134 | + #address-cells = <1>; |
|---|
| 135 | + #size-cells = <0>; |
|---|
| 136 | + reg = <1>; |
|---|
| 137 | + |
|---|
| 138 | + tvp5150_to_composite1: endpoint@0 { |
|---|
| 139 | + reg = <0>; |
|---|
| 140 | + remote-endpoint = <&composite1_to_tvp5150>; |
|---|
| 141 | + }; |
|---|
| 142 | + |
|---|
| 143 | + tvp5150_to_svideo_chroma: endpoint@1 { |
|---|
| 144 | + reg = <1>; |
|---|
| 145 | + remote-endpoint = <&svideo_chroma_to_tvp5150>; |
|---|
| 146 | + }; |
|---|
| 147 | + }; |
|---|
| 148 | + |
|---|
| 149 | + port@2 { |
|---|
| 150 | + reg = <2>; |
|---|
| 151 | + |
|---|
| 40 | 152 | tvp5150_1: endpoint { |
|---|
| 41 | 153 | remote-endpoint = <&ccdc_ep>; |
|---|
| 42 | 154 | }; |
|---|