1aa1a8ff2SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2aa1a8ff2SEmmanuel Vadot%YAML 1.2 3aa1a8ff2SEmmanuel Vadot--- 4aa1a8ff2SEmmanuel Vadot$id: http://devicetree.org/schemas/media/i2c/ti,ds90ub960.yaml# 5aa1a8ff2SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6aa1a8ff2SEmmanuel Vadot 7aa1a8ff2SEmmanuel Vadottitle: Texas Instruments DS90UB9XX Family FPD-Link Deserializer Hubs 8aa1a8ff2SEmmanuel Vadot 9aa1a8ff2SEmmanuel Vadotmaintainers: 10aa1a8ff2SEmmanuel Vadot - Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> 11aa1a8ff2SEmmanuel Vadot 12aa1a8ff2SEmmanuel Vadotdescription: 13aa1a8ff2SEmmanuel Vadot The TI DS90UB9XX devices are FPD-Link video deserializers with I2C and GPIO 14aa1a8ff2SEmmanuel Vadot forwarding. 15aa1a8ff2SEmmanuel Vadot 16aa1a8ff2SEmmanuel VadotallOf: 17aa1a8ff2SEmmanuel Vadot - $ref: /schemas/i2c/i2c-atr.yaml# 18aa1a8ff2SEmmanuel Vadot 19aa1a8ff2SEmmanuel Vadotproperties: 20aa1a8ff2SEmmanuel Vadot compatible: 21aa1a8ff2SEmmanuel Vadot enum: 22aa1a8ff2SEmmanuel Vadot - ti,ds90ub960-q1 23aa1a8ff2SEmmanuel Vadot - ti,ds90ub9702-q1 24aa1a8ff2SEmmanuel Vadot 25aa1a8ff2SEmmanuel Vadot reg: 26aa1a8ff2SEmmanuel Vadot maxItems: 1 27aa1a8ff2SEmmanuel Vadot 28aa1a8ff2SEmmanuel Vadot clocks: 29aa1a8ff2SEmmanuel Vadot maxItems: 1 30aa1a8ff2SEmmanuel Vadot description: 31aa1a8ff2SEmmanuel Vadot Reference clock connected to the REFCLK pin. 32aa1a8ff2SEmmanuel Vadot 33aa1a8ff2SEmmanuel Vadot clock-names: 34aa1a8ff2SEmmanuel Vadot items: 35aa1a8ff2SEmmanuel Vadot - const: refclk 36aa1a8ff2SEmmanuel Vadot 37aa1a8ff2SEmmanuel Vadot powerdown-gpios: 38aa1a8ff2SEmmanuel Vadot maxItems: 1 39aa1a8ff2SEmmanuel Vadot description: 40aa1a8ff2SEmmanuel Vadot Specifier for the GPIO connected to the PDB pin. 41aa1a8ff2SEmmanuel Vadot 42aa1a8ff2SEmmanuel Vadot i2c-alias-pool: 43aa1a8ff2SEmmanuel Vadot minItems: 1 44aa1a8ff2SEmmanuel Vadot maxItems: 32 45aa1a8ff2SEmmanuel Vadot 46aa1a8ff2SEmmanuel Vadot links: 47aa1a8ff2SEmmanuel Vadot type: object 48aa1a8ff2SEmmanuel Vadot additionalProperties: false 49aa1a8ff2SEmmanuel Vadot 50aa1a8ff2SEmmanuel Vadot properties: 51aa1a8ff2SEmmanuel Vadot '#address-cells': 52aa1a8ff2SEmmanuel Vadot const: 1 53aa1a8ff2SEmmanuel Vadot 54aa1a8ff2SEmmanuel Vadot '#size-cells': 55aa1a8ff2SEmmanuel Vadot const: 0 56aa1a8ff2SEmmanuel Vadot 57aa1a8ff2SEmmanuel Vadot ti,manual-strobe: 58aa1a8ff2SEmmanuel Vadot type: boolean 59aa1a8ff2SEmmanuel Vadot description: 60aa1a8ff2SEmmanuel Vadot Enable manual strobe position and EQ level 61aa1a8ff2SEmmanuel Vadot 62aa1a8ff2SEmmanuel Vadot patternProperties: 63aa1a8ff2SEmmanuel Vadot '^link@[0-3]$': 64aa1a8ff2SEmmanuel Vadot type: object 65aa1a8ff2SEmmanuel Vadot additionalProperties: false 66aa1a8ff2SEmmanuel Vadot properties: 67aa1a8ff2SEmmanuel Vadot reg: 68aa1a8ff2SEmmanuel Vadot description: The link number 69aa1a8ff2SEmmanuel Vadot maxItems: 1 70aa1a8ff2SEmmanuel Vadot 71*ae5de77eSEmmanuel Vadot '#address-cells': 72*ae5de77eSEmmanuel Vadot const: 1 73*ae5de77eSEmmanuel Vadot 74*ae5de77eSEmmanuel Vadot '#size-cells': 75*ae5de77eSEmmanuel Vadot const: 0 76*ae5de77eSEmmanuel Vadot 77aa1a8ff2SEmmanuel Vadot i2c-alias: 7884943d6fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 79aa1a8ff2SEmmanuel Vadot description: 80aa1a8ff2SEmmanuel Vadot The I2C address used for the serializer. Transactions to this 81aa1a8ff2SEmmanuel Vadot address on the I2C bus where the deserializer resides are 82aa1a8ff2SEmmanuel Vadot forwarded to the serializer. 83aa1a8ff2SEmmanuel Vadot 84aa1a8ff2SEmmanuel Vadot ti,rx-mode: 85aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 86aa1a8ff2SEmmanuel Vadot enum: 87aa1a8ff2SEmmanuel Vadot - 0 # RAW10 88aa1a8ff2SEmmanuel Vadot - 1 # RAW12 HF 89aa1a8ff2SEmmanuel Vadot - 2 # RAW12 LF 90aa1a8ff2SEmmanuel Vadot - 3 # CSI2 SYNC 91aa1a8ff2SEmmanuel Vadot - 4 # CSI2 NON-SYNC 92aa1a8ff2SEmmanuel Vadot description: 93aa1a8ff2SEmmanuel Vadot FPD-Link Input Mode. This should reflect the hardware and the 94aa1a8ff2SEmmanuel Vadot default mode of the connected device. 95aa1a8ff2SEmmanuel Vadot 96aa1a8ff2SEmmanuel Vadot ti,cdr-mode: 97aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 98aa1a8ff2SEmmanuel Vadot enum: 99aa1a8ff2SEmmanuel Vadot - 0 # FPD-Link III 100aa1a8ff2SEmmanuel Vadot - 1 # FPD-Link IV 101aa1a8ff2SEmmanuel Vadot description: 102aa1a8ff2SEmmanuel Vadot FPD-Link CDR Mode. This should reflect the hardware and the 103aa1a8ff2SEmmanuel Vadot default mode of the connected device. 104aa1a8ff2SEmmanuel Vadot 105aa1a8ff2SEmmanuel Vadot ti,strobe-pos: 106aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/int32 107aa1a8ff2SEmmanuel Vadot minimum: -13 108aa1a8ff2SEmmanuel Vadot maximum: 13 109aa1a8ff2SEmmanuel Vadot description: Manual strobe position 110aa1a8ff2SEmmanuel Vadot 111aa1a8ff2SEmmanuel Vadot ti,eq-level: 112aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 113aa1a8ff2SEmmanuel Vadot maximum: 14 114aa1a8ff2SEmmanuel Vadot description: Manual EQ level 115aa1a8ff2SEmmanuel Vadot 116*ae5de77eSEmmanuel Vadot patternProperties: 117*ae5de77eSEmmanuel Vadot '^serializer(@[0-9a-f]+)*$': 118aa1a8ff2SEmmanuel Vadot type: object 119aa1a8ff2SEmmanuel Vadot description: FPD-Link Serializer node 120aa1a8ff2SEmmanuel Vadot 121aa1a8ff2SEmmanuel Vadot required: 122aa1a8ff2SEmmanuel Vadot - reg 123aa1a8ff2SEmmanuel Vadot - i2c-alias 124aa1a8ff2SEmmanuel Vadot - ti,rx-mode 125aa1a8ff2SEmmanuel Vadot 126aa1a8ff2SEmmanuel Vadot ports: 127aa1a8ff2SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/ports 128aa1a8ff2SEmmanuel Vadot 129aa1a8ff2SEmmanuel Vadot properties: 130aa1a8ff2SEmmanuel Vadot port@0: 131aa1a8ff2SEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/port-base 132aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 133aa1a8ff2SEmmanuel Vadot description: FPD-Link input 0 134aa1a8ff2SEmmanuel Vadot 135aa1a8ff2SEmmanuel Vadot properties: 136aa1a8ff2SEmmanuel Vadot endpoint: 137aa1a8ff2SEmmanuel Vadot $ref: /schemas/media/video-interfaces.yaml# 138aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 139aa1a8ff2SEmmanuel Vadot description: 140aa1a8ff2SEmmanuel Vadot Endpoint for FPD-Link port. If the RX mode for this port is RAW, 141aa1a8ff2SEmmanuel Vadot hsync-active and vsync-active must be defined. 142aa1a8ff2SEmmanuel Vadot 143aa1a8ff2SEmmanuel Vadot port@1: 144aa1a8ff2SEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/port-base 145aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 146aa1a8ff2SEmmanuel Vadot description: FPD-Link input 1 147aa1a8ff2SEmmanuel Vadot 148aa1a8ff2SEmmanuel Vadot properties: 149aa1a8ff2SEmmanuel Vadot endpoint: 150aa1a8ff2SEmmanuel Vadot $ref: /schemas/media/video-interfaces.yaml# 151aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 152aa1a8ff2SEmmanuel Vadot description: 153aa1a8ff2SEmmanuel Vadot Endpoint for FPD-Link port. If the RX mode for this port is RAW, 154aa1a8ff2SEmmanuel Vadot hsync-active and vsync-active must be defined. 155aa1a8ff2SEmmanuel Vadot 156aa1a8ff2SEmmanuel Vadot port@2: 157aa1a8ff2SEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/port-base 158aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 159aa1a8ff2SEmmanuel Vadot description: FPD-Link input 2 160aa1a8ff2SEmmanuel Vadot 161aa1a8ff2SEmmanuel Vadot properties: 162aa1a8ff2SEmmanuel Vadot endpoint: 163aa1a8ff2SEmmanuel Vadot $ref: /schemas/media/video-interfaces.yaml# 164aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 165aa1a8ff2SEmmanuel Vadot description: 166aa1a8ff2SEmmanuel Vadot Endpoint for FPD-Link port. If the RX mode for this port is RAW, 167aa1a8ff2SEmmanuel Vadot hsync-active and vsync-active must be defined. 168aa1a8ff2SEmmanuel Vadot 169aa1a8ff2SEmmanuel Vadot port@3: 170aa1a8ff2SEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/port-base 171aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 172aa1a8ff2SEmmanuel Vadot description: FPD-Link input 3 173aa1a8ff2SEmmanuel Vadot 174aa1a8ff2SEmmanuel Vadot properties: 175aa1a8ff2SEmmanuel Vadot endpoint: 176aa1a8ff2SEmmanuel Vadot $ref: /schemas/media/video-interfaces.yaml# 177aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 178aa1a8ff2SEmmanuel Vadot description: 179aa1a8ff2SEmmanuel Vadot Endpoint for FPD-Link port. If the RX mode for this port is RAW, 180aa1a8ff2SEmmanuel Vadot hsync-active and vsync-active must be defined. 181aa1a8ff2SEmmanuel Vadot 182aa1a8ff2SEmmanuel Vadot port@4: 183aa1a8ff2SEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/port-base 184aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 185aa1a8ff2SEmmanuel Vadot description: CSI-2 Output 0 186aa1a8ff2SEmmanuel Vadot 187aa1a8ff2SEmmanuel Vadot properties: 188aa1a8ff2SEmmanuel Vadot endpoint: 189aa1a8ff2SEmmanuel Vadot $ref: /schemas/media/video-interfaces.yaml# 190aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 191aa1a8ff2SEmmanuel Vadot 192aa1a8ff2SEmmanuel Vadot properties: 193aa1a8ff2SEmmanuel Vadot data-lanes: 194aa1a8ff2SEmmanuel Vadot minItems: 1 195aa1a8ff2SEmmanuel Vadot maxItems: 4 196aa1a8ff2SEmmanuel Vadot link-frequencies: 197aa1a8ff2SEmmanuel Vadot maxItems: 1 198aa1a8ff2SEmmanuel Vadot 199aa1a8ff2SEmmanuel Vadot required: 200aa1a8ff2SEmmanuel Vadot - data-lanes 201aa1a8ff2SEmmanuel Vadot - link-frequencies 202aa1a8ff2SEmmanuel Vadot 203aa1a8ff2SEmmanuel Vadot port@5: 204aa1a8ff2SEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/port-base 205aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 206aa1a8ff2SEmmanuel Vadot description: CSI-2 Output 1 207aa1a8ff2SEmmanuel Vadot 208aa1a8ff2SEmmanuel Vadot properties: 209aa1a8ff2SEmmanuel Vadot endpoint: 210aa1a8ff2SEmmanuel Vadot $ref: /schemas/media/video-interfaces.yaml# 211aa1a8ff2SEmmanuel Vadot unevaluatedProperties: false 212aa1a8ff2SEmmanuel Vadot 213aa1a8ff2SEmmanuel Vadot properties: 214aa1a8ff2SEmmanuel Vadot data-lanes: 215aa1a8ff2SEmmanuel Vadot minItems: 1 216aa1a8ff2SEmmanuel Vadot maxItems: 4 217aa1a8ff2SEmmanuel Vadot link-frequencies: 218aa1a8ff2SEmmanuel Vadot maxItems: 1 219aa1a8ff2SEmmanuel Vadot 220aa1a8ff2SEmmanuel Vadot required: 221aa1a8ff2SEmmanuel Vadot - data-lanes 222aa1a8ff2SEmmanuel Vadot - link-frequencies 223aa1a8ff2SEmmanuel Vadot 224aa1a8ff2SEmmanuel Vadot required: 225aa1a8ff2SEmmanuel Vadot - port@0 226aa1a8ff2SEmmanuel Vadot - port@1 227aa1a8ff2SEmmanuel Vadot - port@2 228aa1a8ff2SEmmanuel Vadot - port@3 229aa1a8ff2SEmmanuel Vadot - port@4 230aa1a8ff2SEmmanuel Vadot - port@5 231aa1a8ff2SEmmanuel Vadot 232aa1a8ff2SEmmanuel Vadotrequired: 233aa1a8ff2SEmmanuel Vadot - compatible 234aa1a8ff2SEmmanuel Vadot - reg 235aa1a8ff2SEmmanuel Vadot - clocks 236aa1a8ff2SEmmanuel Vadot - clock-names 237aa1a8ff2SEmmanuel Vadot - ports 238aa1a8ff2SEmmanuel Vadot 239aa1a8ff2SEmmanuel VadotunevaluatedProperties: false 240aa1a8ff2SEmmanuel Vadot 241aa1a8ff2SEmmanuel Vadotexamples: 242aa1a8ff2SEmmanuel Vadot - | 243aa1a8ff2SEmmanuel Vadot #include <dt-bindings/gpio/gpio.h> 244aa1a8ff2SEmmanuel Vadot 245aa1a8ff2SEmmanuel Vadot i2c { 246aa1a8ff2SEmmanuel Vadot clock-frequency = <400000>; 247aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 248aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 249aa1a8ff2SEmmanuel Vadot 250aa1a8ff2SEmmanuel Vadot deser@3d { 251aa1a8ff2SEmmanuel Vadot compatible = "ti,ds90ub960-q1"; 252aa1a8ff2SEmmanuel Vadot reg = <0x3d>; 253aa1a8ff2SEmmanuel Vadot 254aa1a8ff2SEmmanuel Vadot clock-names = "refclk"; 255aa1a8ff2SEmmanuel Vadot clocks = <&fixed_clock>; 256aa1a8ff2SEmmanuel Vadot 257aa1a8ff2SEmmanuel Vadot powerdown-gpios = <&pca9555 7 GPIO_ACTIVE_LOW>; 258aa1a8ff2SEmmanuel Vadot 259aa1a8ff2SEmmanuel Vadot i2c-alias-pool = <0x4a 0x4b 0x4c 0x4d 0x4e 0x4f>; 260aa1a8ff2SEmmanuel Vadot 261aa1a8ff2SEmmanuel Vadot ports { 262aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 263aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 264aa1a8ff2SEmmanuel Vadot 265aa1a8ff2SEmmanuel Vadot /* Port 0, Camera 0 */ 266aa1a8ff2SEmmanuel Vadot port@0 { 267aa1a8ff2SEmmanuel Vadot reg = <0>; 268aa1a8ff2SEmmanuel Vadot 269aa1a8ff2SEmmanuel Vadot ub960_fpd3_1_in: endpoint { 270aa1a8ff2SEmmanuel Vadot remote-endpoint = <&ub953_1_out>; 271aa1a8ff2SEmmanuel Vadot }; 272aa1a8ff2SEmmanuel Vadot }; 273aa1a8ff2SEmmanuel Vadot 274aa1a8ff2SEmmanuel Vadot /* Port 1, Camera 1 */ 275aa1a8ff2SEmmanuel Vadot port@1 { 276aa1a8ff2SEmmanuel Vadot reg = <1>; 277aa1a8ff2SEmmanuel Vadot 278aa1a8ff2SEmmanuel Vadot ub960_fpd3_2_in: endpoint { 279aa1a8ff2SEmmanuel Vadot remote-endpoint = <&ub913_2_out>; 280aa1a8ff2SEmmanuel Vadot hsync-active = <0>; 281aa1a8ff2SEmmanuel Vadot vsync-active = <1>; 282aa1a8ff2SEmmanuel Vadot }; 283aa1a8ff2SEmmanuel Vadot }; 284aa1a8ff2SEmmanuel Vadot 285aa1a8ff2SEmmanuel Vadot /* Port 2, unconnected */ 286aa1a8ff2SEmmanuel Vadot port@2 { 287aa1a8ff2SEmmanuel Vadot reg = <2>; 288aa1a8ff2SEmmanuel Vadot }; 289aa1a8ff2SEmmanuel Vadot 290aa1a8ff2SEmmanuel Vadot /* Port 3, unconnected */ 291aa1a8ff2SEmmanuel Vadot port@3 { 292aa1a8ff2SEmmanuel Vadot reg = <3>; 293aa1a8ff2SEmmanuel Vadot }; 294aa1a8ff2SEmmanuel Vadot 295aa1a8ff2SEmmanuel Vadot /* Port 4, CSI-2 TX */ 296aa1a8ff2SEmmanuel Vadot port@4 { 297aa1a8ff2SEmmanuel Vadot reg = <4>; 298aa1a8ff2SEmmanuel Vadot ds90ub960_0_csi_out: endpoint { 299aa1a8ff2SEmmanuel Vadot data-lanes = <1 2 3 4>; 300aa1a8ff2SEmmanuel Vadot link-frequencies = /bits/ 64 <800000000>; 301aa1a8ff2SEmmanuel Vadot remote-endpoint = <&csi2_phy0>; 302aa1a8ff2SEmmanuel Vadot }; 303aa1a8ff2SEmmanuel Vadot }; 304aa1a8ff2SEmmanuel Vadot 305aa1a8ff2SEmmanuel Vadot /* Port 5, unconnected */ 306aa1a8ff2SEmmanuel Vadot port@5 { 307aa1a8ff2SEmmanuel Vadot reg = <5>; 308aa1a8ff2SEmmanuel Vadot }; 309aa1a8ff2SEmmanuel Vadot }; 310aa1a8ff2SEmmanuel Vadot 311aa1a8ff2SEmmanuel Vadot links { 312aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 313aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 314aa1a8ff2SEmmanuel Vadot 315aa1a8ff2SEmmanuel Vadot /* Link 0 has DS90UB953 serializer and IMX274 sensor */ 316aa1a8ff2SEmmanuel Vadot 317aa1a8ff2SEmmanuel Vadot link@0 { 318*ae5de77eSEmmanuel Vadot #address-cells = <1>; 319*ae5de77eSEmmanuel Vadot #size-cells = <0>; 320*ae5de77eSEmmanuel Vadot 321aa1a8ff2SEmmanuel Vadot reg = <0>; 322aa1a8ff2SEmmanuel Vadot i2c-alias = <0x44>; 323aa1a8ff2SEmmanuel Vadot 324aa1a8ff2SEmmanuel Vadot ti,rx-mode = <3>; 325aa1a8ff2SEmmanuel Vadot 326*ae5de77eSEmmanuel Vadot serializer1: serializer@30 { 327aa1a8ff2SEmmanuel Vadot compatible = "ti,ds90ub953-q1"; 328*ae5de77eSEmmanuel Vadot reg = <0x30>; 329aa1a8ff2SEmmanuel Vadot 330aa1a8ff2SEmmanuel Vadot gpio-controller; 331aa1a8ff2SEmmanuel Vadot #gpio-cells = <2>; 332aa1a8ff2SEmmanuel Vadot 333aa1a8ff2SEmmanuel Vadot #clock-cells = <0>; 334aa1a8ff2SEmmanuel Vadot 335aa1a8ff2SEmmanuel Vadot ports { 336aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 337aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 338aa1a8ff2SEmmanuel Vadot 339aa1a8ff2SEmmanuel Vadot port@0 { 340aa1a8ff2SEmmanuel Vadot reg = <0>; 341aa1a8ff2SEmmanuel Vadot ub953_1_in: endpoint { 342aa1a8ff2SEmmanuel Vadot data-lanes = <1 2 3 4>; 343aa1a8ff2SEmmanuel Vadot remote-endpoint = <&sensor_1_out>; 344aa1a8ff2SEmmanuel Vadot }; 345aa1a8ff2SEmmanuel Vadot }; 346aa1a8ff2SEmmanuel Vadot 347aa1a8ff2SEmmanuel Vadot port@1 { 348aa1a8ff2SEmmanuel Vadot reg = <1>; 349aa1a8ff2SEmmanuel Vadot 350aa1a8ff2SEmmanuel Vadot ub953_1_out: endpoint { 351aa1a8ff2SEmmanuel Vadot remote-endpoint = <&ub960_fpd3_1_in>; 352aa1a8ff2SEmmanuel Vadot }; 353aa1a8ff2SEmmanuel Vadot }; 354aa1a8ff2SEmmanuel Vadot }; 355aa1a8ff2SEmmanuel Vadot 356aa1a8ff2SEmmanuel Vadot i2c { 357aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 358aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 359aa1a8ff2SEmmanuel Vadot 360aa1a8ff2SEmmanuel Vadot sensor@1a { 361aa1a8ff2SEmmanuel Vadot compatible = "sony,imx274"; 362aa1a8ff2SEmmanuel Vadot reg = <0x1a>; 363aa1a8ff2SEmmanuel Vadot 364aa1a8ff2SEmmanuel Vadot reset-gpios = <&serializer1 0 GPIO_ACTIVE_LOW>; 365aa1a8ff2SEmmanuel Vadot 366aa1a8ff2SEmmanuel Vadot port { 367aa1a8ff2SEmmanuel Vadot sensor_1_out: endpoint { 368aa1a8ff2SEmmanuel Vadot remote-endpoint = <&ub953_1_in>; 369aa1a8ff2SEmmanuel Vadot }; 370aa1a8ff2SEmmanuel Vadot }; 371aa1a8ff2SEmmanuel Vadot }; 372aa1a8ff2SEmmanuel Vadot }; 373aa1a8ff2SEmmanuel Vadot }; 374aa1a8ff2SEmmanuel Vadot }; /* End of link@0 */ 375aa1a8ff2SEmmanuel Vadot 376aa1a8ff2SEmmanuel Vadot /* Link 1 has DS90UB913 serializer and MT9V111 sensor */ 377aa1a8ff2SEmmanuel Vadot 378aa1a8ff2SEmmanuel Vadot link@1 { 379aa1a8ff2SEmmanuel Vadot reg = <1>; 380aa1a8ff2SEmmanuel Vadot i2c-alias = <0x45>; 381aa1a8ff2SEmmanuel Vadot 382aa1a8ff2SEmmanuel Vadot ti,rx-mode = <0>; 383aa1a8ff2SEmmanuel Vadot 384aa1a8ff2SEmmanuel Vadot serializer2: serializer { 385aa1a8ff2SEmmanuel Vadot compatible = "ti,ds90ub913a-q1"; 386aa1a8ff2SEmmanuel Vadot 387aa1a8ff2SEmmanuel Vadot gpio-controller; 388aa1a8ff2SEmmanuel Vadot #gpio-cells = <2>; 389aa1a8ff2SEmmanuel Vadot 390aa1a8ff2SEmmanuel Vadot clocks = <&clk_cam_48M>; 391aa1a8ff2SEmmanuel Vadot clock-names = "clkin"; 392aa1a8ff2SEmmanuel Vadot 393aa1a8ff2SEmmanuel Vadot #clock-cells = <0>; 394aa1a8ff2SEmmanuel Vadot 395aa1a8ff2SEmmanuel Vadot ports { 396aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 397aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 398aa1a8ff2SEmmanuel Vadot 399aa1a8ff2SEmmanuel Vadot port@0 { 400aa1a8ff2SEmmanuel Vadot reg = <0>; 401aa1a8ff2SEmmanuel Vadot ub913_2_in: endpoint { 402aa1a8ff2SEmmanuel Vadot remote-endpoint = <&sensor_2_out>; 403aa1a8ff2SEmmanuel Vadot pclk-sample = <1>; 404aa1a8ff2SEmmanuel Vadot }; 405aa1a8ff2SEmmanuel Vadot }; 406aa1a8ff2SEmmanuel Vadot 407aa1a8ff2SEmmanuel Vadot port@1 { 408aa1a8ff2SEmmanuel Vadot reg = <1>; 409aa1a8ff2SEmmanuel Vadot 410aa1a8ff2SEmmanuel Vadot ub913_2_out: endpoint { 411aa1a8ff2SEmmanuel Vadot remote-endpoint = <&ub960_fpd3_2_in>; 412aa1a8ff2SEmmanuel Vadot }; 413aa1a8ff2SEmmanuel Vadot }; 414aa1a8ff2SEmmanuel Vadot }; 415aa1a8ff2SEmmanuel Vadot 416aa1a8ff2SEmmanuel Vadot i2c { 417aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 418aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 419aa1a8ff2SEmmanuel Vadot 420aa1a8ff2SEmmanuel Vadot sensor@48 { 421aa1a8ff2SEmmanuel Vadot compatible = "aptina,mt9v111"; 422aa1a8ff2SEmmanuel Vadot reg = <0x48>; 423aa1a8ff2SEmmanuel Vadot 424aa1a8ff2SEmmanuel Vadot clocks = <&serializer2>; 425aa1a8ff2SEmmanuel Vadot 426aa1a8ff2SEmmanuel Vadot port { 427aa1a8ff2SEmmanuel Vadot sensor_2_out: endpoint { 428aa1a8ff2SEmmanuel Vadot remote-endpoint = <&ub913_2_in>; 429aa1a8ff2SEmmanuel Vadot }; 430aa1a8ff2SEmmanuel Vadot }; 431aa1a8ff2SEmmanuel Vadot }; 432aa1a8ff2SEmmanuel Vadot }; 433aa1a8ff2SEmmanuel Vadot }; 434aa1a8ff2SEmmanuel Vadot }; /* End of link@1 */ 435aa1a8ff2SEmmanuel Vadot }; 436aa1a8ff2SEmmanuel Vadot }; 437aa1a8ff2SEmmanuel Vadot }; 438aa1a8ff2SEmmanuel Vadot... 439