From: Andy Yan <andyshrk@163.com>
To: heiko@sntech.de
Cc: hjc@rock-chips.com, dri-devel@lists.freedesktop.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org,
krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org,
devicetree@vger.kernel.org, sebastian.reichel@collabora.com,
kever.yang@rock-chips.com, chris.obbard@collabora.com,
Andy Yan <andy.yan@rock-chips.com>
Subject: [PATCH v3 09/14] dt-bindings: display: vop2: Add rk3588 support
Date: Thu, 30 Nov 2023 20:24:18 +0800 [thread overview]
Message-ID: <20231130122418.13258-1-andyshrk@163.com> (raw)
In-Reply-To: <20231130122001.12474-1-andyshrk@163.com>
From: Andy Yan <andy.yan@rock-chips.com>
The vop2 on rk3588 is similar to which on rk356x
but with 4 video ports and need to reference
more grf modules.
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
---
Changes in v3:
- constrain properties in allOf:if:then
- some description updates
Changes in v2:
- fix errors when running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
.../display/rockchip/rockchip-vop2.yaml | 118 +++++++++++++++---
1 file changed, 99 insertions(+), 19 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip-vop2.yaml b/Documentation/devicetree/bindings/display/rockchip/rockchip-vop2.yaml
index b60b90472d42..b94d911ee9a6 100644
--- a/Documentation/devicetree/bindings/display/rockchip/rockchip-vop2.yaml
+++ b/Documentation/devicetree/bindings/display/rockchip/rockchip-vop2.yaml
@@ -20,6 +20,7 @@ properties:
enum:
- rockchip,rk3566-vop
- rockchip,rk3568-vop
+ - rockchip,rk3588-vop
reg:
items:
@@ -41,45 +42,69 @@ properties:
The VOP interrupt is shared by several interrupt sources, such as
frame start (VSYNC), line flag and other status interrupts.
+ # See compatible-specific constraints below.
clocks:
+ minItems: 5
items:
- - description: Clock for ddr buffer transfer.
- - description: Clock for the ahb bus to R/W the phy regs.
- - description: Pixel clock for video port 0.
- - description: Pixel clock for video port 1.
- - description: Pixel clock for video port 2.
+ - description: Clock for ddr buffer transfer via axi.
+ - description: Clock for the ahb bus to R/W the regs
+ - description: Pixel clock for video port 0
+ - description: Pixel clock for video port 1
+ - description: Pixel clock for video port 2
+ - description: Pixel clock for video port 3
+ - description: Peripheral(vop grf/dsi) clock.
clock-names:
+ minItems: 5
items:
- const: aclk
- const: hclk
- const: dclk_vp0
- const: dclk_vp1
- const: dclk_vp2
+ - const: dclk_vp3
+ - const: pclk_vop
rockchip,grf:
$ref: /schemas/types.yaml#/definitions/phandle
description:
- Phandle to GRF regs used for misc control
+ Phandle to GRF regs used for control the polarity of dclk/hsync/vsync of DPI,
+ also used for query vop memory bisr enable status, etc.
+
+ rockchip,vo1-grf:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description:
+ Phandle to VO GRF regs used for control the polarity of dclk/hsync/vsync of hdmi
+ on rk3588
+
+ rockchip,vop-grf:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description:
+ Phandle to VOP GRF regs used for control data path between vopr and hdmi/edp.
+
+ rockchip,pmu:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description:
+ Phandle to PMU GRF used for query vop memory bisr status on rk3588
ports:
$ref: /schemas/graph.yaml#/properties/ports
-
- properties:
- port@0:
+ description: |
+ The connections to the output video ports are modeled using the OF
+ graph bindings specified in Documentation/devicetree/bindings/graph.txt.
+ The number of ports and their assignment are model-dependent. Each port
+ shall have a single endpoint.
+
+ patternProperties:
+ "^port@[0-3]$":
$ref: /schemas/graph.yaml#/properties/port
- description:
- Output endpoint of VP0
+ description: Output endpoint of VP0/1/2/3
+ unevaluatedProperties: false
- port@1:
- $ref: /schemas/graph.yaml#/properties/port
- description:
- Output endpoint of VP1
+ required:
+ - port@0
- port@2:
- $ref: /schemas/graph.yaml#/properties/port
- description:
- Output endpoint of VP2
+ unevaluatedProperties: false
iommus:
maxItems: 1
@@ -96,6 +121,61 @@ required:
- clock-names
- ports
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: rockchip,rk3588-vop
+ then:
+ properties:
+ clocks:
+ minItems: 7
+ clock-names:
+ items:
+ - const: aclk
+ - const: hclk
+ - const: dclk_vp0
+ - const: dclk_vp1
+ - const: dclk_vp2
+ - const: dclk_vp3
+ - const: pclk_vop
+
+ ports:
+ required:
+ - port@0
+ - port@1
+ - port@2
+ - port@3
+
+ required:
+ - rockchip,grf
+ - rockchip,vo1-grf
+ - rockchip,vop-grf
+ - rockchip,pmu
+
+ else:
+ properties:
+ rockchip,vo1-grf: false
+ rockchip,vop-grf: false
+ rockchip,pmu: false
+
+ clocks:
+ minItems: 5
+ clock-names:
+ items:
+ - const: aclk
+ - const: hclk
+ - const: dclk_vp0
+ - const: dclk_vp1
+ - const: dclk_vp2
+
+ ports:
+ required:
+ - port@0
+ - port@1
+ - port@2
+
additionalProperties: false
examples:
--
2.34.1
next prev parent reply other threads:[~2023-11-30 12:24 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-30 12:20 [PATCH v3 00/14] Add VOP2 support on rk3588 Andy Yan
2023-11-30 12:22 ` [PATCH v3 01/14] drm/rockchip: move output interface related definition to rockchip_drm_drv.h Andy Yan
2023-11-30 12:22 ` [PATCH v3 02/14] Revert "drm/rockchip: vop2: Use regcache_sync() to fix suspend/resume" Andy Yan
2023-11-30 12:23 ` [PATCH v3 03/14] drm/rockchip: vop2: set half_block_en bit in all mode Andy Yan
2023-11-30 12:23 ` [PATCH v3 04/14] drm/rockchip: vop2: clear afbc en and transform bit for cluster window at linear mode Andy Yan
2023-11-30 12:23 ` [PATCH v3 05/14] drm/rockchip: vop2: Add write mask for VP config done Andy Yan
2023-11-30 12:23 ` [PATCH v3 06/14] drm/rockchip: vop2: Set YUV/RGB overlay mode Andy Yan
2023-11-30 12:23 ` [PATCH v3 07/14] drm/rockchip: vop2: rename grf to sys_grf Andy Yan
2023-11-30 12:24 ` [PATCH v3 08/14] dt-bindings: soc: rockchip: add rk3588 vop/vo syscon Andy Yan
2023-11-30 12:24 ` Andy Yan [this message]
2023-12-01 8:17 ` [PATCH v3 09/14] dt-bindings: display: vop2: Add rk3588 support Krzysztof Kozlowski
2023-11-30 12:24 ` [PATCH v3 10/14] dt-bindings: rockchip,vop2: Add more endpoint definition Andy Yan
2023-11-30 12:24 ` [PATCH v3 11/14] drm/rockchip: vop2: Add support for rk3588 Andy Yan
2023-12-05 9:29 ` Sascha Hauer
2023-12-05 9:44 ` Andy Yan
2023-12-05 9:48 ` Sascha Hauer
2023-11-30 12:24 ` [PATCH v3 12/14] drm/rockchip: vop2: Add debugfs support Andy Yan
2023-12-05 9:15 ` Sascha Hauer
2023-12-06 10:20 ` Andy Yan
2023-12-06 11:20 ` Sascha Hauer
2023-12-06 11:27 ` Andy Yan
2023-11-30 12:25 ` [PATCH v3 13/14] dt-bindings: iommu: rockchip: Add Rockchip RK3588 Andy Yan
2023-11-30 22:46 ` Heiko Stübner
2023-11-30 12:25 ` [PATCH v3 14/14] arm64: dts: rockchip: Add vop on rk3588 Andy Yan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231130122418.13258-1-andyshrk@163.com \
--to=andyshrk@163.com \
--cc=andy.yan@rock-chips.com \
--cc=chris.obbard@collabora.com \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=heiko@sntech.de \
--cc=hjc@rock-chips.com \
--cc=kever.yang@rock-chips.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=robh+dt@kernel.org \
--cc=sebastian.reichel@collabora.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).