Message ID | 20180622124540.56203-4-icenowy@aosc.io (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
Hi Icenowy, On Fri, Jun 22, 2018 at 10:49 PM Icenowy Zheng <icenowy@aosc.io> wrote: > > As we have all necessary parts to enable the DE2 CCU on the Allwinner > A64 SoC, add the needed device tree nodes, including the DE2 CCU itself > and the DE2 bus. > > The "mixer0-lcd0" simplefb device node is updated to use the DE2 CCU. > > Signed-off-by: Icenowy Zheng <icenowy@aosc.io> > --- > Changes in v2: > - Drop SRAM controller device tree node addition (as it's already added > as part of syscon change.) > - Fix the clock reference in LCD SimpleFB. > > arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 30 +++++++++++++++---- > 1 file changed, 24 insertions(+), 6 deletions(-) > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi > index ff2ddde1e117..318c4ba8ae9f 100644 > --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi > +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi > @@ -58,17 +60,12 @@ > #size-cells = <1>; > ranges; > > -/* > - * The pipeline mixer0-lcd0 depends on clock CLK_MIXER0 from DE2 CCU. > - * However there is no support for this clock on A64 yet, so we depend > - * on the upstream clocks here to keep them (and thus CLK_MIXER0) up. > - */ > simplefb_lcd: framebuffer-lcd { > compatible = "allwinner,simple-framebuffer", > "simple-framebuffer"; > allwinner,pipeline = "mixer0-lcd0"; > clocks = <&ccu CLK_TCON0>, > - <&ccu CLK_DE>, <&ccu CLK_BUS_DE>; > + <&display_clocks CLK_MIXER0>; Doesn't this technically break simplefb if this DT is used with a Linux that doesn't have the display clock driver? Do we care about breaking that use-case? Thanks,
于 2018年6月23日 GMT+08:00 下午10:06:27, Julian Calaby <julian.calaby@gmail.com> 写到: >Hi Icenowy, > >On Fri, Jun 22, 2018 at 10:49 PM Icenowy Zheng <icenowy@aosc.io> wrote: >> >> As we have all necessary parts to enable the DE2 CCU on the Allwinner >> A64 SoC, add the needed device tree nodes, including the DE2 CCU >itself >> and the DE2 bus. >> >> The "mixer0-lcd0" simplefb device node is updated to use the DE2 CCU. >> >> Signed-off-by: Icenowy Zheng <icenowy@aosc.io> >> --- >> Changes in v2: >> - Drop SRAM controller device tree node addition (as it's already >added >> as part of syscon change.) >> - Fix the clock reference in LCD SimpleFB. >> >> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 30 >+++++++++++++++---- >> 1 file changed, 24 insertions(+), 6 deletions(-) >> >> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi >b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi >> index ff2ddde1e117..318c4ba8ae9f 100644 >> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi >> @@ -58,17 +60,12 @@ >> #size-cells = <1>; >> ranges; >> >> -/* >> - * The pipeline mixer0-lcd0 depends on clock CLK_MIXER0 from DE2 >CCU. >> - * However there is no support for this clock on A64 yet, so we >depend >> - * on the upstream clocks here to keep them (and thus CLK_MIXER0) >up. >> - */ >> simplefb_lcd: framebuffer-lcd { >> compatible = "allwinner,simple-framebuffer", >> "simple-framebuffer"; >> allwinner,pipeline = "mixer0-lcd0"; >> clocks = <&ccu CLK_TCON0>, >> - <&ccu CLK_DE>, <&ccu CLK_BUS_DE>; >> + <&display_clocks CLK_MIXER0>; > >Doesn't this technically break simplefb if this DT is used with a >Linux that doesn't have the display clock driver? 1. DT doesn't care forware compatibility. 2. This is a fix for not accurate HW representation. In fact I have sent the DT with simplefb using DE2 CCU before, but when they're pending, someone who just wants the simplefb sent the not temporary version.This must be fixed. > >Do we care about breaking that use-case? > >Thanks, -- To unsubscribe from this list: send the line "unsubscribe linux-clk" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Icenowy, On Sun, Jun 24, 2018 at 12:34 AM Icenowy Zheng <icenowy@aosc.io> wrote: > > > > 于 2018年6月23日 GMT+08:00 下午10:06:27, Julian Calaby <julian.calaby@gmail.com> 写到: > >Hi Icenowy, > > > >On Fri, Jun 22, 2018 at 10:49 PM Icenowy Zheng <icenowy@aosc.io> wrote: > >> > >> As we have all necessary parts to enable the DE2 CCU on the Allwinner > >> A64 SoC, add the needed device tree nodes, including the DE2 CCU > >itself > >> and the DE2 bus. > >> > >> The "mixer0-lcd0" simplefb device node is updated to use the DE2 CCU. > >> > >> Signed-off-by: Icenowy Zheng <icenowy@aosc.io> > >> --- > >> Changes in v2: > >> - Drop SRAM controller device tree node addition (as it's already > >added > >> as part of syscon change.) > >> - Fix the clock reference in LCD SimpleFB. > >> > >> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 30 > >+++++++++++++++---- > >> 1 file changed, 24 insertions(+), 6 deletions(-) > >> > >> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi > >b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi > >> index ff2ddde1e117..318c4ba8ae9f 100644 > >> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi > >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi > >> @@ -58,17 +60,12 @@ > >> #size-cells = <1>; > >> ranges; > >> > >> -/* > >> - * The pipeline mixer0-lcd0 depends on clock CLK_MIXER0 from DE2 > >CCU. > >> - * However there is no support for this clock on A64 yet, so we > >depend > >> - * on the upstream clocks here to keep them (and thus CLK_MIXER0) > >up. > >> - */ > >> simplefb_lcd: framebuffer-lcd { > >> compatible = "allwinner,simple-framebuffer", > >> "simple-framebuffer"; > >> allwinner,pipeline = "mixer0-lcd0"; > >> clocks = <&ccu CLK_TCON0>, > >> - <&ccu CLK_DE>, <&ccu CLK_BUS_DE>; > >> + <&display_clocks CLK_MIXER0>; > > > >Doesn't this technically break simplefb if this DT is used with a > >Linux that doesn't have the display clock driver? > > 1. DT doesn't care forware compatibility. Ah, fair enough, that answers my question. Thanks,
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi index ff2ddde1e117..318c4ba8ae9f 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi @@ -43,9 +43,11 @@ */ #include <dt-bindings/clock/sun50i-a64-ccu.h> +#include <dt-bindings/clock/sun8i-de2.h> #include <dt-bindings/clock/sun8i-r-ccu.h> #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/reset/sun50i-a64-ccu.h> +#include <dt-bindings/reset/sun8i-de2.h> #include <dt-bindings/reset/sun8i-r-ccu.h> / { @@ -58,17 +60,12 @@ #size-cells = <1>; ranges; -/* - * The pipeline mixer0-lcd0 depends on clock CLK_MIXER0 from DE2 CCU. - * However there is no support for this clock on A64 yet, so we depend - * on the upstream clocks here to keep them (and thus CLK_MIXER0) up. - */ simplefb_lcd: framebuffer-lcd { compatible = "allwinner,simple-framebuffer", "simple-framebuffer"; allwinner,pipeline = "mixer0-lcd0"; clocks = <&ccu CLK_TCON0>, - <&ccu CLK_DE>, <&ccu CLK_BUS_DE>; + <&display_clocks CLK_MIXER0>; status = "disabled"; }; }; @@ -169,6 +166,27 @@ #size-cells = <1>; ranges; + de2@1000000 { + compatible = "allwinner,sun50i-a64-de2"; + reg = <0x1000000 0x400000>; + allwinner,sram = <&de2_sram 1>; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0 0x1000000 0x400000>; + + display_clocks: clock@0 { + compatible = "allwinner,sun50i-a64-de2-clk"; + reg = <0x0 0x100000>; + clocks = <&ccu CLK_DE>, + <&ccu CLK_BUS_DE>; + clock-names = "mod", + "bus"; + resets = <&ccu RST_BUS_DE>; + #clock-cells = <1>; + #reset-cells = <1>; + }; + }; + syscon: syscon@1c00000 { compatible = "allwinner,sun50i-a64-system-control"; reg = <0x01c00000 0x1000>;
As we have all necessary parts to enable the DE2 CCU on the Allwinner A64 SoC, add the needed device tree nodes, including the DE2 CCU itself and the DE2 bus. The "mixer0-lcd0" simplefb device node is updated to use the DE2 CCU. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> --- Changes in v2: - Drop SRAM controller device tree node addition (as it's already added as part of syscon change.) - Fix the clock reference in LCD SimpleFB. arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 30 +++++++++++++++---- 1 file changed, 24 insertions(+), 6 deletions(-)