From patchwork Wed Mar 18 07:07:27 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Enric Balletbo i Serra X-Patchwork-Id: 1257212 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=devicetree-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=collabora.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48j1MJ5ZKwz9sPk for ; Wed, 18 Mar 2020 18:07:40 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726553AbgCRHHj (ORCPT ); Wed, 18 Mar 2020 03:07:39 -0400 Received: from bhuna.collabora.co.uk ([46.235.227.227]:40236 "EHLO bhuna.collabora.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726473AbgCRHHj (ORCPT ); Wed, 18 Mar 2020 03:07:39 -0400 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: eballetbo) with ESMTPSA id 0C0FD292457 From: Enric Balletbo i Serra To: linux-kernel@vger.kernel.org Cc: Collabora Kernel ML , Andrzej Hajda , icenowy@aosc.io, anarsoul@gmail.com, Neil Armstrong , matthias.bgg@gmail.com, drinkcat@chromium.org, hsinyi@chromium.org, megous@megous.com, Lee Jones , Mark Rutland , Rob Herring , devicetree@vger.kernel.org Subject: [PATCH v4 1/4] dt-bindings: Add binding for the Analogix ANX7688 chip Date: Wed, 18 Mar 2020 08:07:27 +0100 Message-Id: <20200318070730.4012371-1-enric.balletbo@collabora.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org The ANX7688 chip is a Type-C Port Controller, HDMI to DP converter and USB-C mux between USB 3.0 lanes and the DP output. For our use case a big part of the chip, like power supplies, control gpios and the usb-c part is managed by an Embedded Controller, hence, this is its simplest form of the binding. We'd prefer introduce these properties for someone with a different use case so they can test on their hardware. Signed-off-by: Enric Balletbo i Serra --- Changes in v4: None Changes in v3: - Add binding for ANX7688 multi-function device. Changes in v2: None .../bindings/mfd/analogix,anx7688.yaml | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/analogix,anx7688.yaml diff --git a/Documentation/devicetree/bindings/mfd/analogix,anx7688.yaml b/Documentation/devicetree/bindings/mfd/analogix,anx7688.yaml new file mode 100644 index 000000000000..bb95a4e87188 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/analogix,anx7688.yaml @@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/analogix,anx7688.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Analogix ANX7688 HDMI to USB Type-C Bridge (Port Controller with MUX) + +maintainers: + - Nicolas Boichat + - Enric Balletbo i Serra + +description: | + ANX7688 converts HDMI 2.0 to DisplayPort 1.3 Ultra-HDi (4096x2160p60) + including an intelligent crosspoint switch to support USB Type-C (USB-C). + The integrated crosspoint switch supports USB 3.1 data transfer along with + the DisplayPort Alternate Mode signaling over USB Type-C. Additionally, + an on-chip microcontroller (OCM) is available to manage the signal switching, + Channel Configuration (CC) detection, USB Power Delivery (USB-PD), Vendor + Defined Message (VDM) protocol support and other functions as defined in the + USB TypeC and USB Power Delivery specifications. + + As a result, a multi-function device is exposed as parent of the video + bridge, TCPC and MUX blocks. + +properties: + compatible: + const: analogix,anx7688 + + reg: + maxItems: 1 + description: I2C address of the device + +required: + - compatible + - reg + +examples: + - | + i2c0 { + #address-cells = <1>; + #size-cells = <0>; + + anx7688: anx7688@2c { + compatible = "analogix,anx7688"; + reg = <0x2c>; + }; + }; From patchwork Wed Mar 18 07:07:29 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Enric Balletbo i Serra X-Patchwork-Id: 1257213 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=devicetree-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=collabora.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48j1MW5wmGz9sRN for ; Wed, 18 Mar 2020 18:07:51 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726473AbgCRHHr (ORCPT ); Wed, 18 Mar 2020 03:07:47 -0400 Received: from bhuna.collabora.co.uk ([46.235.227.227]:40278 "EHLO bhuna.collabora.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726452AbgCRHHl (ORCPT ); Wed, 18 Mar 2020 03:07:41 -0400 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: eballetbo) with ESMTPSA id 3FA6A2928C5 From: Enric Balletbo i Serra To: linux-kernel@vger.kernel.org Cc: Collabora Kernel ML , Andrzej Hajda , icenowy@aosc.io, anarsoul@gmail.com, Neil Armstrong , matthias.bgg@gmail.com, drinkcat@chromium.org, hsinyi@chromium.org, megous@megous.com, Daniel Vetter , David Airlie , Mark Rutland , Rob Herring , devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org Subject: [PATCH v4 3/4] dt-bindings: Add ANX7688 HDMI to DP bridge binding Date: Wed, 18 Mar 2020 08:07:29 +0100 Message-Id: <20200318070730.4012371-3-enric.balletbo@collabora.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200318070730.4012371-1-enric.balletbo@collabora.com> References: <20200318070730.4012371-1-enric.balletbo@collabora.com> MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org From: Nicolas Boichat Add documentation for DT properties supported by the ANX7688 HDMI-DP converter. Signed-off-by: Nicolas Boichat Signed-off-by: Hsin-Yi Wang Signed-off-by: Enric Balletbo i Serra --- Changes in v4: None Changes in v3: - Adapt the bridge bindings for the multi-function device. Changes in v2: - Improve a bit the descriptions using the info from the datasheet. - Convert binding to yaml. - Use dual licensing. .../bridge/analogix,anx7688-bridge.yaml | 80 +++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/bridge/analogix,anx7688-bridge.yaml diff --git a/Documentation/devicetree/bindings/display/bridge/analogix,anx7688-bridge.yaml b/Documentation/devicetree/bindings/display/bridge/analogix,anx7688-bridge.yaml new file mode 100644 index 000000000000..c56da3f39dd8 --- /dev/null +++ b/Documentation/devicetree/bindings/display/bridge/analogix,anx7688-bridge.yaml @@ -0,0 +1,80 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/bridge/analogix,anx7688-bridge.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Analogix ANX7688 HDMI to DisplayPort Bridge + +maintainers: + - Nicolas Boichat + - Enric Balletbo i Serra + +description: | + The ANX7688 bridge describes the HDMI 2.0 to DisplayPort 1.3 bridge block + included in the ANX7688 chip controller. These are meant to be used for + controlling display-related signals. + + The node of this device should be under an analogix,anx7866 node. Please refer + to Documentation/devicetree/bindings/mfd/analogix,anx7688.yaml for the ANX7688 + core bindings. + +properties: + compatible: + const: analogix,anx7688-bridge + + ports: + type: object + + properties: + port@0: + type: object + description: | + Video port for HDMI input + + port@1: + type: object + description: | + Video port for DP output + + required: + - port@0 + +required: + - compatible + - ports + +examples: + - | + i2c0 { + #address-cells = <1>; + #size-cells = <0>; + + anx7688: anx7688@2c { + compatible = "analogix,anx7688"; + reg = <0x2c>; + + bridge { + compatible = "analogix,anx7688-bridge"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + anx7688_in: endpoint { + remote-endpoint = <&hdmi0_out>; + }; + }; + + port@1 { + reg = <1>; + anx7688_out: endpoint { + remote-endpoint = <&typec0_connector>; + }; + }; + }; + }; + }; + };