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 <[email protected]>
---
.../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.
+
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 {
--
2.21.0
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 <[email protected]>
> ---
> .../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 {
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 <[email protected]>
> ---
> .../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 {
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 <[email protected]>
> > ---
> > .../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 {
>
>
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 <[email protected]>
> > ---
> > .../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 {
>
>
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 <[email protected]>
> > > ---
> > > .../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 {
> >
> >
>
>
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 <[email protected]>
> > > > ---
> > > > .../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 {
> > >
> > >
> >
> >
>
>