[v6,1/4] dt-bindings: display: mediatek: update dpi supported chips
diff mbox series

Message ID 20200221112828.55837-2-jitao.shi@mediatek.com
State New
Headers show
Series
  • add mt8183 dpi driver
Related show

Commit Message

Jitao Shi Feb. 21, 2020, 11:28 a.m. UTC
Add decriptions about supported chips, including MT2701 & MT8173 &
mt8183

1. Add more chips support. ex. MT2701 & MT8173 & MT8183
2. Add property "dpi_pin_mode_swap" and "pinctrl-names" gpio mode dpi mode and
   gpio oupput-low to avoid leakage current.
3. Add property "dpi_dual_edge" to config the dpi pin output mode dual edge or
   single edge sample data.

Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>
---
 .../bindings/display/mediatek/mediatek,dpi.txt        | 11 +++++++++++
 1 file changed, 11 insertions(+)

Comments

CK Hu Feb. 24, 2020, 7:50 a.m. UTC | #1
Hi, Jitao:

On Fri, 2020-02-21 at 19:28 +0800, Jitao Shi wrote:
> Add decriptions about supported chips, including MT2701 & MT8173 &
> mt8183
> 
> 1. Add more chips support. ex. MT2701 & MT8173 & MT8183
> 2. Add property "dpi_pin_mode_swap" and "pinctrl-names" gpio mode dpi mode and
>    gpio oupput-low to avoid leakage current.
> 3. Add property "dpi_dual_edge" to config the dpi pin output mode dual edge or
>    single edge sample data.
> 
> Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>
> ---
>  .../bindings/display/mediatek/mediatek,dpi.txt        | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> index b6a7e7397b8b..cd6a1469c8b7 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> @@ -7,6 +7,7 @@ output bus.
>  
>  Required properties:
>  - compatible: "mediatek,<chip>-dpi"
> +  the supported chips are mt2701 , mt8173 and mt8183.
>  - reg: Physical base address and length of the controller's registers
>  - interrupts: The interrupt signal from the function block.
>  - clocks: device clocks
> @@ -16,6 +17,11 @@ Required properties:
>    Documentation/devicetree/bindings/graph.txt. This port should be connected
>    to the input port of an attached HDMI or LVDS encoder chip.
>  
> +Optional properties:
> +- dpi_pin_mode_swap: Swap the pin mode between dpi mode and gpio mode.

When you have both pinctrl-name of "gpiomode" and "dpimode", it imply
that dpi_pin_mode_swap = true, isn't it? If so, I think this property is
redundant.

Regards,
CK

> +- pinctrl-names: Contain "gpiomode" and "dpimode".
> +- dpi_dual_edge: Control the RGB 24bit data on 12 pins or 24 pins.
> +
>  Example:
>  
>  dpi0: dpi@1401d000 {
> @@ -26,6 +32,11 @@ dpi0: dpi@1401d000 {
>  		 <&mmsys CLK_MM_DPI_ENGINE>,
>  		 <&apmixedsys CLK_APMIXED_TVDPLL>;
>  	clock-names = "pixel", "engine", "pll";
> +	dpi_dual_edge;
> +	dpi_pin_mode_swap;
> +	pinctrl-names = "gpiomode", "dpimode";
> +	pinctrl-0 = <&dpi_pin_gpio>;
> +	pinctrl-1 = <&dpi_pin_func>;
>  
>  	port {
>  		dpi0_out: endpoint {
CK Hu Feb. 24, 2020, 8:46 a.m. UTC | #2
Hi, Jitao:

On Fri, 2020-02-21 at 19:28 +0800, Jitao Shi wrote:
> Add decriptions about supported chips, including MT2701 & MT8173 &
> mt8183
> 
> 1. Add more chips support. ex. MT2701 & MT8173 & MT8183
> 2. Add property "dpi_pin_mode_swap" and "pinctrl-names" gpio mode dpi mode and
>    gpio oupput-low to avoid leakage current.
> 3. Add property "dpi_dual_edge" to config the dpi pin output mode dual edge or
>    single edge sample data.
> 
> Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>
> ---
>  .../bindings/display/mediatek/mediatek,dpi.txt        | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> index b6a7e7397b8b..cd6a1469c8b7 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> @@ -7,6 +7,7 @@ output bus.
>  
>  Required properties:
>  - compatible: "mediatek,<chip>-dpi"
> +  the supported chips are mt2701 , mt8173 and mt8183.
>  - reg: Physical base address and length of the controller's registers
>  - interrupts: The interrupt signal from the function block.
>  - clocks: device clocks
> @@ -16,6 +17,11 @@ Required properties:
>    Documentation/devicetree/bindings/graph.txt. This port should be connected
>    to the input port of an attached HDMI or LVDS encoder chip.
>  
> +Optional properties:
> +- dpi_pin_mode_swap: Swap the pin mode between dpi mode and gpio mode.
> +- pinctrl-names: Contain "gpiomode" and "dpimode".
> +- dpi_dual_edge: Control the RGB 24bit data on 12 pins or 24 pins.

I've find that in [1], there are already a property of "pclk-sample"
which like this, but it only have rising (1) or falling (0) status. Does
that property describe the same thing with this property? If they are
the same, I think you should add new state, dual (2), for "pclk-sample".

[1]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/media/video-interfaces.txt?h=v5.6-rc3

Regards,
CK

> +
>  Example:
>  
>  dpi0: dpi@1401d000 {
> @@ -26,6 +32,11 @@ dpi0: dpi@1401d000 {
>  		 <&mmsys CLK_MM_DPI_ENGINE>,
>  		 <&apmixedsys CLK_APMIXED_TVDPLL>;
>  	clock-names = "pixel", "engine", "pll";
> +	dpi_dual_edge;
> +	dpi_pin_mode_swap;
> +	pinctrl-names = "gpiomode", "dpimode";
> +	pinctrl-0 = <&dpi_pin_gpio>;
> +	pinctrl-1 = <&dpi_pin_func>;
>  
>  	port {
>  		dpi0_out: endpoint {
Jitao Shi Feb. 25, 2020, 2 a.m. UTC | #3
On Mon, 2020-02-24 at 15:50 +0800, CK Hu wrote:
> Hi, Jitao:
> 
> On Fri, 2020-02-21 at 19:28 +0800, Jitao Shi wrote:
> > Add decriptions about supported chips, including MT2701 & MT8173 &
> > mt8183
> > 
> > 1. Add more chips support. ex. MT2701 & MT8173 & MT8183
> > 2. Add property "dpi_pin_mode_swap" and "pinctrl-names" gpio mode dpi mode and
> >    gpio oupput-low to avoid leakage current.
> > 3. Add property "dpi_dual_edge" to config the dpi pin output mode dual edge or
> >    single edge sample data.
> > 
> > Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>
> > ---
> >  .../bindings/display/mediatek/mediatek,dpi.txt        | 11 +++++++++++
> >  1 file changed, 11 insertions(+)
> > 
> > diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > index b6a7e7397b8b..cd6a1469c8b7 100644
> > --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > @@ -7,6 +7,7 @@ output bus.
> >  
> >  Required properties:
> >  - compatible: "mediatek,<chip>-dpi"
> > +  the supported chips are mt2701 , mt8173 and mt8183.
> >  - reg: Physical base address and length of the controller's registers
> >  - interrupts: The interrupt signal from the function block.
> >  - clocks: device clocks
> > @@ -16,6 +17,11 @@ Required properties:
> >    Documentation/devicetree/bindings/graph.txt. This port should be connected
> >    to the input port of an attached HDMI or LVDS encoder chip.
> >  
> > +Optional properties:
> > +- dpi_pin_mode_swap: Swap the pin mode between dpi mode and gpio mode.
> 
> When you have both pinctrl-name of "gpiomode" and "dpimode", it imply
> that dpi_pin_mode_swap = true, isn't it? If so, I think this property is
> redundant.
> 
> Regards,
> CK

Yes,I'll fix it next verision.

Best Regards
Jitao

> 
> > +- pinctrl-names: Contain "gpiomode" and "dpimode".
> > +- dpi_dual_edge: Control the RGB 24bit data on 12 pins or 24 pins.
> > +
> >  Example:
> >  
> >  dpi0: dpi@1401d000 {
> > @@ -26,6 +32,11 @@ dpi0: dpi@1401d000 {
> >  		 <&mmsys CLK_MM_DPI_ENGINE>,
> >  		 <&apmixedsys CLK_APMIXED_TVDPLL>;
> >  	clock-names = "pixel", "engine", "pll";
> > +	dpi_dual_edge;
> > +	dpi_pin_mode_swap;
> > +	pinctrl-names = "gpiomode", "dpimode";
> > +	pinctrl-0 = <&dpi_pin_gpio>;
> > +	pinctrl-1 = <&dpi_pin_func>;
> >  
> >  	port {
> >  		dpi0_out: endpoint {
> 
>
Jitao Shi Feb. 25, 2020, 2:05 a.m. UTC | #4
On Mon, 2020-02-24 at 16:46 +0800, CK Hu wrote:
> Hi, Jitao:
> 
> On Fri, 2020-02-21 at 19:28 +0800, Jitao Shi wrote:
> > Add decriptions about supported chips, including MT2701 & MT8173 &
> > mt8183
> > 
> > 1. Add more chips support. ex. MT2701 & MT8173 & MT8183
> > 2. Add property "dpi_pin_mode_swap" and "pinctrl-names" gpio mode dpi mode and
> >    gpio oupput-low to avoid leakage current.
> > 3. Add property "dpi_dual_edge" to config the dpi pin output mode dual edge or
> >    single edge sample data.
> > 
> > Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>
> > ---
> >  .../bindings/display/mediatek/mediatek,dpi.txt        | 11 +++++++++++
> >  1 file changed, 11 insertions(+)
> > 
> > diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > index b6a7e7397b8b..cd6a1469c8b7 100644
> > --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > @@ -7,6 +7,7 @@ output bus.
> >  
> >  Required properties:
> >  - compatible: "mediatek,<chip>-dpi"
> > +  the supported chips are mt2701 , mt8173 and mt8183.
> >  - reg: Physical base address and length of the controller's registers
> >  - interrupts: The interrupt signal from the function block.
> >  - clocks: device clocks
> > @@ -16,6 +17,11 @@ Required properties:
> >    Documentation/devicetree/bindings/graph.txt. This port should be connected
> >    to the input port of an attached HDMI or LVDS encoder chip.
> >  
> > +Optional properties:
> > +- dpi_pin_mode_swap: Swap the pin mode between dpi mode and gpio mode.
> > +- pinctrl-names: Contain "gpiomode" and "dpimode".
> > +- dpi_dual_edge: Control the RGB 24bit data on 12 pins or 24 pins.
> 
> I've find that in [1], there are already a property of "pclk-sample"
> which like this, but it only have rising (1) or falling (0) status. Does
> that property describe the same thing with this property? If they are
> the same, I think you should add new state, dual (2), for "pclk-sample".
> 
> [1]
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/media/video-interfaces.txt?h=v5.6-rc3
> 
> Regards,
> CK
> 

pclk-sample has two properties  rising or falling.
It means to sample on rising or falling edge.

But, dpi_dual_edge means to sample on both rising and falling edge.

Best Regards
Jitao
> > +
> >  Example:
> >  
> >  dpi0: dpi@1401d000 {
> > @@ -26,6 +32,11 @@ dpi0: dpi@1401d000 {
> >  		 <&mmsys CLK_MM_DPI_ENGINE>,
> >  		 <&apmixedsys CLK_APMIXED_TVDPLL>;
> >  	clock-names = "pixel", "engine", "pll";
> > +	dpi_dual_edge;
> > +	dpi_pin_mode_swap;
> > +	pinctrl-names = "gpiomode", "dpimode";
> > +	pinctrl-0 = <&dpi_pin_gpio>;
> > +	pinctrl-1 = <&dpi_pin_func>;
> >  
> >  	port {
> >  		dpi0_out: endpoint {
> 
>
CK Hu Feb. 25, 2020, 2:13 a.m. UTC | #5
Hi, Jitao:

On Tue, 2020-02-25 at 10:05 +0800, Jitao Shi wrote:
> On Mon, 2020-02-24 at 16:46 +0800, CK Hu wrote:
> > Hi, Jitao:
> > 
> > On Fri, 2020-02-21 at 19:28 +0800, Jitao Shi wrote:
> > > Add decriptions about supported chips, including MT2701 & MT8173 &
> > > mt8183
> > > 
> > > 1. Add more chips support. ex. MT2701 & MT8173 & MT8183
> > > 2. Add property "dpi_pin_mode_swap" and "pinctrl-names" gpio mode dpi mode and
> > >    gpio oupput-low to avoid leakage current.
> > > 3. Add property "dpi_dual_edge" to config the dpi pin output mode dual edge or
> > >    single edge sample data.
> > > 
> > > Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>
> > > ---
> > >  .../bindings/display/mediatek/mediatek,dpi.txt        | 11 +++++++++++
> > >  1 file changed, 11 insertions(+)
> > > 
> > > diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > > index b6a7e7397b8b..cd6a1469c8b7 100644
> > > --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > > +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > > @@ -7,6 +7,7 @@ output bus.
> > >  
> > >  Required properties:
> > >  - compatible: "mediatek,<chip>-dpi"
> > > +  the supported chips are mt2701 , mt8173 and mt8183.
> > >  - reg: Physical base address and length of the controller's registers
> > >  - interrupts: The interrupt signal from the function block.
> > >  - clocks: device clocks
> > > @@ -16,6 +17,11 @@ Required properties:
> > >    Documentation/devicetree/bindings/graph.txt. This port should be connected
> > >    to the input port of an attached HDMI or LVDS encoder chip.
> > >  
> > > +Optional properties:
> > > +- dpi_pin_mode_swap: Swap the pin mode between dpi mode and gpio mode.
> > > +- pinctrl-names: Contain "gpiomode" and "dpimode".
> > > +- dpi_dual_edge: Control the RGB 24bit data on 12 pins or 24 pins.
> > 
> > I've find that in [1], there are already a property of "pclk-sample"
> > which like this, but it only have rising (1) or falling (0) status. Does
> > that property describe the same thing with this property? If they are
> > the same, I think you should add new state, dual (2), for "pclk-sample".
> > 
> > [1]
> > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/media/video-interfaces.txt?h=v5.6-rc3
> > 
> > Regards,
> > CK
> > 
> 
> pclk-sample has two properties  rising or falling.
> It means to sample on rising or falling edge.
> 
> But, dpi_dual_edge means to sample on both rising and falling edge.
> 

It seems that both describe "When to sample data", so they are the same
for me.

I think we should prevent to invent a new property if there is already a
one. Even though pclk-sample just have two state (rising or falling
edge), I think we could add a new state (dual edge) to pclk-sample. 

Regards,
CK

> Best Regards
> Jitao
> > > +
> > >  Example:
> > >  
> > >  dpi0: dpi@1401d000 {
> > > @@ -26,6 +32,11 @@ dpi0: dpi@1401d000 {
> > >  		 <&mmsys CLK_MM_DPI_ENGINE>,
> > >  		 <&apmixedsys CLK_APMIXED_TVDPLL>;
> > >  	clock-names = "pixel", "engine", "pll";
> > > +	dpi_dual_edge;
> > > +	dpi_pin_mode_swap;
> > > +	pinctrl-names = "gpiomode", "dpimode";
> > > +	pinctrl-0 = <&dpi_pin_gpio>;
> > > +	pinctrl-1 = <&dpi_pin_func>;
> > >  
> > >  	port {
> > >  		dpi0_out: endpoint {
> > 
> > 
> 
>
Jitao Shi Feb. 25, 2020, 2:32 a.m. UTC | #6
On Tue, 2020-02-25 at 10:13 +0800, CK Hu wrote:
> Hi, Jitao:
> 
> On Tue, 2020-02-25 at 10:05 +0800, Jitao Shi wrote:
> > On Mon, 2020-02-24 at 16:46 +0800, CK Hu wrote:
> > > Hi, Jitao:
> > > 
> > > On Fri, 2020-02-21 at 19:28 +0800, Jitao Shi wrote:
> > > > Add decriptions about supported chips, including MT2701 & MT8173 &
> > > > mt8183
> > > > 
> > > > 1. Add more chips support. ex. MT2701 & MT8173 & MT8183
> > > > 2. Add property "dpi_pin_mode_swap" and "pinctrl-names" gpio mode dpi mode and
> > > >    gpio oupput-low to avoid leakage current.
> > > > 3. Add property "dpi_dual_edge" to config the dpi pin output mode dual edge or
> > > >    single edge sample data.
> > > > 
> > > > Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>
> > > > ---
> > > >  .../bindings/display/mediatek/mediatek,dpi.txt        | 11 +++++++++++
> > > >  1 file changed, 11 insertions(+)
> > > > 
> > > > diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > > > index b6a7e7397b8b..cd6a1469c8b7 100644
> > > > --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > > > +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
> > > > @@ -7,6 +7,7 @@ output bus.
> > > >  
> > > >  Required properties:
> > > >  - compatible: "mediatek,<chip>-dpi"
> > > > +  the supported chips are mt2701 , mt8173 and mt8183.
> > > >  - reg: Physical base address and length of the controller's registers
> > > >  - interrupts: The interrupt signal from the function block.
> > > >  - clocks: device clocks
> > > > @@ -16,6 +17,11 @@ Required properties:
> > > >    Documentation/devicetree/bindings/graph.txt. This port should be connected
> > > >    to the input port of an attached HDMI or LVDS encoder chip.
> > > >  
> > > > +Optional properties:
> > > > +- dpi_pin_mode_swap: Swap the pin mode between dpi mode and gpio mode.
> > > > +- pinctrl-names: Contain "gpiomode" and "dpimode".
> > > > +- dpi_dual_edge: Control the RGB 24bit data on 12 pins or 24 pins.
> > > 
> > > I've find that in [1], there are already a property of "pclk-sample"
> > > which like this, but it only have rising (1) or falling (0) status. Does
> > > that property describe the same thing with this property? If they are
> > > the same, I think you should add new state, dual (2), for "pclk-sample".
> > > 
> > > [1]
> > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/media/video-interfaces.txt?h=v5.6-rc3
> > > 
> > > Regards,
> > > CK
> > > 
> > 
> > pclk-sample has two properties  rising or falling.
> > It means to sample on rising or falling edge.
> > 
> > But, dpi_dual_edge means to sample on both rising and falling edge.
> > 
> 
> It seems that both describe "When to sample data", so they are the same
> for me.
> 
> I think we should prevent to invent a new property if there is already a
> one. Even though pclk-sample just have two state (rising or falling
> edge), I think we could add a new state (dual edge) to pclk-sample. 
> 
> Regards,
> CK

Got it.
I'll fix them next verison.

Best Regards
Jitao
> 
> > Best Regards
> > Jitao
> > > > +
> > > >  Example:
> > > >  
> > > >  dpi0: dpi@1401d000 {
> > > > @@ -26,6 +32,11 @@ dpi0: dpi@1401d000 {
> > > >  		 <&mmsys CLK_MM_DPI_ENGINE>,
> > > >  		 <&apmixedsys CLK_APMIXED_TVDPLL>;
> > > >  	clock-names = "pixel", "engine", "pll";
> > > > +	dpi_dual_edge;
> > > > +	dpi_pin_mode_swap;
> > > > +	pinctrl-names = "gpiomode", "dpimode";
> > > > +	pinctrl-0 = <&dpi_pin_gpio>;
> > > > +	pinctrl-1 = <&dpi_pin_func>;
> > > >  
> > > >  	port {
> > > >  		dpi0_out: endpoint {
> > > 
> > > 
> > 
> > 
> 
>

Patch
diff mbox series

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
index b6a7e7397b8b..cd6a1469c8b7 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt
@@ -7,6 +7,7 @@  output bus.
 
 Required properties:
 - compatible: "mediatek,<chip>-dpi"
+  the supported chips are mt2701 , mt8173 and mt8183.
 - reg: Physical base address and length of the controller's registers
 - interrupts: The interrupt signal from the function block.
 - clocks: device clocks
@@ -16,6 +17,11 @@  Required properties:
   Documentation/devicetree/bindings/graph.txt. This port should be connected
   to the input port of an attached HDMI or LVDS encoder chip.
 
+Optional properties:
+- dpi_pin_mode_swap: Swap the pin mode between dpi mode and gpio mode.
+- pinctrl-names: Contain "gpiomode" and "dpimode".
+- dpi_dual_edge: Control the RGB 24bit data on 12 pins or 24 pins.
+
 Example:
 
 dpi0: dpi@1401d000 {
@@ -26,6 +32,11 @@  dpi0: dpi@1401d000 {
 		 <&mmsys CLK_MM_DPI_ENGINE>,
 		 <&apmixedsys CLK_APMIXED_TVDPLL>;
 	clock-names = "pixel", "engine", "pll";
+	dpi_dual_edge;
+	dpi_pin_mode_swap;
+	pinctrl-names = "gpiomode", "dpimode";
+	pinctrl-0 = <&dpi_pin_gpio>;
+	pinctrl-1 = <&dpi_pin_func>;
 
 	port {
 		dpi0_out: endpoint {