2018-06-26 07:18:08

by Sandy Huang

[permalink] [raw]
Subject: [PATCH v4 1/2] devicetree/bindings: display: Add document for rockchip RGB output

This path add support rv1108 and px30 rgb output interface driver.

Signed-off-by: Sandy Huang <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
---

Changes in v4: Add support px30
Changes in v3: None
Changes in v2: None

.../bindings/display/rockchip/rockchip-rgb.txt | 73 ++++++++++++++++++++++
1 file changed, 73 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt

diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
new file mode 100644
index 0000000..077b9ad
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
@@ -0,0 +1,73 @@
+Rockchip RV1108 RGB interface
+================================
+
+Required properties:
+- compatible: matching the soc type:
+ - "rockchip,px30-rgb";
+ - "rockchip,rv1108-rgb";
+
+Optional properties:
+- pinctrl-names: should be a "lcdc" entry or a "default" entry.
+- pinctrl-0: pin control group to be used for this interface.
+
+The rgb has two video ports described by:
+ Documentation/devicetree/bindings/media/video-interfaces.txt
+Their connections are modeled using the OF graph bindings specified in
+ Documentation/devicetree/bindings/graph.txt.
+
+- video port 0 for the VOP input, the remote endpoint maybe vopb/vopl/vop
+- video port 1 for either a panel or subsequent encoder
+
+the panel described by:
+ Documentation/devicetree/bindings/display/panel/simple-panel.txt
+rgb-mode nodes described by:
+ Documentation/devicetree/bindings/display/panel/panel-rgb.txt
+Panel other required properties:
+- ports for remote rgb output.
+
+Example:
+
+panel: panel {
+ compatible = "auo,b101ean01";
+ enable-gpios = <&gpio7 21 GPIO_ACTIVE_HIGH>;
+ rgb-mode = "p888";
+
+ ports {
+ panel_in_rgb: endpoint {
+ remote-endpoint = <&rgb_out_panel>;
+ };
+ };
+};
+
+For Rockchip RV1108:
+
+ rgb: rgb {
+ compatible = "rockchip,rv1108-rgb";
+ pinctrl-names = "lcdc";
+ pinctrl-0 = <&lcdc_ctl>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rgb_in: port@0 {
+ reg = <0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rgb_in_vop: endpoint {
+ remote-endpoint = <&vop_out_rgb>;
+ };
+ };
+
+ rgb_out: port@1 {
+ reg = <1>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rgb_out_panel: endpoint {
+ remote-endpoint = <&panel_in_rgb>;
+ };
+ };
+ };
+ };
--
2.7.4




2018-07-03 18:26:55

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v4 1/2] devicetree/bindings: display: Add document for rockchip RGB output

On Tue, Jun 26, 2018 at 03:15:39PM +0800, Sandy Huang wrote:
> This path add support rv1108 and px30 rgb output interface driver.

Bindings are for h/w, not drivers.

>
> Signed-off-by: Sandy Huang <[email protected]>
> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
> ---
>
> Changes in v4: Add support px30
> Changes in v3: None
> Changes in v2: None
>
> .../bindings/display/rockchip/rockchip-rgb.txt | 73 ++++++++++++++++++++++
> 1 file changed, 73 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
>
> diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
> new file mode 100644
> index 0000000..077b9ad
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
> @@ -0,0 +1,73 @@
> +Rockchip RV1108 RGB interface
> +================================
> +
> +Required properties:
> +- compatible: matching the soc type:
> + - "rockchip,px30-rgb";
> + - "rockchip,rv1108-rgb";

This doesn't look right? What (and how) is getting programmed here
because you don't have any register interface.

> +
> +Optional properties:
> +- pinctrl-names: should be a "lcdc" entry or a "default" entry.
> +- pinctrl-0: pin control group to be used for this interface.
> +
> +The rgb has two video ports described by:
> + Documentation/devicetree/bindings/media/video-interfaces.txt
> +Their connections are modeled using the OF graph bindings specified in
> + Documentation/devicetree/bindings/graph.txt.
> +
> +- video port 0 for the VOP input, the remote endpoint maybe vopb/vopl/vop

So there is a mux for these inputs and they are switched with pinctrl?

Just put the pinctrl nodes of the sources and enable whichever one is
active.

Rob

2018-07-04 12:12:34

by Sandy Huang

[permalink] [raw]
Subject: Re: [PATCH v4 1/2] devicetree/bindings: display: Add document for rockchip RGB output

Hi Rob Herring,
Thanks for your review.

?? 2018/7/4 2:25, Rob Herring д??:
> On Tue, Jun 26, 2018 at 03:15:39PM +0800, Sandy Huang wrote:
>> This path add support rv1108 and px30 rgb output interface driver.
>
> Bindings are for h/w, not drivers.
>
I will update at next version as following:
This patch add support rv1108 and px30 rgb output interface
>>
>> Signed-off-by: Sandy Huang <[email protected]>
>> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
>> ---
>>
>> Changes in v4: Add support px30
>> Changes in v3: None
>> Changes in v2: None
>>
>> .../bindings/display/rockchip/rockchip-rgb.txt | 73 ++++++++++++++++++++++
>> 1 file changed, 73 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
>>
>> diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
>> new file mode 100644
>> index 0000000..077b9ad
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
>> @@ -0,0 +1,73 @@
>> +Rockchip RV1108 RGB interface
>> +================================
>> +
>> +Required properties:
>> +- compatible: matching the soc type:
>> + - "rockchip,px30-rgb";
>> + - "rockchip,rv1108-rgb";
>
> This doesn't look right? What (and how) is getting programmed here
> because you don't have any register interface.
>
This is register for DRM encoder and connecter or bridge for some RGB
convert chips driver.
so far we don't have any register for rgb interface, but it's most
probable need to config some register for rgb interface in feauture for
rockchip platform.

>> +
>> +Optional properties:
>> +- pinctrl-names: should be a "lcdc" entry or a "default" entry.
>> +- pinctrl-0: pin control group to be used for this interface.
>> +
>> +The rgb has two video ports described by:
>> + Documentation/devicetree/bindings/media/video-interfaces.txt
>> +Their connections are modeled using the OF graph bindings specified in
>> + Documentation/devicetree/bindings/graph.txt.
>> +
>> +- video port 0 for the VOP input, the remote endpoint maybe vopb/vopl/vop
>
> So there is a mux for these inputs and they are switched with pinctrl?
>
connetced can connect to vopb/vopl/vop which is same with other
connenter like edp/dsi/lvds, there is a sample for edp
at:Documentation/devicetree/bindings/display/rockchip/rockchip-vop.txt
> Just put the pinctrl nodes of the sources and enable whichever one is
> active.
>
Do you think i need add pinctrl nodes here? Or am I wrong?
> Rob
>
>
>


2018-08-27 07:13:15

by Heiko Stübner

[permalink] [raw]
Subject: Re: [PATCH v4 1/2] devicetree/bindings: display: Add document for rockchip RGB output

Hi Sandy,

trying to move this forward a bit :-)

Am Mittwoch, 4. Juli 2018, 14:09:56 CEST schrieb Sandy Huang:
> Hi Rob Herring,
> Thanks for your review.
>
> 在 2018/7/4 2:25, Rob Herring 写道:
> > On Tue, Jun 26, 2018 at 03:15:39PM +0800, Sandy Huang wrote:
> >> This path add support rv1108 and px30 rgb output interface driver.
> >
> > Bindings are for h/w, not drivers.
> >
> I will update at next version as following:
> This patch add support rv1108 and px30 rgb output interface
> >>
> >> Signed-off-by: Sandy Huang <[email protected]>
> >> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
> >> ---
> >>
> >> Changes in v4: Add support px30
> >> Changes in v3: None
> >> Changes in v2: None
> >>
> >> .../bindings/display/rockchip/rockchip-rgb.txt | 73 ++++++++++++++++++++++
> >> 1 file changed, 73 insertions(+)
> >> create mode 100644 Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
> >>
> >> diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
> >> new file mode 100644
> >> index 0000000..077b9ad
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
> >> @@ -0,0 +1,73 @@
> >> +Rockchip RV1108 RGB interface
> >> +================================
> >> +
> >> +Required properties:
> >> +- compatible: matching the soc type:
> >> + - "rockchip,px30-rgb";
> >> + - "rockchip,rv1108-rgb";
> >
> > This doesn't look right? What (and how) is getting programmed here
> > because you don't have any register interface.
> >
> This is register for DRM encoder and connecter or bridge for some RGB
> convert chips driver.
> so far we don't have any register for rgb interface, but it's most
> probable need to config some register for rgb interface in feauture for
> rockchip platform.

I think the basic-issue Rob was pointing out is that the devicetree
describes hardware blocks and not the software representation.

And the rgb output is not a separate block, but instead just a property
of the vop itself, hence should possibly not have a separate "device".

As I'm currently tinkering with rk3188 display support [0] - which only has
rgb output at all - I modified your patch a bit to to showcase how that
could look [1], where the soc vop struct simply has a feature flag
indicating indicating a raw rgb output and the rgb driver then
looks for bridges in the vop endpoints to distinguish them from
soc-internals output encoders.

Let me know what you think :-)
Heiko

[0] https://github.com/mmind/linux-rockchip/commits/wip/rk3188-lcdc
[1] https://github.com/mmind/linux-rockchip/commit/fe74d2c4d76bcb6035b7207753e6afb85335b6cd
needs also https://github.com/mmind/linux-rockchip/commit/c5a48c772f3564211dcd1ec71004de1d6dbb0307




2018-08-28 08:16:44

by Sandy Huang

[permalink] [raw]
Subject: Re: [PATCH v4 1/2] devicetree/bindings: display: Add document for rockchip RGB output


在 2018/8/27 15:11, Heiko Stuebner 写道:
> Hi Sandy,
>
> trying to move this forward a bit :-)
Hi heiko,
     update at version5 and add SPDX-License-Identifier tag.
>
> Am Mittwoch, 4. Juli 2018, 14:09:56 CEST schrieb Sandy Huang:
> > Hi Rob Herring,
> > Thanks for your review.
> >
> > 在 2018/7/4 2:25, Rob Herring 写道:
> >> On Tue, Jun 26, 2018 at 03:15:39PM +0800, Sandy Huang wrote:
> >>> This path add support rv1108 and px30 rgb output interface driver.
> >>
> >> Bindings are for h/w, not drivers.
> >>
> > I will update at next version as following:
> > This patch add support rv1108 and px30 rgb output interface
> >>>
> >>> Signed-off-by: Sandy Huang <[email protected]>
> >>> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
> >>> ---
> >>>
> >>> Changes in v4: Add support px30
> >>> Changes in v3: None
> >>> Changes in v2: None
> >>>
> >>> .../bindings/display/rockchip/rockchip-rgb.txt     | 73 ++++++++++++++++++++++
> >>>    1 file changed, 73 insertions(+)
> >>>    create mode 100644 Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
> >>>
> >>> diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
> >>> new file mode 100644
> >>> index 0000000..077b9ad
> >>> --- /dev/null
> >>> +++ b/Documentation/devicetree/bindings/display/rockchip/rockchip-rgb.txt
> >>> @@ -0,0 +1,73 @@
> >>> +Rockchip RV1108 RGB interface
> >>> +================================
> >>> +
> >>> +Required properties:
> >>> +- compatible: matching the soc type:
> >>> +    - "rockchip,px30-rgb";
> >>> +    - "rockchip,rv1108-rgb";
> >>
> >> This doesn't look right? What (and how) is getting programmed here
> >> because you don't have any register interface.
> >>
> > This is register for DRM encoder and connecter or bridge for some RGB
> > convert chips driver.
> > so far we don't have any register for rgb interface, but it's most
> > probable need to config some register for rgb interface in feauture for
> > rockchip platform.
>
> I think the basic-issue Rob was pointing out is that the devicetree
> describes hardware blocks and not the software representation.
>
> And the rgb output is not a separate block, but instead just a property
> of the vop itself, hence should possibly not have a separate "device".
>
> As I'm currently tinkering with rk3188 display support [0] - which only has
> rgb output at all - I modified your patch a bit to to showcase how that
> could look [1], where the soc vop struct simply has a feature flag
> indicating indicating a raw rgb output and the rgb driver then
> looks for bridges in the vop endpoints to distinguish them from
> soc-internals output encoders.
>
> Let me know what you think :-)
> Heiko
>
> [0] https://github.com/mmind/linux-rockchip/commits/wip/rk3188-lcdc
> [1] https://github.com/mmind/linux-rockchip/commit/fe74d2c4d76bcb6035b7207753e6afb85335b6cd
> needs also https://github.com/mmind/linux-rockchip/commit/c5a48c772f3564211dcd1ec71004de1d6dbb0307
>
>
>
>
>
>