On 4/16/20 3:55 PM, Paul Kocialkowski wrote: > Hi, > > On Thu 16 Apr 20, 15:44, Johan Jonker wrote: >> On 4/16/20 3:24 PM, Paul Kocialkowski wrote: >>> Hi, >>> >>> On Thu 16 Apr 20, 15:02, Johan Jonker wrote: >>>> Hi Paul, >>>> >>>> The conversion of rockchip-rga.txt to rockchip-rga.yaml by myself just >>>> has been approved by robh. >>> >>> Huh, I looked around for ongoing related work but missed it. >>> I'll definitely rebase on top of your series and use the yaml description >>> instead. Thanks! >>> >>>> Maybe place dts patches at the end of a patch serie. >>>> Could you include a &rga patch if your device is supported in mainline, >>>> so we can test with: >>>> make ARCH=arm64 dtbs_check >>>> DT_SCHEMA_FILES=Documentation/devicetree/bindings/media/rockchip-rga.yaml >>> >>> I tested with the PX30 EVB so I can surely add a node there if that turns >>> out necessary (see below). >>> >>>> Johan >>>> >>>> On 4/16/20 1:50 PM, Paul Kocialkowski wrote: >>>>> The PX30 features a RGA block: add the necessary node to support it. >>>>> >>>>> Signed-off-by: Paul Kocialkowski <paul.kocialkowski@xxxxxxxxxxx> >>>>> --- >>>>> arch/arm64/boot/dts/rockchip/px30.dtsi | 11 +++++++++++ >>>>> 1 file changed, 11 insertions(+) >>>>> >>>>> diff --git a/arch/arm64/boot/dts/rockchip/px30.dtsi b/arch/arm64/boot/dts/rockchip/px30.dtsi >>>>> index 75908c587511..4bfbee9d4123 100644 >>>>> --- a/arch/arm64/boot/dts/rockchip/px30.dtsi >>>>> +++ b/arch/arm64/boot/dts/rockchip/px30.dtsi >>>>> @@ -1104,6 +1104,17 @@ vopl_mmu: iommu@ff470f00 { >>>>> status = "disabled"; >>>>> }; >>>>> >>>>> + rga: rga@ff480000 { >>>>> + compatible = "rockchip,px30-rga"; >>>>> + reg = <0x0 0xff480000 0x0 0x10000>; >>>>> + interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH 0>; >>>>> + clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>, <&cru SCLK_RGA_CORE>; >>>>> + clock-names = "aclk", "hclk", "sclk"; >>>>> + resets = <&cru SRST_RGA>, <&cru SRST_RGA_A>, <&cru SRST_RGA_H>; >>>>> + reset-names = "core", "axi", "ahb"; >>>>> + power-domains = <&power PX30_PD_VO>; >>>> >>>> status = "disabled"; >>> >>> As of 5.6, the rk3399 has the node enabled by default. Did that change? >> >> 'status' disappeared during review for rk3399 between v2 and v3, but >> doesn't mention the reason. If someone can give more info here? >> >> https://lore.kernel.org/lkml/1500101920-24039-5-git-send-email-jacob-chen@xxxxxxxxxx/ >> >> https://lore.kernel.org/lkml/1501470460-12014-5-git-send-email-jacob-chen@xxxxxxxxxx/ >> >>> >>> Since it's a standalone block that has no I/O dependency, I don't really see >>> the point of disabling it by default. >> >> Vop, hdmi and other video devices are also disabled. >> Follow the rest I think... > > Well, these blocks do have related I/O ports so it makes sense not to enable > them by default because of pinmux, or because there might be no connector > populated/routed. > > For a memory to memory internal block, I don't see any reason why. > It's definitely not board-specific and having to add these nodes for every board > that has them is kind of a pain and might be overlooked. This will easily result > in the feature not being available for end users without having to change the > dt. > > Also, the vpu node is always enabled on rockchip (and sunxi) platforms. > I think these are better examples to follow. >From PX30 TRM-Part1: Power domain is shared by vop and dsi. It's up to the user what blocks he/she enables and what power it uses. PD_VO: VOP_M, VOP_S, RGA and DSI > > Cheers, > > Paul > >>> >>> What do you think? >>> >>> Cheers, >>> >>> Paul >>> >>>>> + }; >>>>> + >>>>> qos_gmac: qos@ff518000 { >>>>> compatible = "syscon"; >>>>> reg = <0x0 0xff518000 0x0 0x20>; >>>>> >>>> >>> >> >