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