1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/display/ren 4 $id: http://devicetree.org/schemas/display/renesas,du.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Renesas R-Car Display Unit (DU) 7 title: Renesas R-Car Display Unit (DU) 8 8 9 maintainers: 9 maintainers: 10 - Laurent Pinchart <laurent.pinchart+renesas@ 10 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> 11 11 12 description: | 12 description: | 13 These DT bindings describe the Display Unit 13 These DT bindings describe the Display Unit embedded in the Renesas R-Car 14 Gen1, R-Car Gen2, R-Car Gen3, RZ/G1 and RZ/G 14 Gen1, R-Car Gen2, R-Car Gen3, RZ/G1 and RZ/G2 SoCs. 15 15 16 properties: 16 properties: 17 compatible: 17 compatible: 18 enum: 18 enum: 19 - renesas,du-r8a7742 # for RZ/G1H compat 19 - renesas,du-r8a7742 # for RZ/G1H compatible DU 20 - renesas,du-r8a7743 # for RZ/G1M compat 20 - renesas,du-r8a7743 # for RZ/G1M compatible DU 21 - renesas,du-r8a7744 # for RZ/G1N compat 21 - renesas,du-r8a7744 # for RZ/G1N compatible DU 22 - renesas,du-r8a7745 # for RZ/G1E compat 22 - renesas,du-r8a7745 # for RZ/G1E compatible DU 23 - renesas,du-r8a77470 # for RZ/G1C compa 23 - renesas,du-r8a77470 # for RZ/G1C compatible DU 24 - renesas,du-r8a774a1 # for RZ/G2M compa 24 - renesas,du-r8a774a1 # for RZ/G2M compatible DU 25 - renesas,du-r8a774b1 # for RZ/G2N compa 25 - renesas,du-r8a774b1 # for RZ/G2N compatible DU 26 - renesas,du-r8a774c0 # for RZ/G2E compa 26 - renesas,du-r8a774c0 # for RZ/G2E compatible DU 27 - renesas,du-r8a774e1 # for RZ/G2H compa 27 - renesas,du-r8a774e1 # for RZ/G2H compatible DU 28 - renesas,du-r8a7779 # for R-Car H1 comp 28 - renesas,du-r8a7779 # for R-Car H1 compatible DU 29 - renesas,du-r8a7790 # for R-Car H2 comp 29 - renesas,du-r8a7790 # for R-Car H2 compatible DU 30 - renesas,du-r8a7791 # for R-Car M2-W co 30 - renesas,du-r8a7791 # for R-Car M2-W compatible DU 31 - renesas,du-r8a7792 # for R-Car V2H com 31 - renesas,du-r8a7792 # for R-Car V2H compatible DU 32 - renesas,du-r8a7793 # for R-Car M2-N co 32 - renesas,du-r8a7793 # for R-Car M2-N compatible DU 33 - renesas,du-r8a7794 # for R-Car E2 comp 33 - renesas,du-r8a7794 # for R-Car E2 compatible DU 34 - renesas,du-r8a7795 # for R-Car H3 comp 34 - renesas,du-r8a7795 # for R-Car H3 compatible DU 35 - renesas,du-r8a7796 # for R-Car M3-W co 35 - renesas,du-r8a7796 # for R-Car M3-W compatible DU 36 - renesas,du-r8a77961 # for R-Car M3-W+ 36 - renesas,du-r8a77961 # for R-Car M3-W+ compatible DU 37 - renesas,du-r8a77965 # for R-Car M3-N c 37 - renesas,du-r8a77965 # for R-Car M3-N compatible DU 38 - renesas,du-r8a77970 # for R-Car V3M co 38 - renesas,du-r8a77970 # for R-Car V3M compatible DU 39 - renesas,du-r8a77980 # for R-Car V3H co 39 - renesas,du-r8a77980 # for R-Car V3H compatible DU 40 - renesas,du-r8a77990 # for R-Car E3 com 40 - renesas,du-r8a77990 # for R-Car E3 compatible DU 41 - renesas,du-r8a77995 # for R-Car D3 com 41 - renesas,du-r8a77995 # for R-Car D3 compatible DU 42 - renesas,du-r8a779a0 # for R-Car V3U co 42 - renesas,du-r8a779a0 # for R-Car V3U compatible DU 43 - renesas,du-r8a779g0 # for R-Car V4H co 43 - renesas,du-r8a779g0 # for R-Car V4H compatible DU 44 44 45 reg: 45 reg: 46 maxItems: 1 46 maxItems: 1 47 47 48 # See compatible-specific constraints below. 48 # See compatible-specific constraints below. 49 clocks: true 49 clocks: true 50 clock-names: true 50 clock-names: true 51 interrupts: 51 interrupts: 52 description: Interrupt specifiers, one per 52 description: Interrupt specifiers, one per DU channel 53 resets: true 53 resets: true 54 reset-names: true 54 reset-names: true 55 55 56 power-domains: 56 power-domains: 57 maxItems: 1 57 maxItems: 1 58 58 59 ports: 59 ports: 60 $ref: /schemas/graph.yaml#/properties/port 60 $ref: /schemas/graph.yaml#/properties/ports 61 description: | 61 description: | 62 The connections to the DU output video p 62 The connections to the DU output video ports are modeled using the OF 63 graph bindings specified in Documentatio 63 graph bindings specified in Documentation/devicetree/bindings/graph.txt. 64 The number of ports and their assignment 64 The number of ports and their assignment are model-dependent. Each port 65 shall have a single endpoint. 65 shall have a single endpoint. 66 66 67 patternProperties: 67 patternProperties: 68 "^port@[0-3]$": 68 "^port@[0-3]$": 69 $ref: /schemas/graph.yaml#/properties/ 69 $ref: /schemas/graph.yaml#/properties/port 70 unevaluatedProperties: false 70 unevaluatedProperties: false 71 71 72 required: 72 required: 73 - port@0 73 - port@0 74 - port@1 74 - port@1 75 75 76 unevaluatedProperties: false 76 unevaluatedProperties: false 77 77 78 renesas,cmms: 78 renesas,cmms: 79 $ref: /schemas/types.yaml#/definitions/pha !! 79 $ref: "/schemas/types.yaml#/definitions/phandle-array" 80 items: 80 items: 81 maxItems: 1 81 maxItems: 1 82 description: 82 description: 83 A list of phandles to the CMM instances 83 A list of phandles to the CMM instances present in the SoC, one for each 84 available DU channel. 84 available DU channel. 85 85 86 renesas,vsps: 86 renesas,vsps: 87 $ref: /schemas/types.yaml#/definitions/pha !! 87 $ref: "/schemas/types.yaml#/definitions/phandle-array" 88 items: 88 items: 89 items: 89 items: 90 - description: phandle to VSP instance 90 - description: phandle to VSP instance that serves the DU channel 91 - description: Channel index identifyi 91 - description: Channel index identifying the LIF instance in that VSP 92 description: 92 description: 93 A list of phandle and channel index tupl 93 A list of phandle and channel index tuples to the VSPs that handle the 94 memory interfaces for the DU channels. 94 memory interfaces for the DU channels. 95 95 96 required: 96 required: 97 - compatible 97 - compatible 98 - reg 98 - reg 99 - clocks 99 - clocks 100 - interrupts 100 - interrupts 101 - ports 101 - ports 102 102 103 allOf: 103 allOf: 104 - if: 104 - if: 105 properties: 105 properties: 106 compatible: 106 compatible: 107 contains: 107 contains: 108 const: renesas,du-r8a7779 108 const: renesas,du-r8a7779 109 then: 109 then: 110 properties: 110 properties: 111 clocks: 111 clocks: 112 minItems: 1 112 minItems: 1 113 items: 113 items: 114 - description: Functional clock 114 - description: Functional clock 115 - description: DU_DOTCLKIN0 input 115 - description: DU_DOTCLKIN0 input clock 116 - description: DU_DOTCLKIN1 input 116 - description: DU_DOTCLKIN1 input clock 117 117 118 clock-names: 118 clock-names: 119 minItems: 1 119 minItems: 1 120 items: 120 items: 121 - const: du.0 121 - const: du.0 122 - pattern: '^dclkin\.[01]$' 122 - pattern: '^dclkin\.[01]$' 123 - pattern: '^dclkin\.[01]$' 123 - pattern: '^dclkin\.[01]$' 124 124 125 interrupts: 125 interrupts: 126 maxItems: 1 126 maxItems: 1 127 127 128 resets: 128 resets: 129 maxItems: 1 129 maxItems: 1 130 130 131 ports: 131 ports: 132 properties: 132 properties: 133 port@0: 133 port@0: 134 description: DPAD 0 134 description: DPAD 0 135 port@1: 135 port@1: 136 description: DPAD 1 136 description: DPAD 1 137 # port@2 is TCON, not supported ye 137 # port@2 is TCON, not supported yet 138 port@2: false 138 port@2: false 139 port@3: false 139 port@3: false 140 140 141 required: 141 required: 142 - port@0 142 - port@0 143 - port@1 143 - port@1 144 144 145 required: 145 required: 146 - interrupts 146 - interrupts 147 147 148 - if: 148 - if: 149 properties: 149 properties: 150 compatible: 150 compatible: 151 contains: 151 contains: 152 enum: 152 enum: 153 - renesas,du-r8a7743 153 - renesas,du-r8a7743 154 - renesas,du-r8a7744 154 - renesas,du-r8a7744 155 - renesas,du-r8a7791 155 - renesas,du-r8a7791 156 - renesas,du-r8a7793 156 - renesas,du-r8a7793 157 then: 157 then: 158 properties: 158 properties: 159 clocks: 159 clocks: 160 minItems: 2 160 minItems: 2 161 items: 161 items: 162 - description: Functional clock fo 162 - description: Functional clock for DU0 163 - description: Functional clock fo 163 - description: Functional clock for DU1 164 - description: DU_DOTCLKIN0 input 164 - description: DU_DOTCLKIN0 input clock 165 - description: DU_DOTCLKIN1 input 165 - description: DU_DOTCLKIN1 input clock 166 166 167 clock-names: 167 clock-names: 168 minItems: 2 168 minItems: 2 169 items: 169 items: 170 - const: du.0 170 - const: du.0 171 - const: du.1 171 - const: du.1 172 - pattern: '^dclkin\.[01]$' 172 - pattern: '^dclkin\.[01]$' 173 - pattern: '^dclkin\.[01]$' 173 - pattern: '^dclkin\.[01]$' 174 174 175 interrupts: 175 interrupts: 176 maxItems: 2 176 maxItems: 2 177 177 178 resets: 178 resets: 179 maxItems: 1 179 maxItems: 1 180 180 181 reset-names: 181 reset-names: 182 items: 182 items: 183 - const: du.0 183 - const: du.0 184 184 185 ports: 185 ports: 186 properties: 186 properties: 187 port@0: 187 port@0: 188 description: DPAD 0 188 description: DPAD 0 189 port@1: 189 port@1: 190 description: LVDS 0 190 description: LVDS 0 191 # port@2 is TCON, not supported ye 191 # port@2 is TCON, not supported yet 192 port@2: false 192 port@2: false 193 port@3: false 193 port@3: false 194 194 195 required: 195 required: 196 - port@0 196 - port@0 197 - port@1 197 - port@1 198 198 199 required: 199 required: 200 - clock-names 200 - clock-names 201 - interrupts 201 - interrupts 202 - resets 202 - resets 203 - reset-names 203 - reset-names 204 204 205 - if: 205 - if: 206 properties: 206 properties: 207 compatible: 207 compatible: 208 contains: 208 contains: 209 enum: 209 enum: 210 - renesas,du-r8a7745 210 - renesas,du-r8a7745 211 - renesas,du-r8a7792 211 - renesas,du-r8a7792 212 then: 212 then: 213 properties: 213 properties: 214 clocks: 214 clocks: 215 minItems: 2 215 minItems: 2 216 items: 216 items: 217 - description: Functional clock fo 217 - description: Functional clock for DU0 218 - description: Functional clock fo 218 - description: Functional clock for DU1 219 - description: DU_DOTCLKIN0 input 219 - description: DU_DOTCLKIN0 input clock 220 - description: DU_DOTCLKIN1 input 220 - description: DU_DOTCLKIN1 input clock 221 221 222 clock-names: 222 clock-names: 223 minItems: 2 223 minItems: 2 224 items: 224 items: 225 - const: du.0 225 - const: du.0 226 - const: du.1 226 - const: du.1 227 - pattern: '^dclkin\.[01]$' 227 - pattern: '^dclkin\.[01]$' 228 - pattern: '^dclkin\.[01]$' 228 - pattern: '^dclkin\.[01]$' 229 229 230 interrupts: 230 interrupts: 231 maxItems: 2 231 maxItems: 2 232 232 233 resets: 233 resets: 234 maxItems: 1 234 maxItems: 1 235 235 236 reset-names: 236 reset-names: 237 items: 237 items: 238 - const: du.0 238 - const: du.0 239 239 240 ports: 240 ports: 241 properties: 241 properties: 242 port@0: 242 port@0: 243 description: DPAD 0 243 description: DPAD 0 244 port@1: 244 port@1: 245 description: DPAD 1 245 description: DPAD 1 246 port@2: false 246 port@2: false 247 port@3: false 247 port@3: false 248 248 249 required: 249 required: 250 - port@0 250 - port@0 251 - port@1 251 - port@1 252 252 253 required: 253 required: 254 - clock-names 254 - clock-names 255 - interrupts 255 - interrupts 256 - resets 256 - resets 257 - reset-names 257 - reset-names 258 258 259 - if: 259 - if: 260 properties: 260 properties: 261 compatible: 261 compatible: 262 contains: 262 contains: 263 enum: 263 enum: 264 - renesas,du-r8a7794 264 - renesas,du-r8a7794 265 then: 265 then: 266 properties: 266 properties: 267 clocks: 267 clocks: 268 minItems: 2 268 minItems: 2 269 items: 269 items: 270 - description: Functional clock fo 270 - description: Functional clock for DU0 271 - description: Functional clock fo 271 - description: Functional clock for DU1 272 - description: DU_DOTCLKIN0 input 272 - description: DU_DOTCLKIN0 input clock 273 - description: DU_DOTCLKIN1 input 273 - description: DU_DOTCLKIN1 input clock 274 274 275 clock-names: 275 clock-names: 276 minItems: 2 276 minItems: 2 277 items: 277 items: 278 - const: du.0 278 - const: du.0 279 - const: du.1 279 - const: du.1 280 - pattern: '^dclkin\.[01]$' 280 - pattern: '^dclkin\.[01]$' 281 - pattern: '^dclkin\.[01]$' 281 - pattern: '^dclkin\.[01]$' 282 282 283 interrupts: 283 interrupts: 284 maxItems: 2 284 maxItems: 2 285 285 286 resets: 286 resets: 287 maxItems: 1 287 maxItems: 1 288 288 289 reset-names: 289 reset-names: 290 items: 290 items: 291 - const: du.0 291 - const: du.0 292 292 293 ports: 293 ports: 294 properties: 294 properties: 295 port@0: 295 port@0: 296 description: DPAD 0 296 description: DPAD 0 297 port@1: 297 port@1: 298 description: DPAD 1 298 description: DPAD 1 299 # port@2 is TCON, not supported ye 299 # port@2 is TCON, not supported yet 300 port@2: false 300 port@2: false 301 port@3: false 301 port@3: false 302 302 303 required: 303 required: 304 - port@0 304 - port@0 305 - port@1 305 - port@1 306 306 307 required: 307 required: 308 - clock-names 308 - clock-names 309 - interrupts 309 - interrupts 310 - resets 310 - resets 311 - reset-names 311 - reset-names 312 312 313 - if: 313 - if: 314 properties: 314 properties: 315 compatible: 315 compatible: 316 contains: 316 contains: 317 enum: 317 enum: 318 - renesas,du-r8a77470 318 - renesas,du-r8a77470 319 then: 319 then: 320 properties: 320 properties: 321 clocks: 321 clocks: 322 minItems: 2 322 minItems: 2 323 items: 323 items: 324 - description: Functional clock fo 324 - description: Functional clock for DU0 325 - description: Functional clock fo 325 - description: Functional clock for DU1 326 - description: DU_DOTCLKIN0 input 326 - description: DU_DOTCLKIN0 input clock 327 - description: DU_DOTCLKIN1 input 327 - description: DU_DOTCLKIN1 input clock 328 328 329 clock-names: 329 clock-names: 330 minItems: 2 330 minItems: 2 331 items: 331 items: 332 - const: du.0 332 - const: du.0 333 - const: du.1 333 - const: du.1 334 - pattern: '^dclkin\.[01]$' 334 - pattern: '^dclkin\.[01]$' 335 - pattern: '^dclkin\.[01]$' 335 - pattern: '^dclkin\.[01]$' 336 336 337 interrupts: 337 interrupts: 338 maxItems: 2 338 maxItems: 2 339 339 340 resets: 340 resets: 341 maxItems: 1 341 maxItems: 1 342 342 343 reset-names: 343 reset-names: 344 items: 344 items: 345 - const: du.0 345 - const: du.0 346 346 347 ports: 347 ports: 348 properties: 348 properties: 349 port@0: 349 port@0: 350 description: DPAD 0 350 description: DPAD 0 351 port@1: 351 port@1: 352 description: DPAD 1 352 description: DPAD 1 353 port@2: 353 port@2: 354 description: LVDS 0 354 description: LVDS 0 355 # port@3 is DVENC, not supported y 355 # port@3 is DVENC, not supported yet 356 port@3: false 356 port@3: false 357 357 358 required: 358 required: 359 - port@0 359 - port@0 360 - port@1 360 - port@1 361 - port@2 361 - port@2 362 362 363 required: 363 required: 364 - clock-names 364 - clock-names 365 - interrupts 365 - interrupts 366 - resets 366 - resets 367 - reset-names 367 - reset-names 368 368 369 - if: 369 - if: 370 properties: 370 properties: 371 compatible: 371 compatible: 372 contains: 372 contains: 373 enum: 373 enum: 374 - renesas,du-r8a7742 374 - renesas,du-r8a7742 375 - renesas,du-r8a7790 375 - renesas,du-r8a7790 376 then: 376 then: 377 properties: 377 properties: 378 clocks: 378 clocks: 379 minItems: 3 379 minItems: 3 380 items: 380 items: 381 - description: Functional clock fo 381 - description: Functional clock for DU0 382 - description: Functional clock fo 382 - description: Functional clock for DU1 383 - description: Functional clock fo 383 - description: Functional clock for DU2 384 - description: DU_DOTCLKIN0 input 384 - description: DU_DOTCLKIN0 input clock 385 - description: DU_DOTCLKIN1 input 385 - description: DU_DOTCLKIN1 input clock 386 - description: DU_DOTCLKIN2 input 386 - description: DU_DOTCLKIN2 input clock 387 387 388 clock-names: 388 clock-names: 389 minItems: 3 389 minItems: 3 390 items: 390 items: 391 - const: du.0 391 - const: du.0 392 - const: du.1 392 - const: du.1 393 - const: du.2 393 - const: du.2 394 - pattern: '^dclkin\.[012]$' 394 - pattern: '^dclkin\.[012]$' 395 - pattern: '^dclkin\.[012]$' 395 - pattern: '^dclkin\.[012]$' 396 - pattern: '^dclkin\.[012]$' 396 - pattern: '^dclkin\.[012]$' 397 397 398 interrupts: 398 interrupts: 399 maxItems: 3 399 maxItems: 3 400 400 401 resets: 401 resets: 402 maxItems: 1 402 maxItems: 1 403 403 404 reset-names: 404 reset-names: 405 items: 405 items: 406 - const: du.0 406 - const: du.0 407 407 408 ports: 408 ports: 409 properties: 409 properties: 410 port@0: 410 port@0: 411 description: DPAD 0 411 description: DPAD 0 412 port@1: 412 port@1: 413 description: LVDS 0 413 description: LVDS 0 414 port@2: 414 port@2: 415 description: LVDS 1 415 description: LVDS 1 416 # port@3 is TCON, not supported ye 416 # port@3 is TCON, not supported yet 417 port@3: false 417 port@3: false 418 418 419 required: 419 required: 420 - port@0 420 - port@0 421 - port@1 421 - port@1 422 - port@2 422 - port@2 423 423 424 required: 424 required: 425 - clock-names 425 - clock-names 426 - interrupts 426 - interrupts 427 - resets 427 - resets 428 - reset-names 428 - reset-names 429 429 430 - if: 430 - if: 431 properties: 431 properties: 432 compatible: 432 compatible: 433 contains: 433 contains: 434 enum: 434 enum: 435 - renesas,du-r8a7795 435 - renesas,du-r8a7795 436 then: 436 then: 437 properties: 437 properties: 438 clocks: 438 clocks: 439 minItems: 4 439 minItems: 4 440 items: 440 items: 441 - description: Functional clock fo 441 - description: Functional clock for DU0 442 - description: Functional clock fo 442 - description: Functional clock for DU1 443 - description: Functional clock fo 443 - description: Functional clock for DU2 444 - description: Functional clock fo 444 - description: Functional clock for DU4 445 - description: DU_DOTCLKIN0 input 445 - description: DU_DOTCLKIN0 input clock 446 - description: DU_DOTCLKIN1 input 446 - description: DU_DOTCLKIN1 input clock 447 - description: DU_DOTCLKIN2 input 447 - description: DU_DOTCLKIN2 input clock 448 - description: DU_DOTCLKIN3 input 448 - description: DU_DOTCLKIN3 input clock 449 449 450 clock-names: 450 clock-names: 451 minItems: 4 451 minItems: 4 452 items: 452 items: 453 - const: du.0 453 - const: du.0 454 - const: du.1 454 - const: du.1 455 - const: du.2 455 - const: du.2 456 - const: du.3 456 - const: du.3 457 - pattern: '^dclkin\.[0123]$' 457 - pattern: '^dclkin\.[0123]$' 458 - pattern: '^dclkin\.[0123]$' 458 - pattern: '^dclkin\.[0123]$' 459 - pattern: '^dclkin\.[0123]$' 459 - pattern: '^dclkin\.[0123]$' 460 - pattern: '^dclkin\.[0123]$' 460 - pattern: '^dclkin\.[0123]$' 461 461 462 interrupts: 462 interrupts: 463 maxItems: 4 463 maxItems: 4 464 464 465 resets: 465 resets: 466 maxItems: 2 466 maxItems: 2 467 467 468 reset-names: 468 reset-names: 469 items: 469 items: 470 - const: du.0 470 - const: du.0 471 - const: du.2 471 - const: du.2 472 472 473 ports: 473 ports: 474 properties: 474 properties: 475 port@0: 475 port@0: 476 description: DPAD 0 476 description: DPAD 0 477 port@1: 477 port@1: 478 description: HDMI 0 478 description: HDMI 0 479 port@2: 479 port@2: 480 description: HDMI 1 480 description: HDMI 1 481 port@3: 481 port@3: 482 description: LVDS 0 482 description: LVDS 0 483 483 484 required: 484 required: 485 - port@0 485 - port@0 486 - port@1 486 - port@1 487 - port@2 487 - port@2 488 - port@3 488 - port@3 489 489 490 renesas,cmms: 490 renesas,cmms: 491 minItems: 4 491 minItems: 4 492 492 493 renesas,vsps: 493 renesas,vsps: 494 minItems: 4 494 minItems: 4 495 495 496 required: 496 required: 497 - clock-names 497 - clock-names 498 - interrupts 498 - interrupts 499 - resets 499 - resets 500 - reset-names 500 - reset-names 501 - renesas,vsps 501 - renesas,vsps 502 502 503 - if: 503 - if: 504 properties: 504 properties: 505 compatible: 505 compatible: 506 contains: 506 contains: 507 enum: 507 enum: 508 - renesas,du-r8a774a1 508 - renesas,du-r8a774a1 509 - renesas,du-r8a7796 509 - renesas,du-r8a7796 510 - renesas,du-r8a77961 510 - renesas,du-r8a77961 511 then: 511 then: 512 properties: 512 properties: 513 clocks: 513 clocks: 514 minItems: 3 514 minItems: 3 515 items: 515 items: 516 - description: Functional clock fo 516 - description: Functional clock for DU0 517 - description: Functional clock fo 517 - description: Functional clock for DU1 518 - description: Functional clock fo 518 - description: Functional clock for DU2 519 - description: DU_DOTCLKIN0 input 519 - description: DU_DOTCLKIN0 input clock 520 - description: DU_DOTCLKIN1 input 520 - description: DU_DOTCLKIN1 input clock 521 - description: DU_DOTCLKIN2 input 521 - description: DU_DOTCLKIN2 input clock 522 522 523 clock-names: 523 clock-names: 524 minItems: 3 524 minItems: 3 525 items: 525 items: 526 - const: du.0 526 - const: du.0 527 - const: du.1 527 - const: du.1 528 - const: du.2 528 - const: du.2 529 - pattern: '^dclkin\.[012]$' 529 - pattern: '^dclkin\.[012]$' 530 - pattern: '^dclkin\.[012]$' 530 - pattern: '^dclkin\.[012]$' 531 - pattern: '^dclkin\.[012]$' 531 - pattern: '^dclkin\.[012]$' 532 532 533 interrupts: 533 interrupts: 534 maxItems: 3 534 maxItems: 3 535 535 536 resets: 536 resets: 537 maxItems: 2 537 maxItems: 2 538 538 539 reset-names: 539 reset-names: 540 items: 540 items: 541 - const: du.0 541 - const: du.0 542 - const: du.2 542 - const: du.2 543 543 544 ports: 544 ports: 545 properties: 545 properties: 546 port@0: 546 port@0: 547 description: DPAD 0 547 description: DPAD 0 548 port@1: 548 port@1: 549 description: HDMI 0 549 description: HDMI 0 550 port@2: 550 port@2: 551 description: LVDS 0 551 description: LVDS 0 552 port@3: false 552 port@3: false 553 553 554 required: 554 required: 555 - port@0 555 - port@0 556 - port@1 556 - port@1 557 - port@2 557 - port@2 558 558 559 renesas,cmms: 559 renesas,cmms: 560 minItems: 3 560 minItems: 3 561 561 562 renesas,vsps: 562 renesas,vsps: 563 minItems: 3 563 minItems: 3 564 564 565 required: 565 required: 566 - clock-names 566 - clock-names 567 - interrupts 567 - interrupts 568 - resets 568 - resets 569 - reset-names 569 - reset-names 570 - renesas,vsps 570 - renesas,vsps 571 571 572 - if: 572 - if: 573 properties: 573 properties: 574 compatible: 574 compatible: 575 contains: 575 contains: 576 enum: 576 enum: 577 - renesas,du-r8a774b1 577 - renesas,du-r8a774b1 578 - renesas,du-r8a774e1 578 - renesas,du-r8a774e1 579 - renesas,du-r8a77965 579 - renesas,du-r8a77965 580 then: 580 then: 581 properties: 581 properties: 582 clocks: 582 clocks: 583 minItems: 3 583 minItems: 3 584 items: 584 items: 585 - description: Functional clock fo 585 - description: Functional clock for DU0 586 - description: Functional clock fo 586 - description: Functional clock for DU1 587 - description: Functional clock fo 587 - description: Functional clock for DU3 588 - description: DU_DOTCLKIN0 input 588 - description: DU_DOTCLKIN0 input clock 589 - description: DU_DOTCLKIN1 input 589 - description: DU_DOTCLKIN1 input clock 590 - description: DU_DOTCLKIN3 input 590 - description: DU_DOTCLKIN3 input clock 591 591 592 clock-names: 592 clock-names: 593 minItems: 3 593 minItems: 3 594 items: 594 items: 595 - const: du.0 595 - const: du.0 596 - const: du.1 596 - const: du.1 597 - const: du.3 597 - const: du.3 598 - pattern: '^dclkin\.[013]$' 598 - pattern: '^dclkin\.[013]$' 599 - pattern: '^dclkin\.[013]$' 599 - pattern: '^dclkin\.[013]$' 600 - pattern: '^dclkin\.[013]$' 600 - pattern: '^dclkin\.[013]$' 601 601 602 interrupts: 602 interrupts: 603 maxItems: 3 603 maxItems: 3 604 604 605 resets: 605 resets: 606 maxItems: 2 606 maxItems: 2 607 607 608 reset-names: 608 reset-names: 609 items: 609 items: 610 - const: du.0 610 - const: du.0 611 - const: du.3 611 - const: du.3 612 612 613 ports: 613 ports: 614 properties: 614 properties: 615 port@0: 615 port@0: 616 description: DPAD 0 616 description: DPAD 0 617 port@1: 617 port@1: 618 description: HDMI 0 618 description: HDMI 0 619 port@2: 619 port@2: 620 description: LVDS 0 620 description: LVDS 0 621 port@3: false 621 port@3: false 622 622 623 required: 623 required: 624 - port@0 624 - port@0 625 - port@1 625 - port@1 626 - port@2 626 - port@2 627 627 628 renesas,cmms: 628 renesas,cmms: 629 minItems: 3 629 minItems: 3 630 630 631 renesas,vsps: 631 renesas,vsps: 632 minItems: 3 632 minItems: 3 633 633 634 required: 634 required: 635 - clock-names 635 - clock-names 636 - interrupts 636 - interrupts 637 - resets 637 - resets 638 - reset-names 638 - reset-names 639 - renesas,vsps 639 - renesas,vsps 640 640 641 - if: 641 - if: 642 properties: 642 properties: 643 compatible: 643 compatible: 644 contains: 644 contains: 645 enum: 645 enum: 646 - renesas,du-r8a77970 646 - renesas,du-r8a77970 647 - renesas,du-r8a77980 647 - renesas,du-r8a77980 648 then: 648 then: 649 properties: 649 properties: 650 clocks: 650 clocks: 651 minItems: 1 651 minItems: 1 652 items: 652 items: 653 - description: Functional clock fo 653 - description: Functional clock for DU0 654 - description: DU_DOTCLKIN0 input 654 - description: DU_DOTCLKIN0 input clock 655 655 656 clock-names: 656 clock-names: 657 minItems: 1 657 minItems: 1 658 items: 658 items: 659 - const: du.0 659 - const: du.0 660 - const: dclkin.0 660 - const: dclkin.0 661 661 662 interrupts: 662 interrupts: 663 maxItems: 1 663 maxItems: 1 664 664 665 resets: 665 resets: 666 maxItems: 1 666 maxItems: 1 667 667 668 reset-names: 668 reset-names: 669 items: 669 items: 670 - const: du.0 670 - const: du.0 671 671 672 ports: 672 ports: 673 properties: 673 properties: 674 port@0: 674 port@0: 675 description: DPAD 0 675 description: DPAD 0 676 port@1: 676 port@1: 677 description: LVDS 0 677 description: LVDS 0 678 port@2: false 678 port@2: false 679 port@3: false 679 port@3: false 680 680 681 required: 681 required: 682 - port@0 682 - port@0 683 - port@1 683 - port@1 684 684 685 renesas,vsps: 685 renesas,vsps: 686 minItems: 1 686 minItems: 1 687 687 688 required: 688 required: 689 - clock-names 689 - clock-names 690 - interrupts 690 - interrupts 691 - resets 691 - resets 692 - reset-names 692 - reset-names 693 - renesas,vsps 693 - renesas,vsps 694 694 695 - if: 695 - if: 696 properties: 696 properties: 697 compatible: 697 compatible: 698 contains: 698 contains: 699 enum: 699 enum: 700 - renesas,du-r8a774c0 700 - renesas,du-r8a774c0 701 - renesas,du-r8a77990 701 - renesas,du-r8a77990 702 - renesas,du-r8a77995 702 - renesas,du-r8a77995 703 then: 703 then: 704 properties: 704 properties: 705 clocks: 705 clocks: 706 minItems: 2 706 minItems: 2 707 items: 707 items: 708 - description: Functional clock fo 708 - description: Functional clock for DU0 709 - description: Functional clock fo 709 - description: Functional clock for DU1 710 - description: DU_DOTCLKIN0 input 710 - description: DU_DOTCLKIN0 input clock 711 - description: DU_DOTCLKIN1 input 711 - description: DU_DOTCLKIN1 input clock 712 712 713 clock-names: 713 clock-names: 714 minItems: 2 714 minItems: 2 715 items: 715 items: 716 - const: du.0 716 - const: du.0 717 - const: du.1 717 - const: du.1 718 - pattern: '^dclkin\.[01]$' 718 - pattern: '^dclkin\.[01]$' 719 - pattern: '^dclkin\.[01]$' 719 - pattern: '^dclkin\.[01]$' 720 720 721 interrupts: 721 interrupts: 722 maxItems: 2 722 maxItems: 2 723 723 724 resets: 724 resets: 725 maxItems: 1 725 maxItems: 1 726 726 727 reset-names: 727 reset-names: 728 items: 728 items: 729 - const: du.0 729 - const: du.0 730 730 731 ports: 731 ports: 732 properties: 732 properties: 733 port@0: 733 port@0: 734 description: DPAD 0 734 description: DPAD 0 735 port@1: 735 port@1: 736 description: LVDS 0 736 description: LVDS 0 737 port@2: 737 port@2: 738 description: LVDS 1 738 description: LVDS 1 739 # port@3 is TCON, not supported ye 739 # port@3 is TCON, not supported yet 740 port@3: false 740 port@3: false 741 741 742 required: 742 required: 743 - port@0 743 - port@0 744 - port@1 744 - port@1 745 - port@2 745 - port@2 746 746 747 renesas,cmms: 747 renesas,cmms: 748 minItems: 2 748 minItems: 2 749 749 750 renesas,vsps: 750 renesas,vsps: 751 minItems: 2 751 minItems: 2 752 752 753 required: 753 required: 754 - clock-names 754 - clock-names 755 - interrupts 755 - interrupts 756 - resets 756 - resets 757 - reset-names 757 - reset-names 758 - renesas,vsps 758 - renesas,vsps 759 759 760 - if: 760 - if: 761 properties: 761 properties: 762 compatible: 762 compatible: 763 contains: 763 contains: 764 enum: 764 enum: 765 - renesas,du-r8a779a0 765 - renesas,du-r8a779a0 766 - renesas,du-r8a779g0 766 - renesas,du-r8a779g0 767 then: 767 then: 768 properties: 768 properties: 769 clocks: 769 clocks: 770 items: 770 items: 771 - description: Functional clock 771 - description: Functional clock 772 772 773 clock-names: 773 clock-names: 774 items: 774 items: 775 - const: du.0 775 - const: du.0 776 776 777 interrupts: 777 interrupts: 778 maxItems: 2 778 maxItems: 2 779 779 780 resets: 780 resets: 781 maxItems: 1 781 maxItems: 1 782 782 783 reset-names: 783 reset-names: 784 items: 784 items: 785 - const: du.0 785 - const: du.0 786 786 787 ports: 787 ports: 788 properties: 788 properties: 789 port@0: 789 port@0: 790 description: DSI 0 790 description: DSI 0 791 port@1: 791 port@1: 792 description: DSI 1 792 description: DSI 1 793 port@2: false 793 port@2: false 794 port@3: false 794 port@3: false 795 795 796 required: 796 required: 797 - port@0 797 - port@0 798 - port@1 798 - port@1 799 799 800 renesas,vsps: 800 renesas,vsps: 801 minItems: 2 801 minItems: 2 802 802 803 required: 803 required: 804 - clock-names 804 - clock-names 805 - interrupts 805 - interrupts 806 - resets 806 - resets 807 - reset-names 807 - reset-names 808 - renesas,vsps 808 - renesas,vsps 809 809 810 additionalProperties: false 810 additionalProperties: false 811 811 812 examples: 812 examples: 813 # R-Car H3 ES2.0 DU 813 # R-Car H3 ES2.0 DU 814 - | 814 - | 815 #include <dt-bindings/clock/renesas-cpg-ms 815 #include <dt-bindings/clock/renesas-cpg-mssr.h> 816 #include <dt-bindings/interrupt-controller 816 #include <dt-bindings/interrupt-controller/arm-gic.h> 817 817 818 display@feb00000 { 818 display@feb00000 { 819 compatible = "renesas,du-r8a7795"; 819 compatible = "renesas,du-r8a7795"; 820 reg = <0xfeb00000 0x80000>; 820 reg = <0xfeb00000 0x80000>; 821 interrupts = <GIC_SPI 256 IRQ_TYPE_LEV 821 interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>, 822 <GIC_SPI 268 IRQ_TYPE_LEV 822 <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>, 823 <GIC_SPI 269 IRQ_TYPE_LEV 823 <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>, 824 <GIC_SPI 270 IRQ_TYPE_LEV 824 <GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH>; 825 clocks = <&cpg CPG_MOD 724>, 825 clocks = <&cpg CPG_MOD 724>, 826 <&cpg CPG_MOD 723>, 826 <&cpg CPG_MOD 723>, 827 <&cpg CPG_MOD 722>, 827 <&cpg CPG_MOD 722>, 828 <&cpg CPG_MOD 721>; 828 <&cpg CPG_MOD 721>; 829 clock-names = "du.0", "du.1", "du.2", 829 clock-names = "du.0", "du.1", "du.2", "du.3"; 830 resets = <&cpg 724>, <&cpg 722>; 830 resets = <&cpg 724>, <&cpg 722>; 831 reset-names = "du.0", "du.2"; 831 reset-names = "du.0", "du.2"; 832 832 833 renesas,cmms = <&cmm0>, <&cmm1>, <&cmm 833 renesas,cmms = <&cmm0>, <&cmm1>, <&cmm2>, <&cmm3>; 834 renesas,vsps = <&vspd0 0>, <&vspd1 0>, 834 renesas,vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd0 1>; 835 835 836 ports { 836 ports { 837 #address-cells = <1>; 837 #address-cells = <1>; 838 #size-cells = <0>; 838 #size-cells = <0>; 839 839 840 port@0 { 840 port@0 { 841 reg = <0>; 841 reg = <0>; 842 endpoint { 842 endpoint { 843 remote-endpoint = <&adv712 843 remote-endpoint = <&adv7123_in>; 844 }; 844 }; 845 }; 845 }; 846 port@1 { 846 port@1 { 847 reg = <1>; 847 reg = <1>; 848 endpoint { 848 endpoint { 849 remote-endpoint = <&dw_hdm 849 remote-endpoint = <&dw_hdmi0_in>; 850 }; 850 }; 851 }; 851 }; 852 port@2 { 852 port@2 { 853 reg = <2>; 853 reg = <2>; 854 endpoint { 854 endpoint { 855 remote-endpoint = <&dw_hdm 855 remote-endpoint = <&dw_hdmi1_in>; 856 }; 856 }; 857 }; 857 }; 858 port@3 { 858 port@3 { 859 reg = <3>; 859 reg = <3>; 860 endpoint { 860 endpoint { 861 remote-endpoint = <&lvds0_ 861 remote-endpoint = <&lvds0_in>; 862 }; 862 }; 863 }; 863 }; 864 }; 864 }; 865 }; 865 }; 866 866 867 ... 867 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.