linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder
@ 2020-08-25 17:35 Jernej Skrabec
  2020-08-25 17:35 ` [PATCH 1/5] dt-bindings: sram: allwinner,sun4i-a10-system-control: Add R40 compatibles Jernej Skrabec
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Jernej Skrabec @ 2020-08-25 17:35 UTC (permalink / raw)
  To: mripard, wens, paul.kocialkowski
  Cc: mchehab, robh+dt, gregkh, linux-media, devicetree,
	linux-arm-kernel, linux-kernel, devel, linux-sunxi

Allwinner R40 SoC contains video engine very similar to that in A33.

First two patches add system controller nodes and the rest of them
add support for Cedrus VPU.

Please take a look.

Best regards,
Jernej

Jernej Skrabec (5):
  dt-bindings: sram: allwinner,sun4i-a10-system-control: Add R40
    compatibles
  ARM: dts: sun8i: r40: Add node for system controller
  dt-bindings: media: allwinner,sun4i-a10-video-engine: Add R40
    compatible
  media: cedrus: Add support for R40
  ARM: dts: sun8i: r40: Add video engine node

 .../allwinner,sun4i-a10-video-engine.yaml     |  1 +
 .../allwinner,sun4i-a10-system-control.yaml   |  6 ++++
 arch/arm/boot/dts/sun8i-r40.dtsi              | 34 +++++++++++++++++++
 drivers/staging/media/sunxi/cedrus/cedrus.c   |  9 +++++
 4 files changed, 50 insertions(+)

-- 
2.28.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 1/5] dt-bindings: sram: allwinner,sun4i-a10-system-control: Add R40 compatibles
  2020-08-25 17:35 [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Jernej Skrabec
@ 2020-08-25 17:35 ` Jernej Skrabec
  2020-08-25 17:35 ` [PATCH 2/5] ARM: dts: sun8i: r40: Add node for system controller Jernej Skrabec
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: Jernej Skrabec @ 2020-08-25 17:35 UTC (permalink / raw)
  To: mripard, wens, paul.kocialkowski
  Cc: mchehab, robh+dt, gregkh, linux-media, devicetree,
	linux-arm-kernel, linux-kernel, devel, linux-sunxi

Allwinner R40 has system controller similar to that in A10.

Add compatibles for system controller and sram c1 region.

Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
 .../bindings/sram/allwinner,sun4i-a10-system-control.yaml   | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml
index f5825935fd22..6ebcbc153691 100644
--- a/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml
+++ b/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml
@@ -33,6 +33,9 @@ properties:
           - const: allwinner,sun4i-a10-system-control
       - const: allwinner,sun8i-a23-system-control
       - const: allwinner,sun8i-h3-system-control
+      - items:
+          - const: allwinner,sun8i-r40-system-control
+          - const: allwinner,sun4i-a10-system-control
       - const: allwinner,sun50i-a64-sram-controller
         deprecated: true
       - const: allwinner,sun50i-a64-system-control
@@ -86,6 +89,9 @@ patternProperties:
               - items:
                   - const: allwinner,sun8i-h3-sram-c1
                   - const: allwinner,sun4i-a10-sram-c1
+              - items:
+                  - const: allwinner,sun8i-r40-sram-c1
+                  - const: allwinner,sun4i-a10-sram-c1
               - items:
                   - const: allwinner,sun50i-a64-sram-c1
                   - const: allwinner,sun4i-a10-sram-c1
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 2/5] ARM: dts: sun8i: r40: Add node for system controller
  2020-08-25 17:35 [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Jernej Skrabec
  2020-08-25 17:35 ` [PATCH 1/5] dt-bindings: sram: allwinner,sun4i-a10-system-control: Add R40 compatibles Jernej Skrabec
@ 2020-08-25 17:35 ` Jernej Skrabec
  2020-08-25 17:35 ` [PATCH 3/5] dt-bindings: media: allwinner,sun4i-a10-video-engine: Add R40 compatible Jernej Skrabec
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: Jernej Skrabec @ 2020-08-25 17:35 UTC (permalink / raw)
  To: mripard, wens, paul.kocialkowski
  Cc: mchehab, robh+dt, gregkh, linux-media, devicetree,
	linux-arm-kernel, linux-kernel, devel, linux-sunxi

Allwinner R40 has system controller and SRAM C1 region similar to that
in A10.

Add nodes for them.

Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
 arch/arm/boot/dts/sun8i-r40.dtsi | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/arch/arm/boot/dts/sun8i-r40.dtsi b/arch/arm/boot/dts/sun8i-r40.dtsi
index dff9a3dc1fba..0c7526365896 100644
--- a/arch/arm/boot/dts/sun8i-r40.dtsi
+++ b/arch/arm/boot/dts/sun8i-r40.dtsi
@@ -190,6 +190,29 @@ mixer1_out_tcon_top: endpoint {
 			};
 		};
 
+		syscon: system-control@1c00000 {
+			compatible = "allwinner,sun8i-r40-system-control",
+				     "allwinner,sun4i-a10-system-control";
+			reg = <0x01c00000 0x30>;
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges;
+
+			sram_c: sram@1d00000 {
+				compatible = "mmio-sram";
+				reg = <0x01d00000 0xd0000>;
+				#address-cells = <1>;
+				#size-cells = <1>;
+				ranges = <0 0x01d00000 0xd0000>;
+
+				ve_sram: sram-section@0 {
+					compatible = "allwinner,sun8i-r40-sram-c1",
+						     "allwinner,sun4i-a10-sram-c1";
+					reg = <0x000000 0x80000>;
+				};
+			};
+		};
+
 		nmi_intc: interrupt-controller@1c00030 {
 			compatible = "allwinner,sun7i-a20-sc-nmi";
 			interrupt-controller;
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 3/5] dt-bindings: media: allwinner,sun4i-a10-video-engine: Add R40 compatible
  2020-08-25 17:35 [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Jernej Skrabec
  2020-08-25 17:35 ` [PATCH 1/5] dt-bindings: sram: allwinner,sun4i-a10-system-control: Add R40 compatibles Jernej Skrabec
  2020-08-25 17:35 ` [PATCH 2/5] ARM: dts: sun8i: r40: Add node for system controller Jernej Skrabec
@ 2020-08-25 17:35 ` Jernej Skrabec
  2020-08-25 17:35 ` [PATCH 4/5] media: cedrus: Add support for R40 Jernej Skrabec
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: Jernej Skrabec @ 2020-08-25 17:35 UTC (permalink / raw)
  To: mripard, wens, paul.kocialkowski
  Cc: mchehab, robh+dt, gregkh, linux-media, devicetree,
	linux-arm-kernel, linux-kernel, devel, linux-sunxi

Allwinner R40 SoC contains video engine. Add compatible for it.

Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
 .../bindings/media/allwinner,sun4i-a10-video-engine.yaml         | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/media/allwinner,sun4i-a10-video-engine.yaml b/Documentation/devicetree/bindings/media/allwinner,sun4i-a10-video-engine.yaml
index 4cc1a670c986..0d58bbcd24d3 100644
--- a/Documentation/devicetree/bindings/media/allwinner,sun4i-a10-video-engine.yaml
+++ b/Documentation/devicetree/bindings/media/allwinner,sun4i-a10-video-engine.yaml
@@ -18,6 +18,7 @@ properties:
       - allwinner,sun7i-a20-video-engine
       - allwinner,sun8i-a33-video-engine
       - allwinner,sun8i-h3-video-engine
+      - allwinner,sun8i-r40-video-engine
       - allwinner,sun50i-a64-video-engine
       - allwinner,sun50i-h5-video-engine
       - allwinner,sun50i-h6-video-engine
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 4/5] media: cedrus: Add support for R40
  2020-08-25 17:35 [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Jernej Skrabec
                   ` (2 preceding siblings ...)
  2020-08-25 17:35 ` [PATCH 3/5] dt-bindings: media: allwinner,sun4i-a10-video-engine: Add R40 compatible Jernej Skrabec
@ 2020-08-25 17:35 ` Jernej Skrabec
  2020-08-25 17:35 ` [PATCH 5/5] ARM: dts: sun8i: r40: Add video engine node Jernej Skrabec
  2020-08-27 15:19 ` [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Maxime Ripard
  5 siblings, 0 replies; 9+ messages in thread
From: Jernej Skrabec @ 2020-08-25 17:35 UTC (permalink / raw)
  To: mripard, wens, paul.kocialkowski
  Cc: mchehab, robh+dt, gregkh, linux-media, devicetree,
	linux-arm-kernel, linux-kernel, devel, linux-sunxi

Video engine in R40 is very similar to that in A33 but it runs on lower
speed, at least according to OS images released by board designer.

Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
 drivers/staging/media/sunxi/cedrus/cedrus.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/staging/media/sunxi/cedrus/cedrus.c b/drivers/staging/media/sunxi/cedrus/cedrus.c
index bc27f9430eeb..83a654a618be 100644
--- a/drivers/staging/media/sunxi/cedrus/cedrus.c
+++ b/drivers/staging/media/sunxi/cedrus/cedrus.c
@@ -496,6 +496,11 @@ static const struct cedrus_variant sun8i_h3_cedrus_variant = {
 	.mod_rate	= 402000000,
 };
 
+static const struct cedrus_variant sun8i_r40_cedrus_variant = {
+	.capabilities	= CEDRUS_CAPABILITY_UNTILED,
+	.mod_rate	= 297000000,
+};
+
 static const struct cedrus_variant sun50i_a64_cedrus_variant = {
 	.capabilities	= CEDRUS_CAPABILITY_UNTILED |
 			  CEDRUS_CAPABILITY_H265_DEC,
@@ -536,6 +541,10 @@ static const struct of_device_id cedrus_dt_match[] = {
 		.compatible = "allwinner,sun8i-h3-video-engine",
 		.data = &sun8i_h3_cedrus_variant,
 	},
+	{
+		.compatible = "allwinner,sun8i-r40-video-engine",
+		.data = &sun8i_r40_cedrus_variant,
+	},
 	{
 		.compatible = "allwinner,sun50i-a64-video-engine",
 		.data = &sun50i_a64_cedrus_variant,
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 5/5] ARM: dts: sun8i: r40: Add video engine node
  2020-08-25 17:35 [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Jernej Skrabec
                   ` (3 preceding siblings ...)
  2020-08-25 17:35 ` [PATCH 4/5] media: cedrus: Add support for R40 Jernej Skrabec
@ 2020-08-25 17:35 ` Jernej Skrabec
  2020-08-27 15:19 ` [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Maxime Ripard
  5 siblings, 0 replies; 9+ messages in thread
From: Jernej Skrabec @ 2020-08-25 17:35 UTC (permalink / raw)
  To: mripard, wens, paul.kocialkowski
  Cc: mchehab, robh+dt, gregkh, linux-media, devicetree,
	linux-arm-kernel, linux-kernel, devel, linux-sunxi

Allwinner R40 SoC has a video engine.

Add a node for it.

Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
 arch/arm/boot/dts/sun8i-r40.dtsi | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/arch/arm/boot/dts/sun8i-r40.dtsi b/arch/arm/boot/dts/sun8i-r40.dtsi
index 0c7526365896..7907569e7b5c 100644
--- a/arch/arm/boot/dts/sun8i-r40.dtsi
+++ b/arch/arm/boot/dts/sun8i-r40.dtsi
@@ -273,6 +273,17 @@ csi0: csi@1c09000 {
 			status = "disabled";
 		};
 
+		video-codec@1c0e000 {
+			compatible = "allwinner,sun8i-r40-video-engine";
+			reg = <0x01c0e000 0x1000>;
+			clocks = <&ccu CLK_BUS_VE>, <&ccu CLK_VE>,
+			<&ccu CLK_DRAM_VE>;
+			clock-names = "ahb", "mod", "ram";
+			resets = <&ccu RST_BUS_VE>;
+			interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
+			allwinner,sram = <&ve_sram 1>;
+		};
+
 		mmc0: mmc@1c0f000 {
 			compatible = "allwinner,sun8i-r40-mmc",
 				     "allwinner,sun50i-a64-mmc";
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder
  2020-08-25 17:35 [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Jernej Skrabec
                   ` (4 preceding siblings ...)
  2020-08-25 17:35 ` [PATCH 5/5] ARM: dts: sun8i: r40: Add video engine node Jernej Skrabec
@ 2020-08-27 15:19 ` Maxime Ripard
  2020-09-17  8:33   ` Hans Verkuil
  5 siblings, 1 reply; 9+ messages in thread
From: Maxime Ripard @ 2020-08-27 15:19 UTC (permalink / raw)
  To: Jernej Skrabec
  Cc: wens, paul.kocialkowski, mchehab, robh+dt, gregkh, linux-media,
	devicetree, linux-arm-kernel, linux-kernel, devel, linux-sunxi

[-- Attachment #1: Type: text/plain, Size: 312 bytes --]

On Tue, Aug 25, 2020 at 07:35:18PM +0200, Jernej Skrabec wrote:
> Allwinner R40 SoC contains video engine very similar to that in A33.
> 
> First two patches add system controller nodes and the rest of them
> add support for Cedrus VPU.
> 
> Please take a look.

Applied all 5 patches, thanks

Maxime

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder
  2020-08-27 15:19 ` [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Maxime Ripard
@ 2020-09-17  8:33   ` Hans Verkuil
  2020-09-17 16:37     ` Maxime Ripard
  0 siblings, 1 reply; 9+ messages in thread
From: Hans Verkuil @ 2020-09-17  8:33 UTC (permalink / raw)
  To: Maxime Ripard, Jernej Skrabec
  Cc: wens, paul.kocialkowski, mchehab, robh+dt, gregkh, linux-media,
	devicetree, linux-arm-kernel, linux-kernel, devel, linux-sunxi

Hi Maxime,

On 27/08/2020 17:19, Maxime Ripard wrote:
> On Tue, Aug 25, 2020 at 07:35:18PM +0200, Jernej Skrabec wrote:
>> Allwinner R40 SoC contains video engine very similar to that in A33.
>>
>> First two patches add system controller nodes and the rest of them
>> add support for Cedrus VPU.
>>
>> Please take a look.
> 
> Applied all 5 patches, thanks

Just to confirm: you've taken patches 3 and 4 as well? If so, then I can mark them as
done in patchwork.

Regards,

	Hans

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder
  2020-09-17  8:33   ` Hans Verkuil
@ 2020-09-17 16:37     ` Maxime Ripard
  0 siblings, 0 replies; 9+ messages in thread
From: Maxime Ripard @ 2020-09-17 16:37 UTC (permalink / raw)
  To: Hans Verkuil
  Cc: Jernej Skrabec, wens, paul.kocialkowski, mchehab, robh+dt,
	gregkh, linux-media, devicetree, linux-arm-kernel, linux-kernel,
	devel, linux-sunxi

[-- Attachment #1: Type: text/plain, Size: 715 bytes --]

On Thu, Sep 17, 2020 at 10:33:39AM +0200, Hans Verkuil wrote:
> Hi Maxime,
> 
> On 27/08/2020 17:19, Maxime Ripard wrote:
> > On Tue, Aug 25, 2020 at 07:35:18PM +0200, Jernej Skrabec wrote:
> >> Allwinner R40 SoC contains video engine very similar to that in A33.
> >>
> >> First two patches add system controller nodes and the rest of them
> >> add support for Cedrus VPU.
> >>
> >> Please take a look.
> > 
> > Applied all 5 patches, thanks
> 
> Just to confirm: you've taken patches 3 and 4 as well? If so, then I
> can mark them as done in patchwork.

Uh... Yeah, I did, but they were definitely not mine to take... I'm
sorry, I'll drop them and you can merge totally merge them :)

Maxime

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-09-17 16:38 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-25 17:35 [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Jernej Skrabec
2020-08-25 17:35 ` [PATCH 1/5] dt-bindings: sram: allwinner,sun4i-a10-system-control: Add R40 compatibles Jernej Skrabec
2020-08-25 17:35 ` [PATCH 2/5] ARM: dts: sun8i: r40: Add node for system controller Jernej Skrabec
2020-08-25 17:35 ` [PATCH 3/5] dt-bindings: media: allwinner,sun4i-a10-video-engine: Add R40 compatible Jernej Skrabec
2020-08-25 17:35 ` [PATCH 4/5] media: cedrus: Add support for R40 Jernej Skrabec
2020-08-25 17:35 ` [PATCH 5/5] ARM: dts: sun8i: r40: Add video engine node Jernej Skrabec
2020-08-27 15:19 ` [PATCH 0/5] ARM: dts: sun8i: r40: Enable video decoder Maxime Ripard
2020-09-17  8:33   ` Hans Verkuil
2020-09-17 16:37     ` Maxime Ripard

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).