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