Message ID | 20170211174405.28395-3-plaes@plaes.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, On Sat, Feb 11, 2017 at 07:43:59PM +0200, Priit Laes wrote: > Added basic display pipeline consisting of tcon, display backend and > frontend blocks. > > Signed-off-by: Priit Laes <plaes@plaes.org> > --- > arch/arm/boot/dts/sun4i-a10.dtsi | 104 +++++++++++++++++++++++++++++++++++++++ > 1 file changed, 104 insertions(+) > > diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi > index ba20b48..70991c9 100644 > --- a/arch/arm/boot/dts/sun4i-a10.dtsi > +++ b/arch/arm/boot/dts/sun4i-a10.dtsi > @@ -779,6 +779,45 @@ > #size-cells = <0>; > }; > > + tcon0: lcd-controller@1c0c000 { > + compatible = "allwinner,sun5i-a13-tcon"; There's a few bits here and there that need to be setup differently in A10, so you cannot reuse that compatible (same thing for the other). Also, I'd really like to have all the blocks listed here, and not only the first pipeline. Ideally, on the A10, the two pipelines should be enabled too. Maxime
On Mon, Feb 13, 2017 at 5:16 PM, Maxime Ripard <maxime.ripard@free-electrons.com> wrote: > Hi, > > On Sat, Feb 11, 2017 at 07:43:59PM +0200, Priit Laes wrote: >> Added basic display pipeline consisting of tcon, display backend and >> frontend blocks. >> >> Signed-off-by: Priit Laes <plaes@plaes.org> >> --- >> arch/arm/boot/dts/sun4i-a10.dtsi | 104 +++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 104 insertions(+) >> >> diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi >> index ba20b48..70991c9 100644 >> --- a/arch/arm/boot/dts/sun4i-a10.dtsi >> +++ b/arch/arm/boot/dts/sun4i-a10.dtsi >> @@ -779,6 +779,45 @@ >> #size-cells = <0>; >> }; >> >> + tcon0: lcd-controller@1c0c000 { >> + compatible = "allwinner,sun5i-a13-tcon"; > > There's a few bits here and there that need to be setup differently in > A10, so you cannot reuse that compatible (same thing for the other). > > Also, I'd really like to have all the blocks listed here, and not only > the first pipeline. Ideally, on the A10, the two pipelines should be > enabled too. The display pipeline driver has to be fixed before that can happen though. And I haven't started to work on what I proposed yet. Though if someone wants to take over I can forward any design plans I have. ChenYu > > Maxime > > -- > Maxime Ripard, Free Electrons > Embedded Linux and Kernel engineering > http://free-electrons.com
On Mon, 2017-02-13 at 17:20 +0800, Chen-Yu Tsai wrote: > On Mon, Feb 13, 2017 at 5:16 PM, Maxime Ripard > <maxime.ripard@free-electrons.com> wrote: > > Hi, > > > > On Sat, Feb 11, 2017 at 07:43:59PM +0200, Priit Laes wrote: > > > Added basic display pipeline consisting of tcon, display backend > > > and > > > frontend blocks. > > > > > > Signed-off-by: Priit Laes <plaes@plaes.org> > > > --- > > > arch/arm/boot/dts/sun4i-a10.dtsi | 104 > > > +++++++++++++++++++++++++++++++++++++++ > > > 1 file changed, 104 insertions(+) > > > > > > diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi > > > b/arch/arm/boot/dts/sun4i-a10.dtsi > > > index ba20b48..70991c9 100644 > > > --- a/arch/arm/boot/dts/sun4i-a10.dtsi > > > +++ b/arch/arm/boot/dts/sun4i-a10.dtsi > > > @@ -779,6 +779,45 @@ > > > #size-cells = <0>; > > > }; > > > > > > + tcon0: lcd-controller@1c0c000 { > > > + compatible = "allwinner,sun5i-a13-tcon"; > > > > There's a few bits here and there that need to be setup differently > > in > > A10, so you cannot reuse that compatible (same thing for the > > other). > > > > Also, I'd really like to have all the blocks listed here, and not > > only > > the first pipeline. Ideally, on the A10, the two pipelines should > > be > > enabled too. > > The display pipeline driver has to be fixed before that can happen > though. And I haven't started to work on what I proposed yet. Though > if someone wants to take over I can forward any design plans I have. Well, my plan was to get at least minimum bits mainlined and then build additional features on top. Wens, it would be cool though, if you could share your plans. Unfortunately I have only single A10 device (with LVDS and mini-HDMI) but I don't actually have other LVDS-displays I could easily use with A20 devices (I have CubieTruck and A20-Olinuxino Micro). Päikest, Priit :)
Hi, On Mon, Feb 13, 2017 at 06:46:45PM +0200, Priit Laes wrote: > On Mon, 2017-02-13 at 17:20 +0800, Chen-Yu Tsai wrote: > > On Mon, Feb 13, 2017 at 5:16 PM, Maxime Ripard > > <maxime.ripard@free-electrons.com> wrote: > > > Hi, > > > > > > On Sat, Feb 11, 2017 at 07:43:59PM +0200, Priit Laes wrote: > > > > Added basic display pipeline consisting of tcon, display backend > > > > and > > > > frontend blocks. > > > > > > > > Signed-off-by: Priit Laes <plaes@plaes.org> > > > > --- > > > > arch/arm/boot/dts/sun4i-a10.dtsi | 104 > > > > +++++++++++++++++++++++++++++++++++++++ > > > > 1 file changed, 104 insertions(+) > > > > > > > > diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi > > > > b/arch/arm/boot/dts/sun4i-a10.dtsi > > > > index ba20b48..70991c9 100644 > > > > --- a/arch/arm/boot/dts/sun4i-a10.dtsi > > > > +++ b/arch/arm/boot/dts/sun4i-a10.dtsi > > > > @@ -779,6 +779,45 @@ > > > > #size-cells = <0>; > > > > }; > > > > > > > > + tcon0: lcd-controller@1c0c000 { > > > > + compatible = "allwinner,sun5i-a13-tcon"; > > > > > > There's a few bits here and there that need to be setup differently > > > in > > > A10, so you cannot reuse that compatible (same thing for the > > > other). > > > > > > Also, I'd really like to have all the blocks listed here, and not > > > only > > > the first pipeline. Ideally, on the A10, the two pipelines should > > > be > > > enabled too. > > > > The display pipeline driver has to be fixed before that can happen > > though. And I haven't started to work on what I proposed yet. Though > > if someone wants to take over I can forward any design plans I have. > > Well, my plan was to get at least minimum bits mainlined and then build > additional features on top. I understand that, but now that we have the DT stability to maintain, I want to make sure that everything is correctly represented from day one, with code that works. Otherwise, we might or might not be able to fix things properly later down the road (or at the expense of ugly hacks). Maxime
diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi index ba20b48..70991c9 100644 --- a/arch/arm/boot/dts/sun4i-a10.dtsi +++ b/arch/arm/boot/dts/sun4i-a10.dtsi @@ -779,6 +779,45 @@ #size-cells = <0>; }; + tcon0: lcd-controller@1c0c000 { + compatible = "allwinner,sun5i-a13-tcon"; + reg = <0x01c0c000 0x1000>; + interrupts = <44>; + resets = <&tcon0_ch0_clk 1>; + reset-names = "lcd"; + clocks = <&ahb_gates 36>, + <&tcon0_ch0_clk>, + <&tcon0_ch1_clk>; + clock-names = "ahb", + "tcon-ch0", + "tcon-ch1"; + clock-output-names = "tcon-pixel-clock"; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + tcon0_in: port@0 { + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + + tcon0_in_be0: endpoint@0 { + reg = <0>; + remote-endpoint = <&be0_out_tcon0>; + }; + }; + + tcon0_out: port@1 { + #address-cells = <1>; + #size-cells = <0>; + reg = <1>; + }; + }; + }; + + mmc0: mmc@01c0f000 { compatible = "allwinner,sun4i-a10-mmc"; reg = <0x01c0f000 0x1000>; @@ -1328,5 +1367,70 @@ clocks = <&apb1_gates 7>; status = "disabled"; }; + + fe0: display-frontend@1e00000 { + compatible = "allwinner,sun5i-a13-display-frontend"; + reg = <0x01e00000 0x20000>; + interrupts = <47>; + clocks = <&ahb_gates 46>, <&de_fe0_clk>, + <&dram_gates 25>; + clock-names = "ahb", "mod", + "ram"; + resets = <&de_fe0_clk>; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + fe0_out: port@1 { + #address-cells = <1>; + #size-cells = <0>; + reg = <1>; + + fe0_out_be0: endpoint { + remote-endpoint = <&be0_in_fe0>; + }; + }; + }; + }; + + be0: display-backend@1e60000 { + compatible = "allwinner,sun5i-a13-display-backend"; + reg = <0x01e60000 0x10000>; + clocks = <&ahb_gates 44>, <&de_be0_clk>, + <&dram_gates 26>; + clock-names = "ahb", "mod", + "ram"; + resets = <&de_be0_clk>; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + be0_in: port@0 { + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + + be0_in_fe0: endpoint@0 { + reg = <0>; + remote-endpoint = <&fe0_out_be0>; + }; + }; + + be0_out: port@1 { + #address-cells = <1>; + #size-cells = <0>; + reg = <1>; + + be0_out_tcon0: endpoint@0 { + reg = <0>; + remote-endpoint = <&tcon0_in_be0>; + }; + }; + }; + }; }; };
Added basic display pipeline consisting of tcon, display backend and frontend blocks. Signed-off-by: Priit Laes <plaes@plaes.org> --- arch/arm/boot/dts/sun4i-a10.dtsi | 104 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+)