* [PATCH v2 0/7] Add anx6345 DP/eDP bridge for Olimex Teres-I
@ 2019-07-22 15:04 Torsten Duwe
2019-07-22 18:47 ` Vasily Khoruzhick
2019-07-25 15:18 ` [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding Torsten Duwe
0 siblings, 2 replies; 6+ messages in thread
From: Torsten Duwe @ 2019-07-22 15:04 UTC (permalink / raw)
To: Maxime Ripard, Chen-Yu Tsai, Rob Herring, Mark Rutland,
Thierry Reding, David Airlie, Daniel Vetter, Andrzej Hajda,
Laurent Pinchart, Icenowy Zheng, Sean Paul, Vasily Khoruzhick,
Harald Geyer, Greg Kroah-Hartman, Thomas Gleixner
Cc: dri-devel, devicetree, linux-arm-kernel, linux-kernel, Bcc:duwe
ANX6345 LVTTL->eDP video bridge, driver with device tree bindings.
Changes from v2:
* use SPDX-IDs throughout
* removed the panel output again, as it was not what Maxime had in mind.
At least the Teres-I does very well without. No connector spec, no "quirks"[1],
just plain EDID at work.
* binding clarifications and cosmetic changes as suggested by Andrzej
Changes from v1:
* fixed up copyright information. Most code changes are only moves and thus
retain copyright and module ownership. Even the new analogix-anx6345.c originates
from the old 1495-line analogix-anx78xx.c, with 306 insertions and 987 deletions
(ignoring the trivial anx78xx -> anx6345 replacements) 306 new vs. 508 old...
* fixed all minor formatting issues brought up
* merged previously separate new analogix_dp_i2c module into existing analogix_dp
* split additional defines into a preparatory patch
* renamed the factored-out common functions anx_aux_* -> anx_dp_aux_*, because
anx_...aux_transfer was exported globally. Besides, it is now GPL-only exported.
* moved chip ID read into a separate function.
* keep the chip powered after a successful probe.
(There's a good chance that this is the only display during boot!)
* updated the binding document: LVTTL input is now required, only the output side
description is optional.
Laurent: I have also looked into the drm_panel_bridge infrastructure,
but it's not that trivial to convert these drivers to it.
Changes from the respective previous versions:
* the reset polarity is corrected in DT and the driver;
things should be clearer now.
* as requested, add a panel (the known innolux,n116bge) and connect
the ports.
* renamed dvdd?? to *-supply to match the established scheme
* trivial update to the #include list, to make it compile in 5.2
--------------
[1] I hesitate to associate information about a connected panel with that term.
But should it be neccessary for maximum power saving (e.g. pinebooks),
it would be good to have something here, regardless of nomenclature.
Torsten
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 0/7] Add anx6345 DP/eDP bridge for Olimex Teres-I
2019-07-22 15:04 [PATCH v2 0/7] Add anx6345 DP/eDP bridge for Olimex Teres-I Torsten Duwe
@ 2019-07-22 18:47 ` Vasily Khoruzhick
2019-07-25 15:18 ` [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding Torsten Duwe
1 sibling, 0 replies; 6+ messages in thread
From: Vasily Khoruzhick @ 2019-07-22 18:47 UTC (permalink / raw)
To: Torsten Duwe
Cc: Maxime Ripard, Chen-Yu Tsai, Rob Herring, Mark Rutland,
Thierry Reding, David Airlie, Daniel Vetter, Andrzej Hajda,
Laurent Pinchart, Icenowy Zheng, Sean Paul, Harald Geyer,
Greg Kroah-Hartman, Thomas Gleixner, dri-devel, devicetree,
arm-linux, linux-kernel, Bcc:duwe
On Mon, Jul 22, 2019 at 8:04 AM Torsten Duwe <duwe@lst.de> wrote:
>
> ANX6345 LVTTL->eDP video bridge, driver with device tree bindings.
>
> Changes from v2:
>
> * use SPDX-IDs throughout
>
> * removed the panel output again, as it was not what Maxime had in mind.
> At least the Teres-I does very well without. No connector spec, no "quirks"[1],
> just plain EDID at work.
You still need a panel to put backlight in there. Otherwise backlight
will stay on when display is turned off.
>
> * binding clarifications and cosmetic changes as suggested by Andrzej
>
> Changes from v1:
>
> * fixed up copyright information. Most code changes are only moves and thus
> retain copyright and module ownership. Even the new analogix-anx6345.c originates
> from the old 1495-line analogix-anx78xx.c, with 306 insertions and 987 deletions
> (ignoring the trivial anx78xx -> anx6345 replacements) 306 new vs. 508 old...
>
> * fixed all minor formatting issues brought up
>
> * merged previously separate new analogix_dp_i2c module into existing analogix_dp
>
> * split additional defines into a preparatory patch
>
> * renamed the factored-out common functions anx_aux_* -> anx_dp_aux_*, because
> anx_...aux_transfer was exported globally. Besides, it is now GPL-only exported.
>
> * moved chip ID read into a separate function.
>
> * keep the chip powered after a successful probe.
> (There's a good chance that this is the only display during boot!)
>
> * updated the binding document: LVTTL input is now required, only the output side
> description is optional.
>
> Laurent: I have also looked into the drm_panel_bridge infrastructure,
> but it's not that trivial to convert these drivers to it.
>
> Changes from the respective previous versions:
>
> * the reset polarity is corrected in DT and the driver;
> things should be clearer now.
>
> * as requested, add a panel (the known innolux,n116bge) and connect
> the ports.
>
> * renamed dvdd?? to *-supply to match the established scheme
>
> * trivial update to the #include list, to make it compile in 5.2
>
> --------------
> [1] I hesitate to associate information about a connected panel with that term.
> But should it be neccessary for maximum power saving (e.g. pinebooks),
> it would be good to have something here, regardless of nomenclature.
>
> Torsten
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding
2019-07-22 15:04 [PATCH v2 0/7] Add anx6345 DP/eDP bridge for Olimex Teres-I Torsten Duwe
2019-07-22 18:47 ` Vasily Khoruzhick
@ 2019-07-25 15:18 ` Torsten Duwe
2019-07-26 16:36 ` Maxime Ripard
1 sibling, 1 reply; 6+ messages in thread
From: Torsten Duwe @ 2019-07-25 15:18 UTC (permalink / raw)
To: Maxime Ripard, Chen-Yu Tsai, Rob Herring, Mark Rutland,
Thierry Reding, David Airlie, Daniel Vetter, Andrzej Hajda,
Laurent Pinchart, Icenowy Zheng, Sean Paul, Vasily Khoruzhick,
Harald Geyer, Greg Kroah-Hartman, Thomas Gleixner
Cc: dri-devel, devicetree, linux-arm-kernel, linux-kernel
The anx6345 is an ultra-low power DisplayPort/eDP transmitter designed
for portable devices.
Add a binding document for it.
Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Torsten Duwe <duwe@suse.de>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
.../devicetree/bindings/display/bridge/anx6345.yaml | 90 ++++++++++
1 file changed, 90 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/bridge/anx6345.yaml
diff --git a/Documentation/devicetree/bindings/display/bridge/anx6345.yaml b/Documentation/devicetree/bindings/display/bridge/anx6345.yaml
new file mode 100644
index 000000000000..0af092d101c5
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/anx6345.yaml
@@ -0,0 +1,90 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/bridge/anx6345.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analogix ANX6345 eDP Transmitter Device Tree Bindings
+
+maintainers:
+ - Torsten Duwe <duwe@lst.de>
+
+description: |
+ The ANX6345 is an ultra-low power Full-HD eDP transmitter designed for
+ portable devices.
+
+properties:
+ compatible:
+ const: analogix,anx6345
+
+ reg:
+ maxItems: 1
+ description: I2C address of the device
+
+ reset-gpios:
+ maxItems: 1
+ description: active low GPIO to use for reset
+
+ dvdd12-supply:
+ maxItems: 1
+ description: Regulator for 1.2V digital core power.
+ $ref: /schemas/types.yaml#/definitions/phandle
+
+ dvdd25-supply:
+ maxItems: 1
+ description: Regulator for 2.5V digital core power.
+ $ref: /schemas/types.yaml#/definitions/phandle
+
+ ports:
+ type: object
+ minItems: 1
+ maxItems: 2
+ description: |
+ Video port 0 for LVTTL input,
+ Video port 1 for eDP output (panel or connector)
+ using the DT bindings defined in
+ Documentation/devicetree/bindings/media/video-interfaces.txt
+
+required:
+ - compatible
+ - reg
+ - reset-gpios
+ - dvdd12-supply
+ - dvdd25-supply
+ - ports
+
+examples:
+ - |
+ anx6345: anx6345@38 {
+ compatible = "analogix,anx6345";
+ reg = <0x38>;
+ reset-gpios = <&pio 3 24 GPIO_ACTIVE_LOW>; /* PD24 */
+ dvdd25-supply = <®_dldo2>;
+ dvdd12-supply = <®_fldo1>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ anx6345_in: port@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+ anx6345_in_tcon0: endpoint@0 {
+ reg = <0>;
+ remote-endpoint = <&tcon0_out_anx6345>;
+ };
+ };
+
+ anx6345_out: port@1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <1>;
+
+ anx6345_out_panel: endpoint@0 {
+ reg = <0>;
+ remote-endpoint = <&panel_in_edp>;
+ };
+ };
+ };
+ };
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding
2019-07-25 15:18 ` [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding Torsten Duwe
@ 2019-07-26 16:36 ` Maxime Ripard
2019-07-29 14:22 ` Torsten Duwe
0 siblings, 1 reply; 6+ messages in thread
From: Maxime Ripard @ 2019-07-26 16:36 UTC (permalink / raw)
To: Torsten Duwe
Cc: Chen-Yu Tsai, Rob Herring, Mark Rutland, Thierry Reding,
David Airlie, Daniel Vetter, Andrzej Hajda, Laurent Pinchart,
Icenowy Zheng, Sean Paul, Vasily Khoruzhick, Harald Geyer,
Greg Kroah-Hartman, Thomas Gleixner, dri-devel, devicetree,
linux-arm-kernel, linux-kernel
Hi,
On Thu, Jul 25, 2019 at 05:18:29PM +0200, Torsten Duwe wrote:
> The anx6345 is an ultra-low power DisplayPort/eDP transmitter designed
> for portable devices.
>
> Add a binding document for it.
>
> Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
> Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
> Reviewed-by: Rob Herring <robh@kernel.org>
> Signed-off-by: Torsten Duwe <duwe@suse.de>
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
> .../devicetree/bindings/display/bridge/anx6345.yaml | 90 ++++++++++
> 1 file changed, 90 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/bridge/anx6345.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/bridge/anx6345.yaml b/Documentation/devicetree/bindings/display/bridge/anx6345.yaml
> new file mode 100644
> index 000000000000..0af092d101c5
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/bridge/anx6345.yaml
> @@ -0,0 +1,90 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/bridge/anx6345.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Analogix ANX6345 eDP Transmitter Device Tree Bindings
> +
> +maintainers:
> + - Torsten Duwe <duwe@lst.de>
> +
> +description: |
> + The ANX6345 is an ultra-low power Full-HD eDP transmitter designed for
> + portable devices.
> +
> +properties:
> + compatible:
> + const: analogix,anx6345
> +
> + reg:
> + maxItems: 1
> + description: I2C address of the device
> +
> + reset-gpios:
> + maxItems: 1
> + description: active low GPIO to use for reset
> +
> + dvdd12-supply:
> + maxItems: 1
> + description: Regulator for 1.2V digital core power.
> + $ref: /schemas/types.yaml#/definitions/phandle
> +
> + dvdd25-supply:
> + maxItems: 1
> + description: Regulator for 2.5V digital core power.
> + $ref: /schemas/types.yaml#/definitions/phandle
There's no need to specify the type here, all the properties ending in
-supply are already checked for that type
> + ports:
> + type: object
> + minItems: 1
> + maxItems: 2
> + description: |
> + Video port 0 for LVTTL input,
> + Video port 1 for eDP output (panel or connector)
> + using the DT bindings defined in
> + Documentation/devicetree/bindings/media/video-interfaces.txt
You should probably describe the port@0 and port@1 nodes here as
well. It would allow you to express that the port 0 is mandatory and
the port 1 optional, which got dropped in the conversion.
Maxime
--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding
2019-07-26 16:36 ` Maxime Ripard
@ 2019-07-29 14:22 ` Torsten Duwe
2019-07-29 23:54 ` Rob Herring
0 siblings, 1 reply; 6+ messages in thread
From: Torsten Duwe @ 2019-07-29 14:22 UTC (permalink / raw)
To: Rob Herring, Maxime Ripard
Cc: Chen-Yu Tsai, Mark Rutland, Thierry Reding, David Airlie,
Daniel Vetter, Andrzej Hajda, Laurent Pinchart, Icenowy Zheng,
Sean Paul, Vasily Khoruzhick, Harald Geyer, Greg Kroah-Hartman,
Thomas Gleixner, dri-devel, devicetree, linux-arm-kernel,
linux-kernel
On Fri, Jul 26, 2019 at 06:36:01PM +0200, Maxime Ripard wrote:
> > +
> > + dvdd12-supply:
> > + maxItems: 1
> > + description: Regulator for 1.2V digital core power.
> > + $ref: /schemas/types.yaml#/definitions/phandle
> > +
> > + dvdd25-supply:
> > + maxItems: 1
> > + description: Regulator for 2.5V digital core power.
> > + $ref: /schemas/types.yaml#/definitions/phandle
>
> There's no need to specify the type here, all the properties ending in
> -supply are already checked for that type
Ok, thanks for the hint.
> > + ports:
> > + type: object
> > + minItems: 1
> > + maxItems: 2
> > + description: |
> > + Video port 0 for LVTTL input,
> > + Video port 1 for eDP output (panel or connector)
> > + using the DT bindings defined in
> > + Documentation/devicetree/bindings/media/video-interfaces.txt
>
> You should probably describe the port@0 and port@1 nodes here as
> well. It would allow you to express that the port 0 is mandatory and
> the port 1 optional, which got dropped in the conversion.
I would have liked to, but have not discovered yet a comprehensive source
of information about recommended syntax and semantics of the YAML schemes.
Is there some central reference for these types of issues? I mean not the
"here is a git repo with the meta-schemes" but sort of a cookbook?
Torsten
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding
2019-07-29 14:22 ` Torsten Duwe
@ 2019-07-29 23:54 ` Rob Herring
0 siblings, 0 replies; 6+ messages in thread
From: Rob Herring @ 2019-07-29 23:54 UTC (permalink / raw)
To: Torsten Duwe
Cc: Maxime Ripard, Chen-Yu Tsai, Mark Rutland, Thierry Reding,
David Airlie, Daniel Vetter, Andrzej Hajda, Laurent Pinchart,
Icenowy Zheng, Sean Paul, Vasily Khoruzhick, Harald Geyer,
Greg Kroah-Hartman, Thomas Gleixner, dri-devel, devicetree,
moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE,
linux-kernel
On Mon, Jul 29, 2019 at 8:23 AM Torsten Duwe <duwe@lst.de> wrote:
>
> On Fri, Jul 26, 2019 at 06:36:01PM +0200, Maxime Ripard wrote:
> > > +
> > > + dvdd12-supply:
> > > + maxItems: 1
> > > + description: Regulator for 1.2V digital core power.
> > > + $ref: /schemas/types.yaml#/definitions/phandle
> > > +
> > > + dvdd25-supply:
> > > + maxItems: 1
> > > + description: Regulator for 2.5V digital core power.
> > > + $ref: /schemas/types.yaml#/definitions/phandle
> >
> > There's no need to specify the type here, all the properties ending in
> > -supply are already checked for that type
>
> Ok, thanks for the hint.
>
> > > + ports:
> > > + type: object
> > > + minItems: 1
> > > + maxItems: 2
> > > + description: |
> > > + Video port 0 for LVTTL input,
> > > + Video port 1 for eDP output (panel or connector)
> > > + using the DT bindings defined in
> > > + Documentation/devicetree/bindings/media/video-interfaces.txt
> >
> > You should probably describe the port@0 and port@1 nodes here as
> > well. It would allow you to express that the port 0 is mandatory and
> > the port 1 optional, which got dropped in the conversion.
>
> I would have liked to, but have not discovered yet a comprehensive source
> of information about recommended syntax and semantics of the YAML schemes.
The language is json-schema.
> Is there some central reference for these types of issues? I mean not the
> "here is a git repo with the meta-schemes" but sort of a cookbook?
Documentation/devicetree/writing-schema.md (soon .rst) and
Documentation/devicetree/bindings/example-schema.yaml attempt to do
this. Any feedback on them would be helpful.
For this case specifically, we do need to define a common graph
schema, but haven't yet. You can assume we do and only really need to
capture what Maxime said above.
Rob
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-07-29 23:54 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-22 15:04 [PATCH v2 0/7] Add anx6345 DP/eDP bridge for Olimex Teres-I Torsten Duwe
2019-07-22 18:47 ` Vasily Khoruzhick
2019-07-25 15:18 ` [PATCH v3 6a/7] dt-bindings: Add ANX6345 DP/eDP transmitter binding Torsten Duwe
2019-07-26 16:36 ` Maxime Ripard
2019-07-29 14:22 ` Torsten Duwe
2019-07-29 23:54 ` Rob Herring
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).