* [PATCH 1/5] dt-bindings: interconnect: sunxi: Add A64 MBUS compatible
2020-01-25 11:03 [PATCH 0/5] arm64: dts: allwinner: a64: Enable deinterlace core Jernej Skrabec
@ 2020-01-25 11:03 ` Jernej Skrabec
2020-02-03 15:49 ` Rob Herring
2020-01-25 11:03 ` [PATCH 2/5] clk: sunxi-ng: a64: Export MBUS clock Jernej Skrabec
` (3 subsequent siblings)
4 siblings, 1 reply; 10+ messages in thread
From: Jernej Skrabec @ 2020-01-25 11:03 UTC (permalink / raw)
To: mripard, wens
Cc: mchehab, robh+dt, mark.rutland, linux-media, devicetree,
linux-arm-kernel, linux-kernel, linux-sunxi
A64 contains MBUS controller. Add a compatible for it.
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
.../devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml b/Documentation/devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml
index 9370e64992dd..aa0738b4d534 100644
--- a/Documentation/devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml
@@ -30,6 +30,7 @@ properties:
enum:
- allwinner,sun5i-a13-mbus
- allwinner,sun8i-h3-mbus
+ - allwinner,sun50i-a64-mbus
reg:
maxItems: 1
--
2.25.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 1/5] dt-bindings: interconnect: sunxi: Add A64 MBUS compatible
2020-01-25 11:03 ` [PATCH 1/5] dt-bindings: interconnect: sunxi: Add A64 MBUS compatible Jernej Skrabec
@ 2020-02-03 15:49 ` Rob Herring
0 siblings, 0 replies; 10+ messages in thread
From: Rob Herring @ 2020-02-03 15:49 UTC (permalink / raw)
To: Jernej Skrabec
Cc: mripard, wens, mchehab, robh+dt, mark.rutland, linux-media,
devicetree, linux-arm-kernel, linux-kernel, linux-sunxi
On Sat, 25 Jan 2020 12:03:49 +0100, Jernej Skrabec wrote:
>
> A64 contains MBUS controller. Add a compatible for it.
>
> Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
> ---
> .../devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml | 1 +
> 1 file changed, 1 insertion(+)
>
Acked-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 2/5] clk: sunxi-ng: a64: Export MBUS clock
2020-01-25 11:03 [PATCH 0/5] arm64: dts: allwinner: a64: Enable deinterlace core Jernej Skrabec
2020-01-25 11:03 ` [PATCH 1/5] dt-bindings: interconnect: sunxi: Add A64 MBUS compatible Jernej Skrabec
@ 2020-01-25 11:03 ` Jernej Skrabec
2020-01-25 11:03 ` [PATCH 3/5] arm64: dts: allwinner: a64: Add MBUS controller node Jernej Skrabec
` (2 subsequent siblings)
4 siblings, 0 replies; 10+ messages in thread
From: Jernej Skrabec @ 2020-01-25 11:03 UTC (permalink / raw)
To: mripard, wens
Cc: mchehab, robh+dt, mark.rutland, linux-media, devicetree,
linux-arm-kernel, linux-kernel, linux-sunxi
MBUS clock will be referenced in MBUS controller node.
Export it.
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
drivers/clk/sunxi-ng/ccu-sun50i-a64.h | 4 ----
include/dt-bindings/clock/sun50i-a64-ccu.h | 2 +-
2 files changed, 1 insertion(+), 5 deletions(-)
diff --git a/drivers/clk/sunxi-ng/ccu-sun50i-a64.h b/drivers/clk/sunxi-ng/ccu-sun50i-a64.h
index 116e6f826d04..54d1f96f4b68 100644
--- a/drivers/clk/sunxi-ng/ccu-sun50i-a64.h
+++ b/drivers/clk/sunxi-ng/ccu-sun50i-a64.h
@@ -55,10 +55,6 @@
/* All the DRAM gates are exported */
-/* Some more module clocks are exported */
-
-#define CLK_MBUS 112
-
/* And the DSI and GPU module clock is exported */
#define CLK_NUMBER (CLK_GPU + 1)
diff --git a/include/dt-bindings/clock/sun50i-a64-ccu.h b/include/dt-bindings/clock/sun50i-a64-ccu.h
index e512a1c9b0fc..318eb15c414c 100644
--- a/include/dt-bindings/clock/sun50i-a64-ccu.h
+++ b/include/dt-bindings/clock/sun50i-a64-ccu.h
@@ -131,7 +131,7 @@
#define CLK_AVS 109
#define CLK_HDMI 110
#define CLK_HDMI_DDC 111
-
+#define CLK_MBUS 112
#define CLK_DSI_DPHY 113
#define CLK_GPU 114
--
2.25.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 3/5] arm64: dts: allwinner: a64: Add MBUS controller node
2020-01-25 11:03 [PATCH 0/5] arm64: dts: allwinner: a64: Enable deinterlace core Jernej Skrabec
2020-01-25 11:03 ` [PATCH 1/5] dt-bindings: interconnect: sunxi: Add A64 MBUS compatible Jernej Skrabec
2020-01-25 11:03 ` [PATCH 2/5] clk: sunxi-ng: a64: Export MBUS clock Jernej Skrabec
@ 2020-01-25 11:03 ` Jernej Skrabec
2020-01-27 14:59 ` Maxime Ripard
2020-01-25 11:03 ` [PATCH 4/5] media: dt-bindings: media: Add Allwinner A64 deinterlace compatible Jernej Skrabec
2020-01-25 11:03 ` [PATCH 5/5] arm64: dts: allwinner: a64: Add deinterlace core node Jernej Skrabec
4 siblings, 1 reply; 10+ messages in thread
From: Jernej Skrabec @ 2020-01-25 11:03 UTC (permalink / raw)
To: mripard, wens
Cc: mchehab, robh+dt, mark.rutland, linux-media, devicetree,
linux-arm-kernel, linux-kernel, linux-sunxi
A64 contains MBUS, which is the bus used by DMA devices to access
system memory.
MBUS controller is responsible for arbitration between channels based
on set priority and can do some other things as well, like report
bandwidth used. It also maps RAM region to different address than CPU.
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
index 862b47dc9dc9..d225ea1f3b87 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
@@ -1061,6 +1061,14 @@ pwm: pwm@1c21400 {
status = "disabled";
};
+ mbus: dram-controller@1c62000 {
+ compatible = "allwinner,sun50i-a64-mbus";
+ reg = <0x01c62000 0x1000>;
+ clocks = <&ccu CLK_MBUS>;
+ dma-ranges = <0x00000000 0x40000000 0xc0000000>;
+ #interconnect-cells = <1>;
+ };
+
csi: csi@1cb0000 {
compatible = "allwinner,sun50i-a64-csi";
reg = <0x01cb0000 0x1000>;
--
2.25.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 3/5] arm64: dts: allwinner: a64: Add MBUS controller node
2020-01-25 11:03 ` [PATCH 3/5] arm64: dts: allwinner: a64: Add MBUS controller node Jernej Skrabec
@ 2020-01-27 14:59 ` Maxime Ripard
2020-01-27 19:05 ` Jernej Škrabec
0 siblings, 1 reply; 10+ messages in thread
From: Maxime Ripard @ 2020-01-27 14:59 UTC (permalink / raw)
To: Jernej Skrabec
Cc: wens, mchehab, robh+dt, mark.rutland, linux-media, devicetree,
linux-arm-kernel, linux-kernel, linux-sunxi
[-- Attachment #1: Type: text/plain, Size: 1348 bytes --]
Hi,
On Sat, Jan 25, 2020 at 12:03:51PM +0100, Jernej Skrabec wrote:
> A64 contains MBUS, which is the bus used by DMA devices to access
> system memory.
>
> MBUS controller is responsible for arbitration between channels based
> on set priority and can do some other things as well, like report
> bandwidth used. It also maps RAM region to different address than CPU.
>
> Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
> ---
> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> index 862b47dc9dc9..d225ea1f3b87 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> @@ -1061,6 +1061,14 @@ pwm: pwm@1c21400 {
> status = "disabled";
> };
>
> + mbus: dram-controller@1c62000 {
> + compatible = "allwinner,sun50i-a64-mbus";
> + reg = <0x01c62000 0x1000>;
> + clocks = <&ccu CLK_MBUS>;
We're merging the clock header patch and the DT through two different
trees, so you can't use it right away. You should use the raw ID here.
(also, as a general remark, it's easier on us to not send the patches
during the rc6 <-> rc1 phase), so if you can resend them as soon as
rc1 is out, that would be great :)
Maxime
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 3/5] arm64: dts: allwinner: a64: Add MBUS controller node
2020-01-27 14:59 ` Maxime Ripard
@ 2020-01-27 19:05 ` Jernej Škrabec
0 siblings, 0 replies; 10+ messages in thread
From: Jernej Škrabec @ 2020-01-27 19:05 UTC (permalink / raw)
To: Maxime Ripard
Cc: wens, mchehab, robh+dt, mark.rutland, linux-media, devicetree,
linux-arm-kernel, linux-kernel, linux-sunxi
Dne ponedeljek, 27. januar 2020 ob 15:59:31 CET je Maxime Ripard napisal(a):
> Hi,
>
> On Sat, Jan 25, 2020 at 12:03:51PM +0100, Jernej Skrabec wrote:
> > A64 contains MBUS, which is the bus used by DMA devices to access
> > system memory.
> >
> > MBUS controller is responsible for arbitration between channels based
> > on set priority and can do some other things as well, like report
> > bandwidth used. It also maps RAM region to different address than CPU.
> >
> > Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
> > ---
> >
> > arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 8 ++++++++
> > 1 file changed, 8 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi index
> > 862b47dc9dc9..d225ea1f3b87 100644
> > --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
> > @@ -1061,6 +1061,14 @@ pwm: pwm@1c21400 {
> >
> > status = "disabled";
> >
> > };
> >
> > + mbus: dram-controller@1c62000 {
> > + compatible = "allwinner,sun50i-a64-mbus";
> > + reg = <0x01c62000 0x1000>;
> > + clocks = <&ccu CLK_MBUS>;
>
> We're merging the clock header patch and the DT through two different
> trees, so you can't use it right away. You should use the raw ID here.
Ok.
>
> (also, as a general remark, it's easier on us to not send the patches
> during the rc6 <-> rc1 phase), so if you can resend them as soon as
> rc1 is out, that would be great :)
Ok, I'll send v2 then.
Best regards,
Jernej
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 4/5] media: dt-bindings: media: Add Allwinner A64 deinterlace compatible
2020-01-25 11:03 [PATCH 0/5] arm64: dts: allwinner: a64: Enable deinterlace core Jernej Skrabec
` (2 preceding siblings ...)
2020-01-25 11:03 ` [PATCH 3/5] arm64: dts: allwinner: a64: Add MBUS controller node Jernej Skrabec
@ 2020-01-25 11:03 ` Jernej Skrabec
2020-02-03 15:50 ` Rob Herring
2020-01-25 11:03 ` [PATCH 5/5] arm64: dts: allwinner: a64: Add deinterlace core node Jernej Skrabec
4 siblings, 1 reply; 10+ messages in thread
From: Jernej Skrabec @ 2020-01-25 11:03 UTC (permalink / raw)
To: mripard, wens
Cc: mchehab, robh+dt, mark.rutland, linux-media, devicetree,
linux-arm-kernel, linux-kernel, linux-sunxi
Allwinner A64 SoC also contains deinterlace core, compatible to H3.
Add compatible string for it.
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
.../bindings/media/allwinner,sun8i-h3-deinterlace.yaml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/media/allwinner,sun8i-h3-deinterlace.yaml b/Documentation/devicetree/bindings/media/allwinner,sun8i-h3-deinterlace.yaml
index 2e40f700e84f..8707df613f6c 100644
--- a/Documentation/devicetree/bindings/media/allwinner,sun8i-h3-deinterlace.yaml
+++ b/Documentation/devicetree/bindings/media/allwinner,sun8i-h3-deinterlace.yaml
@@ -17,7 +17,11 @@ description: |-
properties:
compatible:
- const: allwinner,sun8i-h3-deinterlace
+ oneOf:
+ - const: allwinner,sun8i-h3-deinterlace
+ - items:
+ - const: allwinner,sun50i-a64-deinterlace
+ - const: allwinner,sun8i-h3-deinterlace
reg:
maxItems: 1
--
2.25.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 4/5] media: dt-bindings: media: Add Allwinner A64 deinterlace compatible
2020-01-25 11:03 ` [PATCH 4/5] media: dt-bindings: media: Add Allwinner A64 deinterlace compatible Jernej Skrabec
@ 2020-02-03 15:50 ` Rob Herring
0 siblings, 0 replies; 10+ messages in thread
From: Rob Herring @ 2020-02-03 15:50 UTC (permalink / raw)
To: Jernej Skrabec
Cc: mripard, wens, mchehab, robh+dt, mark.rutland, linux-media,
devicetree, linux-arm-kernel, linux-kernel, linux-sunxi
On Sat, 25 Jan 2020 12:03:52 +0100, Jernej Skrabec wrote:
>
> Allwinner A64 SoC also contains deinterlace core, compatible to H3.
>
> Add compatible string for it.
>
> Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
> ---
> .../bindings/media/allwinner,sun8i-h3-deinterlace.yaml | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
Acked-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 5/5] arm64: dts: allwinner: a64: Add deinterlace core node
2020-01-25 11:03 [PATCH 0/5] arm64: dts: allwinner: a64: Enable deinterlace core Jernej Skrabec
` (3 preceding siblings ...)
2020-01-25 11:03 ` [PATCH 4/5] media: dt-bindings: media: Add Allwinner A64 deinterlace compatible Jernej Skrabec
@ 2020-01-25 11:03 ` Jernej Skrabec
4 siblings, 0 replies; 10+ messages in thread
From: Jernej Skrabec @ 2020-01-25 11:03 UTC (permalink / raw)
To: mripard, wens
Cc: mchehab, robh+dt, mark.rutland, linux-media, devicetree,
linux-arm-kernel, linux-kernel, linux-sunxi
A64 contains deinterlace core, compatible to the one found in H3.
It can be used in combination with VPU unit to decode and process
interlaced videos.
Add a node for it.
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
---
arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
index d225ea1f3b87..ddaf25782f1f 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
@@ -1114,6 +1114,20 @@ dphy: d-phy@1ca1000 {
#phy-cells = <0>;
};
+ deinterlace: deinterlace@1e00000 {
+ compatible = "allwinner,sun50i-a64-deinterlace",
+ "allwinner,sun8i-h3-deinterlace";
+ reg = <0x01e00000 0x20000>;
+ clocks = <&ccu CLK_BUS_DEINTERLACE>,
+ <&ccu CLK_DEINTERLACE>,
+ <&ccu CLK_DRAM_DEINTERLACE>;
+ clock-names = "bus", "mod", "ram";
+ resets = <&ccu RST_BUS_DEINTERLACE>;
+ interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
+ interconnects = <&mbus 9>;
+ interconnect-names = "dma-mem";
+ };
+
hdmi: hdmi@1ee0000 {
compatible = "allwinner,sun50i-a64-dw-hdmi",
"allwinner,sun8i-a83t-dw-hdmi";
--
2.25.0
^ permalink raw reply related [flat|nested] 10+ messages in thread