Message ID | 20240320173736.2720778-4-linkmauve@linkmauve.fr (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Enable JPEG encoding on rk3588 | expand |
On 20/03/2024 18:37, Emmanuel Gil Peyrot wrote: > The TRM (version 1.0 page 385) lists five VEPU121 cores, but only four > interrupts are listed (on page 24), so I’ve only enabled four of them > for now. > > Signed-off-by: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> > --- > arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 80 +++++++++++++++++++++++ > 1 file changed, 80 insertions(+) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi > index 2a23b4dc36e4..fe77b56ac9a0 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi > +++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi > @@ -2488,6 +2488,86 @@ gpio4: gpio@fec50000 { > }; > }; > > + jpeg_enc0: video-codec@fdba0000 { > + compatible = "rockchip,rk3588-vepu121"; > + reg = <0x0 0xfdba0000 0x0 0x800>; > + interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH 0>; > + clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>; > + clock-names = "aclk", "hclk"; > + iommus = <&jpeg_enc0_mmu>; > + power-domains = <&power RK3588_PD_VDPU>; > + }; > + > + jpeg_enc0_mmu: iommu@fdba0800 { > + compatible = "rockchip,rk3588-iommu"; It does not look like you tested the DTS against bindings. Please run `make dtbs_check W=1` (see Documentation/devicetree/bindings/writing-schema.rst or https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/ for instructions). Best regards, Krzysztof
On Thu, Mar 21, 2024 at 09:15:38AM +0100, Krzysztof Kozlowski wrote: > On 20/03/2024 18:37, Emmanuel Gil Peyrot wrote: > > The TRM (version 1.0 page 385) lists five VEPU121 cores, but only four > > interrupts are listed (on page 24), so I’ve only enabled four of them > > for now. > > > > Signed-off-by: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> > > --- > > arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 80 +++++++++++++++++++++++ > > 1 file changed, 80 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi > > index 2a23b4dc36e4..fe77b56ac9a0 100644 > > --- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi > > +++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi > > @@ -2488,6 +2488,86 @@ gpio4: gpio@fec50000 { > > }; > > }; > > > > + jpeg_enc0: video-codec@fdba0000 { > > + compatible = "rockchip,rk3588-vepu121"; > > + reg = <0x0 0xfdba0000 0x0 0x800>; > > + interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH 0>; > > + clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>; > > + clock-names = "aclk", "hclk"; > > + iommus = <&jpeg_enc0_mmu>; > > + power-domains = <&power RK3588_PD_VDPU>; > > + }; > > + > > + jpeg_enc0_mmu: iommu@fdba0800 { > > + compatible = "rockchip,rk3588-iommu"; > > It does not look like you tested the DTS against bindings. Please run > `make dtbs_check W=1` (see > Documentation/devicetree/bindings/writing-schema.rst or > https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/ > for instructions). Even on master I get an exception about this unresolvable file: referencing.exceptions.Unresolvable: cache-controller.yaml# Yet it seems to be present in only three files, all of them unrelated to the rockchip board I’m interested in (it seems), so I’m not sure what to do about that. The full stack trace is attached. > > Best regards, > Krzysztof >
Hi, On Wed, Mar 27, 2024 at 01:40:15PM +0100, Link Mauve wrote: > On Thu, Mar 21, 2024 at 09:15:38AM +0100, Krzysztof Kozlowski wrote: > > On 20/03/2024 18:37, Emmanuel Gil Peyrot wrote: > > > The TRM (version 1.0 page 385) lists five VEPU121 cores, but only four > > > interrupts are listed (on page 24), so I’ve only enabled four of them > > > for now. > > > > > > Signed-off-by: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> > > > --- > > > arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 80 +++++++++++++++++++++++ > > > 1 file changed, 80 insertions(+) > > > > > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi > > > index 2a23b4dc36e4..fe77b56ac9a0 100644 > > > --- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi > > > +++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi > > > @@ -2488,6 +2488,86 @@ gpio4: gpio@fec50000 { > > > }; > > > }; > > > > > > + jpeg_enc0: video-codec@fdba0000 { > > > + compatible = "rockchip,rk3588-vepu121"; > > > + reg = <0x0 0xfdba0000 0x0 0x800>; > > > + interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH 0>; > > > + clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>; > > > + clock-names = "aclk", "hclk"; > > > + iommus = <&jpeg_enc0_mmu>; > > > + power-domains = <&power RK3588_PD_VDPU>; > > > + }; > > > + > > > + jpeg_enc0_mmu: iommu@fdba0800 { > > > + compatible = "rockchip,rk3588-iommu"; > > > > It does not look like you tested the DTS against bindings. Please run > > `make dtbs_check W=1` (see > > Documentation/devicetree/bindings/writing-schema.rst or > > https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/ > > for instructions). > > Even on master I get an exception about this unresolvable file: > referencing.exceptions.Unresolvable: cache-controller.yaml# > > Yet it seems to be present in only three files, all of them unrelated to > the rockchip board I’m interested in (it seems), so I’m not sure what to > do about that. The trace looked like you tried using dt-schema with jsonschema version 4.18+, which is known broken: https://github.com/devicetree-org/dt-schema/issues/109 Greetings, -- Sebastian
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi index 2a23b4dc36e4..fe77b56ac9a0 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi @@ -2488,6 +2488,86 @@ gpio4: gpio@fec50000 { }; }; + jpeg_enc0: video-codec@fdba0000 { + compatible = "rockchip,rk3588-vepu121"; + reg = <0x0 0xfdba0000 0x0 0x800>; + interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH 0>; + clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>; + clock-names = "aclk", "hclk"; + iommus = <&jpeg_enc0_mmu>; + power-domains = <&power RK3588_PD_VDPU>; + }; + + jpeg_enc0_mmu: iommu@fdba0800 { + compatible = "rockchip,rk3588-iommu"; + reg = <0x0 0xfdba0800 0x0 0x40>; + interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH 0>; + clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>; + clock-names = "aclk", "iface"; + power-domains = <&power RK3588_PD_VDPU>; + #iommu-cells = <0>; + }; + + jpeg_enc1: video-codec@fdba4000 { + compatible = "rockchip,rk3588-vepu121"; + reg = <0x0 0xfdba4000 0x0 0x800>; + interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH 0>; + clocks = <&cru ACLK_JPEG_ENCODER1>, <&cru HCLK_JPEG_ENCODER1>; + clock-names = "aclk", "hclk"; + iommus = <&jpeg_enc1_mmu>; + power-domains = <&power RK3588_PD_VDPU>; + }; + + jpeg_enc1_mmu: iommu@fdba4800 { + compatible = "rockchip,rk3588-iommu"; + reg = <0x0 0xfdba4800 0x0 0x40>; + interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH 0>; + clocks = <&cru ACLK_JPEG_ENCODER1>, <&cru HCLK_JPEG_ENCODER1>; + clock-names = "aclk", "iface"; + power-domains = <&power RK3588_PD_VDPU>; + #iommu-cells = <0>; + }; + + jpeg_enc2: video-codec@fdba8000 { + compatible = "rockchip,rk3588-vepu121"; + reg = <0x0 0xfdba8000 0x0 0x800>; + interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH 0>; + clocks = <&cru ACLK_JPEG_ENCODER2>, <&cru HCLK_JPEG_ENCODER2>; + clock-names = "aclk", "hclk"; + iommus = <&jpeg_enc2_mmu>; + power-domains = <&power RK3588_PD_VDPU>; + }; + + jpeg_enc2_mmu: iommu@fdba8800 { + compatible = "rockchip,rk3588-iommu"; + reg = <0x0 0xfdba8800 0x0 0x40>; + interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH 0>; + clocks = <&cru ACLK_JPEG_ENCODER2>, <&cru HCLK_JPEG_ENCODER2>; + clock-names = "aclk", "iface"; + power-domains = <&power RK3588_PD_VDPU>; + #iommu-cells = <0>; + }; + + jpeg_enc3: video-codec@fdbac000 { + compatible = "rockchip,rk3588-vepu121"; + reg = <0x0 0xfdbac000 0x0 0x800>; + interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH 0>; + clocks = <&cru ACLK_JPEG_ENCODER3>, <&cru HCLK_JPEG_ENCODER3>; + clock-names = "aclk", "hclk"; + iommus = <&jpeg_enc3_mmu>; + power-domains = <&power RK3588_PD_VDPU>; + }; + + jpeg_enc3_mmu: iommu@fdbac800 { + compatible = "rockchip,rk3588-iommu"; + reg = <0x0 0xfdbac800 0x0 0x40>; + interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH 0>; + clocks = <&cru ACLK_JPEG_ENCODER3>, <&cru HCLK_JPEG_ENCODER3>; + clock-names = "aclk", "iface"; + power-domains = <&power RK3588_PD_VDPU>; + #iommu-cells = <0>; + }; + av1d: video-codec@fdc70000 { compatible = "rockchip,rk3588-av1-vpu"; reg = <0x0 0xfdc70000 0x0 0x800>;
The TRM (version 1.0 page 385) lists five VEPU121 cores, but only four interrupts are listed (on page 24), so I’ve only enabled four of them for now. Signed-off-by: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> --- arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 80 +++++++++++++++++++++++ 1 file changed, 80 insertions(+)