dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH v1 0/2] Add initial support for slimport anx7625
       [not found] ` <8bb69c72-50bf-c499-ff92-9e3662b4fe87@baylibre.com>
@ 2019-09-19 10:48   ` Xin Ji
  0 siblings, 0 replies; 6+ messages in thread
From: Xin Ji @ 2019-09-19 10:48 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: devel@driverdev.osuosl.org, Laurent Pinchart, Andrzej Hajda,
	Jonas Karlman, Jernej Skrabec, David Airlie, Daniel Vetter,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	Sheng Pan

On Thu, Sep 19, 2019 at 08:56:01AM +0200, Neil Armstrong wrote:
> Hi,
> 
> Please Cc dri-devel@lists.freedesktop.org
> 
> Thanks,
> Neil

OK, thanks.
Xin
> 
> On 19/09/2019 08:51, Xin Ji wrote:
> > Hi all,
> > 
> > The following series add initial support for the Slimport ANX7625 transmitter, a
> > ultra-low power Full-HD 4K MIPI to DP transmitter designed for portable device.
> > 
> > This is the first version upload, any mistakes, please let me know, I will fix
> > it in the next series.
> > 
> > Thanks,
> > Xin
> > 
> > 
> > Xin Ji (2):
> >   dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding
> >   drm/bridge: anx7625: Add anx7625 MIPI to DP bridge driver
> > 
> >  .../devicetree/bindings/display/bridge/anx7625.txt |   42 +
> >  drivers/gpu/drm/bridge/Makefile                    |    2 +-
> >  drivers/gpu/drm/bridge/analogix/Kconfig            |    6 +
> >  drivers/gpu/drm/bridge/analogix/Makefile           |    1 +
> >  drivers/gpu/drm/bridge/analogix/anx7625.c          | 2086 ++++++++++++++++++++
> >  drivers/gpu/drm/bridge/analogix/anx7625.h          |  397 ++++
> >  6 files changed, 2533 insertions(+), 1 deletion(-)
> >  create mode 100644 Documentation/devicetree/bindings/display/bridge/anx7625.txt
> >  create mode 100644 drivers/gpu/drm/bridge/analogix/anx7625.c
> >  create mode 100644 drivers/gpu/drm/bridge/analogix/anx7625.h
> > 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v1 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding
       [not found]   ` <446ff66c-8097-fca8-8371-9223679f16bb@baylibre.com>
@ 2019-09-19 10:51     ` Xin Ji
  0 siblings, 0 replies; 6+ messages in thread
From: Xin Ji @ 2019-09-19 10:51 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: devel@driverdev.osuosl.org, Jernej Skrabec, Jonas Karlman,
	David Airlie, linux-kernel@vger.kernel.org,
	dri-devel@lists.freedesktop.org, Andrzej Hajda, Laurent Pinchart,
	Daniel Vetter, Sheng Pan

On Thu, Sep 19, 2019 at 08:57:12AM +0200, Neil Armstrong wrote:
> Hi,
> 
> On 19/09/2019 08:55, Xin Ji wrote:
> > The ANX7625 is an ultra-low power 4K Mobile HD Transmitter designed
> > for portable device. It converts MIPI to DisplayPort 1.3 4K.
> > 
> > You can add support to your board with binding.
> > 
> > Example:
> > 	anx_bridge: anx7625@58 {
> > 		compatible = "analogix,anx7625";
> > 		reg = <0x58>;
> > 		anx,low_power_mode = <1>;
> > 		anx,dsi_supported = <1>;
> > 		anx,dsi_channel = <1>;
> > 		anx,dsi_lanes = <4>;
> > 		anx,internal_pannel = <1>;
> > 		anx,p-on-gpio = <&gpio0 45 GPIO_ACTIVE_LOW>;
> > 		anx,reset-gpio = <&gpio0 73 GPIO_ACTIVE_LOW>;
> > 		status = "okay";
> > 		port {
> > 			anx7625_1_in: endpoint {
> > 				remote-endpoint = <&mipi_dsi_bridge_1>;
> > 			};
> > 		};
> > 	};
> > 
> > Signed-off-by: Xin Ji <xji@analogixsemi.com>
> > ---
> >  .../devicetree/bindings/display/bridge/anx7625.txt | 42 ++++++++++++++++++++++
> >  1 file changed, 42 insertions(+)
> >  create mode 100644 Documentation/devicetree/bindings/display/bridge/anx7625.txt
> > 
> > diff --git a/Documentation/devicetree/bindings/display/bridge/anx7625.txt b/Documentation/devicetree/bindings/display/bridge/anx7625.txt
> > new file mode 100644
> > index 0000000..f2a1c2a
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/display/bridge/anx7625.txt
> > @@ -0,0 +1,42 @@
> > +Analogix ANX7625 SlimPort (4K Mobile HD Transmitter)
> > +-----------------------------------------------
> 
> New bindings should use yaml format:
> https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/example-schema.yaml
> 
> Neil
OK, I'll follow the yaml format in the next version.
Thanks,
Xin
> 
> > +
> > +The ANX7625 is an ultra-low power 4K Mobile HD Transmitter
> > +designed for portable devices.
> > +
> > +Required properties:
> > +
> > + - compatible		: "analogix,anx7625"
> > + - reg			: I2C address of the device
> > + - anx,low_power_mode	: Low power mode support feature
> > + - anx,dsi_supported	: DSI or DPI
> > + - anx,dsi_channel	: DSI channel index
> > + - anx,dsi_lanes	: DSI lane count
> > + - anx,intr-hpd-gpio	: Which GPIO to use for interrupt
> > +
> > +Optional properties:
> > +
> > + - anx,extcon_supported
> > +	external connector interface support flag
> > + - anx,internal_pannel
> > +	Which indicate internal pannel
> > + - anx,p-on-gpio
> > +	Which GPIO to use for Power On chip
> > + - anx,reset-gpio
> > +	Which GPIO to use for RESET
> > + - port
> > +	SoC specific port nodes with endpoint definitions as defined in
> > +	Documentation/devicetree/bindings/media/video-interfaces.txt,
> > +
> > +Example:
> > +
> > +	anx_bridge: anx7625@58 {
> > +		compatible = "analogix,anx7625";
> > +		reg = <0x58>;
> > +		anx,low_power_mode = <0>;
> > +		anx,dsi_supported = <1>;
> > +		anx,dsi_channel = <1>;
> > +		anx,dsi_lanes = <4>;
> > +		anx,intr-hpd-gpio = <&gpio1 19 IRQ_TYPE_LEVEL_LOW>;
> > +		status = "okay";
> > +	};
> > 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v1 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding
  2019-09-20  6:09 [PATCH v1 0/2] Add initial support for slimport anx7625 Xin Ji
@ 2019-09-20  6:05 ` Xin Ji
  2019-09-20  9:46   ` Laurent Pinchart
  0 siblings, 1 reply; 6+ messages in thread
From: Xin Ji @ 2019-09-20  6:05 UTC (permalink / raw)
  To: devel@driverdev.osuosl.org, Laurent Pinchart, Andrzej Hajda
  Cc: Neil Armstrong, Jonas Karlman, Jernej Skrabec, David Airlie,
	Daniel Vetter, linux-kernel@vger.kernel.org,
	dri-devel@lists.freedesktop.org, Sheng Pan

The ANX7625 is an ultra-low power 4K Mobile HD Transmitter designed
for portable device. It converts MIPI to DisplayPort 1.3 4K.

You can add support to your board with binding.

Example:
	anx_bridge: anx7625@58 {
		compatible = "analogix,anx7625";
		reg = <0x58>;
		low-power-mode = <1>;
		dsi-supported = <1>;
		dsi-channel-id = <1>;
		dsi-lanes-num = <4>;
		internal-pannel-supported = <1>;
		pon-gpios = <&gpio0 45 GPIO_ACTIVE_LOW>;
		reset-gpios = <&gpio0 73 GPIO_ACTIVE_LOW>;
		status = "okay";
		port {
			anx7625_1_in: endpoint {
				remote-endpoint = <&mipi_dsi_bridge_1>;
			};
		};
	};

Signed-off-by: Xin Ji <xji@analogixsemi.com>
---
 .../bindings/display/bridge/anx7625.yaml           | 84 ++++++++++++++++++++++
 1 file changed, 84 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/bridge/anx7625.yaml

diff --git a/Documentation/devicetree/bindings/display/bridge/anx7625.yaml b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
new file mode 100644
index 0000000..95fe18b
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
@@ -0,0 +1,84 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+# Copyright 2019 Analogix Semiconductor, Inc.
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/display/bridge/anx7625.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: Analogix ANX7625 SlimPort (4K Mobile HD Transmitter)
+
+maintainers:
+  - Xin Ji <xji@analogixsemi.com>
+
+description: |
+  The ANX7625 is an ultra-low power 4K Mobile HD Transmitter
+  designed for portable devices.
+
+properties:
+  compatible:
+    items:
+      - const: analogix,anx7625
+
+  reg:
+    maxItems: 1
+
+  low-power-gpios:
+    description: Low power mode support feature
+    maxItems: 1
+
+  hpd-gpios:
+    description: used for HPD interrupt
+    maxItems: 1
+
+  pon-gpios:
+    description: used for power on chip control
+    maxItems: 1
+
+  reset-gpios:
+    description: used for reset chip control
+    maxItems: 1
+
+  extcon-supported:
+    description: external connector interface support flag
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+  internal-pannel-supported:
+    description: indicate does internal pannel exist or not
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+  dsi-supported:
+    description: support MIPI DSI or DPI
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+  dsi-channel-id:
+    description: dsi channel index
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+  dsi-lanes-num:
+    description: dsi lanes used num
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+  port@0:
+    type: object
+    description:
+      A port node pointing to MIPI DSI host port node.
+
+required:
+  - compatible
+  - reg
+  - dsi-channel-id
+  - dsi-lanes-num
+  - port@0
+
+example:
+  - |
+    anx_bridge: anx7625@58 {
+        compatible = "analogix,anx7625";
+        reg = <0x58>;
+        low-power-gpios = <0>;
+        dsi-supported = <1>;
+        dsi-channel-id = <1>;
+        dsi-lanes-num = <4>;
+        hpd-gpios = <&gpio1 19 IRQ_TYPE_LEVEL_LOW>;
+        status = "okay";
+    };
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v1 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding
  2019-09-20  6:05 ` [PATCH v1 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding Xin Ji
@ 2019-09-20  9:46   ` Laurent Pinchart
  2019-09-23  3:55     ` Xin Ji
  0 siblings, 1 reply; 6+ messages in thread
From: Laurent Pinchart @ 2019-09-20  9:46 UTC (permalink / raw)
  To: Xin Ji
  Cc: devel@driverdev.osuosl.org, Jernej Skrabec, Jonas Karlman,
	David Airlie, Neil Armstrong, linux-kernel@vger.kernel.org,
	dri-devel@lists.freedesktop.org, Sheng Pan

Hello Xin Ji,

Thank you for the patch.

On Fri, Sep 20, 2019 at 06:05:03AM +0000, Xin Ji wrote:
> The ANX7625 is an ultra-low power 4K Mobile HD Transmitter designed
> for portable device. It converts MIPI to DisplayPort 1.3 4K.

I assume you meant MIPI DSI ? MIPI has released more standards than DSI,
so it doesn't hurt to specify this explicitly.

According to
https://www.analogix.com/en/system/files/AA-002291-PB-6-ANX7625_ProductBrief_0.pdf,
the ANX7625 supports for MIPI DSI and DPI on the input side.
Furthermore, it seems to output DisplayPort on USB Type-C. Should this
be documented ?

> You can add support to your board with binding.
> 
> Example:
> 	anx_bridge: anx7625@58 {
> 		compatible = "analogix,anx7625";
> 		reg = <0x58>;
> 		low-power-mode = <1>;
> 		dsi-supported = <1>;
> 		dsi-channel-id = <1>;
> 		dsi-lanes-num = <4>;
> 		internal-pannel-supported = <1>;
> 		pon-gpios = <&gpio0 45 GPIO_ACTIVE_LOW>;
> 		reset-gpios = <&gpio0 73 GPIO_ACTIVE_LOW>;
> 		status = "okay";
> 		port {
> 			anx7625_1_in: endpoint {
> 				remote-endpoint = <&mipi_dsi_bridge_1>;
> 			};
> 		};
> 	};
> 
> Signed-off-by: Xin Ji <xji@analogixsemi.com>
> ---
>  .../bindings/display/bridge/anx7625.yaml           | 84 ++++++++++++++++++++++
>  1 file changed, 84 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/display/bridge/anx7625.yaml
> 
> diff --git a/Documentation/devicetree/bindings/display/bridge/anx7625.yaml b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
> new file mode 100644
> index 0000000..95fe18b
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
> @@ -0,0 +1,84 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +# Copyright 2019 Analogix Semiconductor, Inc.
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/display/bridge/anx7625.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> +
> +title: Analogix ANX7625 SlimPort (4K Mobile HD Transmitter)
> +
> +maintainers:
> +  - Xin Ji <xji@analogixsemi.com>
> +
> +description: |
> +  The ANX7625 is an ultra-low power 4K Mobile HD Transmitter
> +  designed for portable devices.
> +
> +properties:
> +  compatible:
> +    items:
> +      - const: analogix,anx7625
> +
> +  reg:
> +    maxItems: 1
> +
> +  low-power-gpios:
> +    description: Low power mode support feature
> +    maxItems: 1
> +
> +  hpd-gpios:
> +    description: used for HPD interrupt
> +    maxItems: 1
> +
> +  pon-gpios:
> +    description: used for power on chip control
> +    maxItems: 1
> +
> +  reset-gpios:
> +    description: used for reset chip control
> +    maxItems: 1

How about mentioning which pin of the ANX7625 each GPIO refers to ? For
the low-power, pon and reset GPIOs I assume they directly control the
chip. We have standard names for some GPIOs, such as reset or enable. Is
there one of the low-power and pon GPIOs that would qualify as an enable
signal ?

What is the HPD GPIO for ? Does the chip output and HPD signal ?

> +
> +  extcon-supported:
> +    description: external connector interface support flag
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  internal-pannel-supported:
> +    description: indicate does internal pannel exist or not
> +    $ref: /schemas/types.yaml#/definitions/uint32

s/pannel/panel/

Are those two properties mutually exclusive ? If so you should combine
them in a single required property with two values. My feeling is that
they should be dropped though, please see below.

> +
> +  dsi-supported:
> +    description: support MIPI DSI or DPI
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +  dsi-channel-id:
> +    description: dsi channel index
> +    $ref: /schemas/types.yaml#/definitions/uint32

This does not belong to DT, the virtual channel used by the DSI source
should be queried at runtime by communicating between drivers.

> +
> +  dsi-lanes-num:
> +    description: dsi lanes used num
> +    $ref: /schemas/types.yaml#/definitions/uint32

Please use the standard data-lanes property as defined in
video-interface.txt. It should be specified in the DSI endpoints.

> +
> +  port@0:
> +    type: object
> +    description:
> +      A port node pointing to MIPI DSI host port node.

You need at least 3 ports:

- a DPI input port
- a DSI input port
- an output port

The dsi-supported property should be dropped, detecting the type of
input should be done based on which of the DPI or DSI input port is
connected.

Assuming the ANX7625 can also output DisplayPort directly without going
through USB Type-C (I can't verify that without the datasheet), I think
you should use two output ports, one for USB Type-C and one for
DisplayPort. The extcon-supported and internal-pannel-supported
properties should be removed, and deduced from the connect output port.

> +
> +required:
> +  - compatible
> +  - reg
> +  - dsi-channel-id
> +  - dsi-lanes-num
> +  - port@0
> +
> +example:
> +  - |
> +    anx_bridge: anx7625@58 {
> +        compatible = "analogix,anx7625";
> +        reg = <0x58>;
> +        low-power-gpios = <0>;
> +        dsi-supported = <1>;
> +        dsi-channel-id = <1>;
> +        dsi-lanes-num = <4>;
> +        hpd-gpios = <&gpio1 19 IRQ_TYPE_LEVEL_LOW>;
> +        status = "okay";
> +    };

You mention the port@0 node as being required, but it's missing from the
example.

-- 
Regards,

Laurent Pinchart
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v1 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding
  2019-09-20  9:46   ` Laurent Pinchart
@ 2019-09-23  3:55     ` Xin Ji
  0 siblings, 0 replies; 6+ messages in thread
From: Xin Ji @ 2019-09-23  3:55 UTC (permalink / raw)
  To: Laurent Pinchart
  Cc: devel@driverdev.osuosl.org, Andrzej Hajda, Neil Armstrong,
	Jonas Karlman, Jernej Skrabec, David Airlie, Daniel Vetter,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	Sheng Pan

Hi Laurent Pinchart, thanks for your comment.

On Fri, Sep 20, 2019 at 12:46:21PM +0300, Laurent Pinchart wrote:
> Hello Xin Ji,
> 
> Thank you for the patch.
> 
> On Fri, Sep 20, 2019 at 06:05:03AM +0000, Xin Ji wrote:
> > The ANX7625 is an ultra-low power 4K Mobile HD Transmitter designed
> > for portable device. It converts MIPI to DisplayPort 1.3 4K.
> 
> I assume you meant MIPI DSI ? MIPI has released more standards than DSI,
> so it doesn't hurt to specify this explicitly.
It support DSI and DPI, I will to point out.
> 
> According to
> https://www.analogix.com/en/system/files/AA-002291-PB-6-ANX7625_ProductBrief_0.pdf,
> the ANX7625 supports for MIPI DSI and DPI on the input side.
> Furthermore, it seems to output DisplayPort on USB Type-C. Should this
> be documented ?
It can support both eDP output or USB Type-C output.
> 
> > You can add support to your board with binding.
> > 
> > Example:
> > 	anx_bridge: anx7625@58 {
> > 		compatible = "analogix,anx7625";
> > 		reg = <0x58>;
> > 		low-power-mode = <1>;
> > 		dsi-supported = <1>;
> > 		dsi-channel-id = <1>;
> > 		dsi-lanes-num = <4>;
> > 		internal-pannel-supported = <1>;
> > 		pon-gpios = <&gpio0 45 GPIO_ACTIVE_LOW>;
> > 		reset-gpios = <&gpio0 73 GPIO_ACTIVE_LOW>;
> > 		status = "okay";
> > 		port {
> > 			anx7625_1_in: endpoint {
> > 				remote-endpoint = <&mipi_dsi_bridge_1>;
> > 			};
> > 		};
> > 	};
> > 
> > Signed-off-by: Xin Ji <xji@analogixsemi.com>
> > ---
> >  .../bindings/display/bridge/anx7625.yaml           | 84 ++++++++++++++++++++++
> >  1 file changed, 84 insertions(+)
> >  create mode 100644 Documentation/devicetree/bindings/display/bridge/anx7625.yaml
> > 
> > diff --git a/Documentation/devicetree/bindings/display/bridge/anx7625.yaml b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
> > new file mode 100644
> > index 0000000..95fe18b
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
> > @@ -0,0 +1,84 @@
> > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > +# Copyright 2019 Analogix Semiconductor, Inc.
> > +%YAML 1.2
> > +---
> > +$id: "http://devicetree.org/schemas/display/bridge/anx7625.yaml#"
> > +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> > +
> > +title: Analogix ANX7625 SlimPort (4K Mobile HD Transmitter)
> > +
> > +maintainers:
> > +  - Xin Ji <xji@analogixsemi.com>
> > +
> > +description: |
> > +  The ANX7625 is an ultra-low power 4K Mobile HD Transmitter
> > +  designed for portable devices.
> > +
> > +properties:
> > +  compatible:
> > +    items:
> > +      - const: analogix,anx7625
> > +
> > +  reg:
> > +    maxItems: 1
> > +
> > +  low-power-gpios:
> > +    description: Low power mode support feature
> > +    maxItems: 1
> > +
> > +  hpd-gpios:
> > +    description: used for HPD interrupt
> > +    maxItems: 1
> > +
> > +  pon-gpios:
> > +    description: used for power on chip control
> > +    maxItems: 1
> > +
> > +  reset-gpios:
> > +    description: used for reset chip control
> > +    maxItems: 1
> 
> How about mentioning which pin of the ANX7625 each GPIO refers to ? For
> the low-power, pon and reset GPIOs I assume they directly control the
> chip. We have standard names for some GPIOs, such as reset or enable. Is
> there one of the low-power and pon GPIOs that would qualify as an enable
> signal ?
OK, I think pon-gpios can qualify as an enable.
> 
> What is the HPD GPIO for ? Does the chip output and HPD signal ?
Once the anx7625 received eDP HPD signal, the firmware will report HPD
interrupt to AP through defined gpio interrupt pin "hpd-gpios". It used
for interrupt between anx7625 and AP, not used for output.
> 
> > +
> > +  extcon-supported:
> > +    description: external connector interface support flag
> > +    $ref: /schemas/types.yaml#/definitions/uint32
> > +
> > +  internal-pannel-supported:
> > +    description: indicate does internal pannel exist or not
> > +    $ref: /schemas/types.yaml#/definitions/uint32
> 
> s/pannel/panel/
OK, will fix it.
> 
> Are those two properties mutually exclusive ? If so you should combine
> them in a single required property with two values. My feeling is that
> they should be dropped though, please see below.
Yes, they are mutually exclusive.
There are 3 case, one is support google "external connector" framework,
one support internal panel, the other is support normal eDP output, so I
defined two flags to distinguish them here. Based on your comment below,
I'll define output port to distinguish them.
> 
> > +
> > +  dsi-supported:
> > +    description: support MIPI DSI or DPI
> > +    $ref: /schemas/types.yaml#/definitions/uint32
> > +
> > +  dsi-channel-id:
> > +    description: dsi channel index
> > +    $ref: /schemas/types.yaml#/definitions/uint32
> 
> This does not belong to DT, the virtual channel used by the DSI source
> should be queried at runtime by communicating between drivers.
I didn't know where can quiry this value. Can you give me more detail?
> 
> > +
> > +  dsi-lanes-num:
> > +    description: dsi lanes used num
> > +    $ref: /schemas/types.yaml#/definitions/uint32
> 
> Please use the standard data-lanes property as defined in
> video-interface.txt. It should be specified in the DSI endpoints.
OK, I'll fetch the dsi lanes from DSI endpoints.
> 
> > +
> > +  port@0:
> > +    type: object
> > +    description:
> > +      A port node pointing to MIPI DSI host port node.
> 
> You need at least 3 ports:
> 
> - a DPI input port
I'll add DPI input port.
> - a DSI input port
> - an output port
> 
> The dsi-supported property should be dropped, detecting the type of
> input should be done based on which of the DPI or DSI input port is
> connected.
OK.
> 
> Assuming the ANX7625 can also output DisplayPort directly without going
> through USB Type-C (I can't verify that without the datasheet), I think
> you should use two output ports, one for USB Type-C and one for
> DisplayPort. The extcon-supported and internal-pannel-supported
> properties should be removed, and deduced from the connect output port.
I think there should exist 3 output port, one is for extern connector,
one is for normal eDP, other is for internal panel eDP.
> 
> > +
> > +required:
> > +  - compatible
> > +  - reg
> > +  - dsi-channel-id
> > +  - dsi-lanes-num
> > +  - port@0
> > +
> > +example:
> > +  - |
> > +    anx_bridge: anx7625@58 {
> > +        compatible = "analogix,anx7625";
> > +        reg = <0x58>;
> > +        low-power-gpios = <0>;
> > +        dsi-supported = <1>;
> > +        dsi-channel-id = <1>;
> > +        dsi-lanes-num = <4>;
> > +        hpd-gpios = <&gpio1 19 IRQ_TYPE_LEVEL_LOW>;
> > +        status = "okay";
> > +    };
> 
> You mention the port@0 node as being required, but it's missing from the
> example.
OK, I'll change it in the next series.
> 
> -- 
> Regards,
> 
> Laurent Pinchart

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v1 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding
  2019-09-23  9:06 [PATCH v1 0/2] Add initial support for slimport anx7625 Xin Ji
@ 2019-09-23  9:07 ` Xin Ji
  0 siblings, 0 replies; 6+ messages in thread
From: Xin Ji @ 2019-09-23  9:07 UTC (permalink / raw)
  To: devel@driverdev.osuosl.org, Laurent Pinchart, Andrzej Hajda
  Cc: Jernej Skrabec, Jonas Karlman, David Airlie, Neil Armstrong,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	Sheng Pan, Daniel Vetter

The ANX7625 is an ultra-low power 4K Mobile HD Transmitter designed
for portable device. It converts MIPI to DisplayPort 1.3 4K.

You can add support to your board with binding.

Example:
	anx_bridge: anx7625@58 {
		compatible = "analogix,anx7625";
		reg = <0x58>;
		low-power-mode = <1>;
		enable-gpios = <&gpio0 45 GPIO_ACTIVE_LOW>;
		reset-gpios = <&gpio0 73 GPIO_ACTIVE_LOW>;
		status = "okay";
		port@0 {
			reg = <0>;
			anx7625_1_in: endpoint {
				remote-endpoint = <&mipi_dsi_bridge_1>;
			};
		};
	};

Signed-off-by: Xin Ji <xji@analogixsemi.com>
---
 .../bindings/display/bridge/anx7625.yaml           | 84 ++++++++++++++++++++++
 1 file changed, 84 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/bridge/anx7625.yaml

diff --git a/Documentation/devicetree/bindings/display/bridge/anx7625.yaml b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
new file mode 100644
index 0000000..2991039
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/anx7625.yaml
@@ -0,0 +1,84 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+# Copyright 2019 Analogix Semiconductor, Inc.
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/display/bridge/anx7625.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: Analogix ANX7625 SlimPort (4K Mobile HD Transmitter)
+
+maintainers:
+  - Xin Ji <xji@analogixsemi.com>
+
+description: |
+  The ANX7625 is an ultra-low power 4K Mobile HD Transmitter
+  designed for portable devices.
+
+properties:
+  compatible:
+    items:
+      - const: analogix,anx7625
+
+  reg:
+    maxItems: 1
+
+  low-power-mode:
+    description: Low power mode support feature
+    maxItems: 1
+
+  hpd-gpios:
+    description: used for HPD interrupt
+    maxItems: 1
+
+  enable-gpios:
+    description: used for power on chip control
+    maxItems: 1
+
+  reset-gpios:
+    description: used for reset chip control
+    maxItems: 1
+
+  port@0:
+    type: object
+    description:
+      A port node pointing to MIPI DSI host port node.
+
+  port@1:
+    type: object
+    description:
+      A port node pointing to MIPI DPI host port node.
+
+  port@2:
+    type: object
+    description:
+      A port node pointing to external connector port node.
+
+  port@3:
+    type: object
+    description:
+      A port node pointing to internal panel port node.
+
+  port@4:
+    type: object
+    description:
+      A port node pointing to normal eDP port node.
+
+required:
+  - compatible
+  - reg
+  - port@0 | port@1
+
+example:
+  - |
+    anx_bridge: anx7625@58 {
+        compatible = "analogix,anx7625";
+        reg = <0x58>;
+        low-power-mode = <0>;
+        status = "okay";
+        port@0 {
+          reg = <0>;
+          anx7625_1_in: endpoint {
+            remote-endpoint = <&mipi_dsi_bridge_1>;
+          };
+        };
+    };
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-09-23  9:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <cover.1568858880.git.xji@analogixsemi.com>
     [not found] ` <8bb69c72-50bf-c499-ff92-9e3662b4fe87@baylibre.com>
2019-09-19 10:48   ` [PATCH v1 0/2] Add initial support for slimport anx7625 Xin Ji
     [not found] ` <e41d10504b7d1e977a1f53663c287e4e7d53011a.1568858880.git.xji@analogixsemi.com>
     [not found]   ` <446ff66c-8097-fca8-8371-9223679f16bb@baylibre.com>
2019-09-19 10:51     ` [PATCH v1 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding Xin Ji
2019-09-20  6:09 [PATCH v1 0/2] Add initial support for slimport anx7625 Xin Ji
2019-09-20  6:05 ` [PATCH v1 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding Xin Ji
2019-09-20  9:46   ` Laurent Pinchart
2019-09-23  3:55     ` Xin Ji
  -- strict thread matches above, loose matches on Subject: below --
2019-09-23  9:06 [PATCH v1 0/2] Add initial support for slimport anx7625 Xin Ji
2019-09-23  9:07 ` [PATCH v1 1/2] dt-bindings: drm/bridge: anx7625: MIPI to DP transmitter binding Xin Ji

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox