From patchwork Wed Sep 1 12:23:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mauro Carvalho Chehab X-Patchwork-Id: 505210 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-24.4 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D5B3BC43216 for ; Wed, 1 Sep 2021 12:23:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id C43A56102A for ; Wed, 1 Sep 2021 12:23:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244050AbhIAMYm (ORCPT ); Wed, 1 Sep 2021 08:24:42 -0400 Received: from mail.kernel.org ([198.145.29.99]:55120 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244025AbhIAMYk (ORCPT ); Wed, 1 Sep 2021 08:24:40 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 2173E61027; Wed, 1 Sep 2021 12:23:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1630499024; bh=N9lbTjJlj0yx4DKnB+275T4Sv/VPSnubH8M17RH0TBM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=IXklHO7Uy4sUYDeL0f/Z8MfUkr8vHf8n6mVhWD4dGBhQLAJpO7AMZWF7QtuhtJ3EJ I0XZAxIhiFuqU3tQrfGKvGvO6Ek8t0FOgixYq0MkL/ebp365Wi3gCLhlrONY/g1PWE aW2+m6nF/v/rEBIt/lJZ5Khq8d8NT//LUbqgdHy+TIfIPuRlYwQjACHW7CUWtZlKmn ksd8GijHVJOItEqf1NFHGKWDyB3lf+xTqGQXPdvvr/iHwO+dp8NPPnUn9t47A4cQYA sJj+FaZzbDsNIYZWdFAyHU9lr/8eaJt/WUlghxWZjrFBw6al056W1dmUlMNjY4fpzD kLL/HqTv7UG1A== Received: by mail.kernel.org with local (Exim 4.94.2) (envelope-from ) id 1mLPHJ-00H8Z1-3L; Wed, 01 Sep 2021 14:23:41 +0200 From: Mauro Carvalho Chehab To: Rob Herring , John Stultz Cc: linuxarm@huawei.com, mauro.chehab@huawei.com, Yu Chen , Rob Herring , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Mauro Carvalho Chehab Subject: [PATCH v2 1/3] dt-bindings: misc: add schema for USB hub on Kirin devices Date: Wed, 1 Sep 2021 14:23:37 +0200 Message-Id: X-Mailer: git-send-email 2.31.1 In-Reply-To: References: MIME-Version: 1.0 Sender: Mauro Carvalho Chehab Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org From: Yu Chen This patch adds binding documentation to support USB HUB and USB data role switch of HiSilicon HiKey960 and HiKey970 boards. [mchehab: updated OF schema and added HiKey970 example] Signed-off-by: Yu Chen Signed-off-by: John Stultz Signed-off-by: Mauro Carvalho Chehab --- .../bindings/misc/hisilicon,hikey-usb.yaml | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 Documentation/devicetree/bindings/misc/hisilicon,hikey-usb.yaml diff --git a/Documentation/devicetree/bindings/misc/hisilicon,hikey-usb.yaml b/Documentation/devicetree/bindings/misc/hisilicon,hikey-usb.yaml new file mode 100644 index 000000000000..3c2a4ce4d637 --- /dev/null +++ b/Documentation/devicetree/bindings/misc/hisilicon,hikey-usb.yaml @@ -0,0 +1,108 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +# Copyright 2019 Linaro Ltd. +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/misc/hisilicon,hikey-usb.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: HiKey960/970 onboard USB GPIO Hub + +maintainers: + - John Stultz + +description: | + Supports the onboard USB GPIO hub found on HiKey960/970. + The HUB, which acts as a role-switch intermediary to detect the state of + the USB-C port, to switch the hub into dual-role USB-C or host mode, + which enables the onboard USB-A host ports. + + Schematics about the hub can be found here: + https://github.com/96boards/documentation/raw/master/consumer/hikey/hikey960/hardware-docs/HiKey960_Schematics.pdf + https://www.96boards.org/documentation/consumer/hikey/hikey970/hardware-docs/files/hikey970-schematics.pdf + +properties: + compatible: + enum: + - hisilicon,hikey960-usbhub + - hisilicon,hikey970-usbhub + + typec-vbus-gpios: + $ref: /schemas/types.yaml#/definitions/phandle-array + description: phandle to the typec-vbus gpio + + otg-switch-gpios: + $ref: /schemas/types.yaml#/definitions/phandle-array + description: phandle to the otg-switch gpio + + hub-reset-en-gpios: + $ref: /schemas/types.yaml#/definitions/phandle + description: phandle to the hub reset gpio + + usb-role-switch: + $ref: /schemas/types.yaml#/definitions/flag + description: Support role switch. + + hub-vdd-supply: + description: regulator for hub power + + port: + description: | + describe hadware connections between USB endpoints. + Two ports are supported: the first being the endpoint that will + be notified by this driver, and the second being the endpoint + that notifies this driver of a role switch. + +required: + - compatible + - typec-vbus-gpio + - otg-switch-gpio + - hub-vdd-supply + - usb-role-switch + - port + +additionalProperties: false + +examples: + - | + #include + + hisi_hikey_usb: hisi_hikey_usb { + compatible = "hisilicon,hikey960-usbhub"; + typec-vbus-gpio = <&gpio25 2 GPIO_ACTIVE_HIGH>; + otg-switch-gpio = <&gpio25 6 GPIO_ACTIVE_HIGH>; + hub-vdd-supply = <&usb_hub>; + usb-role-switch; + port { + #address-cells = <1>; + #size-cells = <0>; + hikey_usb_ep0: endpoint@0 { + reg = <0>; + remote-endpoint = <&dwc3_role_switch>; + }; + hikey_usb_ep1: endpoint@1 { + reg = <1>; + remote-endpoint = <&rt1711h_ep>; + }; + }; + }; + + hisi-hikey-usb: hisi-hikey-usb { + compatible = "hisilicon,hikey970-usbhub"; + typec-vbus-gpios = <&gpio25 2 GPIO_ACTIVE_HIGH>; + otg-switch-gpios = <&gpio25 6 GPIO_ACTIVE_HIGH>; + hub-reset-en-gpios = <&gpio0 3 0>; + hub-vdd-supply = <&ldo17>; + usb-role-switch; + port { + #address-cells = <1>; + #size-cells = <0>; + hikey_usb_ep0: endpoint@0 { + reg = <0>; + remote-endpoint = <&dwc3_role_switch>; + }; + hikey_usb_ep1: endpoint@1 { + reg = <1>; + remote-endpoint = <&rt1711h_ep>; + }; + }; + }; From patchwork Wed Sep 1 12:23:38 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mauro Carvalho Chehab X-Patchwork-Id: 505211 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-19.4 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1D0C8C4320E for ; Wed, 1 Sep 2021 12:23:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id F2E856102A for ; Wed, 1 Sep 2021 12:23:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244036AbhIAMYl (ORCPT ); Wed, 1 Sep 2021 08:24:41 -0400 Received: from mail.kernel.org ([198.145.29.99]:55104 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243964AbhIAMYk (ORCPT ); Wed, 1 Sep 2021 08:24:40 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 19CD760F92; Wed, 1 Sep 2021 12:23:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1630499024; bh=G5WjVBIBLdchJZDoVf3dlprgnr0+bNljO8LoBMSwmh8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Mz0m6g0cnkQuxYd2MginnzszQws4CmQoIdi4oLJy5myWzFxeNYN8s8qMaFyjR+gPN /z8LK0GpCAgjH6U8OswfaKtt8rXx7pn6nfjFc8PlgIKjsppYkIPFp69YGr+EQ6VaS4 Fk15D3ahYmxSW8HNm04sFORBgoVvCzhDWdk+B+HMB9RZr1ai1qV8ShFiSBIIYZ1q5x peBt8RdiTjje94kdxPp8Rtj86n162LH5yt+fLhk34qFM9ZGSzyg1iANqxDKrXgR3R4 lCtf7RNTYrZ4zFWc3J0YzYpVtLOK4LacUAEg/esyKHPUGVx0fo9I43zsNhQ5b2ZuJ7 S9YWz4Xi1mOQQ== Received: by mail.kernel.org with local (Exim 4.94.2) (envelope-from ) id 1mLPHJ-00H8Z4-4R; Wed, 01 Sep 2021 14:23:41 +0200 From: Mauro Carvalho Chehab To: Rob Herring , John Stultz Cc: linuxarm@huawei.com, mauro.chehab@huawei.com, Mauro Carvalho Chehab , Rob Herring , Wei Xu , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 2/3] arm64: dts: hisilicon: Add usb mux hub for hikey970 Date: Wed, 1 Sep 2021 14:23:38 +0200 Message-Id: <0b2bafee6bcbb90961f797e1583cb756bb163a4a.1630498020.git.mchehab+huawei@kernel.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: References: MIME-Version: 1.0 Sender: Mauro Carvalho Chehab Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Add dt bindings for Kirin 970 USB HUB. Such board comes with an integrated USB HUB provided via a TI TUSB8041 4-port USB 3.0 hub. Signed-off-by: Mauro Carvalho Chehab --- .../boot/dts/hisilicon/hi3670-hikey970.dts | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts b/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts index 60594db07041..8502814d33e7 100644 --- a/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts +++ b/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts @@ -53,6 +53,30 @@ wlan_en: wlan-en-1-8v { startup-delay-us = <70000>; enable-active-high; }; + + hikey_usbhub: hikey_usbhub { + compatible = "hisilicon,kirin970_hikey_usbhub"; + + typec-vbus-gpios = <&gpio26 1 0>; + otg-switch-gpios = <&gpio4 2 0>; + hub-reset-en-gpios = <&gpio0 3 0>; + hub-vdd-supply = <&ldo17>; + usb-role-switch; + + port { + #address-cells = <1>; + #size-cells = <0>; + + hikey_usb_ep0: endpoint@0 { + reg = <0>; + remote-endpoint = <&dwc3_role_switch>; + }; + hikey_usb_ep1: endpoint@1 { + reg = <1>; + remote-endpoint = <&rt1711h_ep>; + }; + }; + }; }; /* From patchwork Wed Sep 1 12:23:39 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mauro Carvalho Chehab X-Patchwork-Id: 505063 Delivered-To: patch@linaro.org Received: by 2002:a02:8629:0:0:0:0:0 with SMTP id e38csp201087jai; Wed, 1 Sep 2021 05:23:46 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxUuP7Otsb43iMjuWeUVkXvmWsHZ3LYPtV28OvWRoHOitf6LN6Jicut/MCh1gEGMK6Vk4XW X-Received: by 2002:a92:8e41:: with SMTP id k1mr23884666ilh.232.1630499026859; Wed, 01 Sep 2021 05:23:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1630499026; cv=none; d=google.com; s=arc-20160816; b=oV+BpGvm57VeEDN6233ok3cl2Wr0Q+JPScMiZ/kK0bijvbxyBP06xW40DYG1cYSCWe lxnt+yVuVALW87wOEziLrFGaHPiEB00NnkTUPJidF2mL/khr7txyLiLugwft3fbVnPNs Ylbnv8pfn/nO10+rgPbdus83EcqebU0awqSLg+BcMCPamPNfMMd2R100o4KSGMl/qEQ0 EVw0hn2rsm+7WGcea9Ab+4Svz4jyMiiQKrMsvLyMGeOnAVWuZ3Lo8K0L9co7/4MzBFxr GBStUGaCfA3cuSvbu1O4P4293jGfmtBCctux2VG3ym9fW6NdDDlURLM6Xi0XEuk59O5+ cgng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=arLVOQkfZPukn7y7jRhL7ey4oItdUELlrMx6IvbVVkk=; b=fd39nuHHg6Tigz29TDlaUA64qBZF0ovLc1feZsF8fC9Knszkuc+N7q63yUJhYiwscd aJBa+KgCWMmWcAv9cGAbtw748uiEkjnpfGs9XIeHbTxsmkdC63yZ6wgKY4PUxzXAowYC Ok8uu1g8t1xOiXOK59aWQD0jyG9upyKHKGjrrpt58CsDiosQ6trVrVgcmtPnd9IkRcQo l8KVlXnay9uBE1ODeab89oIzdWPJpIEh4uVWbVxsoXBUAkrr19dr21qk3JpJwZcd6nns zIanGehePGU/OXjpVRGNiEnpjkZ6RlU5XZsJhkMbuut2vgtw+ZKqBHbPqXyRbiAGHzwM dg2Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=H3ocyg64; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id j9si20311200ilr.97.2021.09.01.05.23.46; Wed, 01 Sep 2021 05:23:46 -0700 (PDT) Received-SPF: pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=H3ocyg64; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244043AbhIAMYl (ORCPT + 6 others); Wed, 1 Sep 2021 08:24:41 -0400 Received: from mail.kernel.org ([198.145.29.99]:55112 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244023AbhIAMYk (ORCPT ); Wed, 1 Sep 2021 08:24:40 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 1C49E60FE6; Wed, 1 Sep 2021 12:23:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1630499024; bh=8Qh+KoZCV3O3HB/rjY3TV5ESE34wEFUhafhg5oTG4q4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=H3ocyg64ON75ITP404UTfJMmpJnIBt8pPqRbu263VWjaGF4RvzXrcgd4bE8EhyR6e g1Y2J0UiSh71QV1JySvIxFNCplZMQgdOzpb/nsIQoLv1cVr2YXjvj22rmryL8i6E2Z 9k4LIzI4pNCHlNKHjPaBALHFTmrBH7Bpz/x3v/ULceFBURoHdLVE3zNoQPrF7faX5p 7kRuQp0MKlIzOjl2Ijq69Cx5M0ytE7w6DJcVBDD17CvIQuxIqTcTYJJZeQh9Tbeh53 DqPhPHQsQ8MKm31gwXEUnjx28TrZluzi5jRhp6gzqVKU+dOwJgM527Mgg+9YCcjhY9 Gqk4kl4Ls9kHQ== Received: by mail.kernel.org with local (Exim 4.94.2) (envelope-from ) id 1mLPHJ-00H8Z9-68; Wed, 01 Sep 2021 14:23:41 +0200 From: Mauro Carvalho Chehab To: Rob Herring , John Stultz Cc: linuxarm@huawei.com, mauro.chehab@huawei.com, Rob Herring , Wei Xu , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Mauro Carvalho Chehab Subject: [PATCH v2 3/3] arm64: dts: hisilicon: Add usb mux hub for hikey960 Date: Wed, 1 Sep 2021 14:23:39 +0200 Message-Id: X-Mailer: git-send-email 2.31.1 In-Reply-To: References: MIME-Version: 1.0 Sender: Mauro Carvalho Chehab Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org From: John Stultz Add dt bindings for Kirin 960 USB HUB. Such board comes with an integrated USB HUB provided via a Microchip USB5734 4-port high-speed hub controller. Signed-off-by: Mauro Carvalho Chehab --- .../boot/dts/hisilicon/hi3660-hikey960.dts | 35 +++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) -- 2.31.1 diff --git a/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts b/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts index f68580dc87d8..cc38d4f961ee 100644 --- a/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts +++ b/arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts @@ -191,12 +191,43 @@ wlan_en: wlan-en-1-8v { enable-active-high; }; + usb_hub: hub-vdd { + compatible = "regulator-fixed"; + regulator-name = "hub-vdd"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + gpio = <&gpio5 6 GPIO_ACTIVE_HIGH>; + }; + firmware { optee { compatible = "linaro,optee-tz"; method = "smc"; }; }; + + hisi_hikey_usb: hisi_hikey_usb { + compatible = "hisilicon,hikey960-usbhub"; + typec-vbus-gpios = <&gpio25 2 GPIO_ACTIVE_HIGH>; + otg-switch-gpios = <&gpio25 6 GPIO_ACTIVE_HIGH>; + hub-vdd33-en-gpios = <&gpio5 6 GPIO_ACTIVE_HIGH>; + hub-vdd-supply = <&usb_hub>; + usb-role-switch; + + port { + #address-cells = <1>; + #size-cells = <0>; + + hikey_usb_ep0: endpoint@0 { + reg = <0>; + remote-endpoint = <&dwc3_role_switch>; + }; + hikey_usb_ep1: endpoint@1 { + reg = <1>; + remote-endpoint = <&rt1711h_ep>; + }; + }; + }; }; /* @@ -564,7 +595,7 @@ port { rt1711h_ep: endpoint@0 { reg = <0>; - remote-endpoint = <&dwc3_role_switch>; + remote-endpoint = <&hikey_usb_ep1>; }; }; }; @@ -686,7 +717,7 @@ port { #size-cells = <0>; dwc3_role_switch: endpoint@0 { reg = <0>; - remote-endpoint = <&rt1711h_ep>; + remote-endpoint = <&hikey_usb_ep0>; }; dwc3_ss: endpoint@1 {