From patchwork Fri Jan 10 05:42:31 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hanjie Lin X-Patchwork-Id: 11326635 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 59D3092A for ; Fri, 10 Jan 2020 05:43:06 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 3B9FD2072E for ; Fri, 10 Jan 2020 05:43:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726512AbgAJFnE (ORCPT ); Fri, 10 Jan 2020 00:43:04 -0500 Received: from mail-sh.amlogic.com ([58.32.228.43]:21526 "EHLO mail-sh.amlogic.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726096AbgAJFnD (ORCPT ); Fri, 10 Jan 2020 00:43:03 -0500 Received: from droid10.amlogic.com (10.18.11.213) by mail-sh.amlogic.com (10.18.11.5) with Microsoft SMTP Server id 15.1.1591.10; Fri, 10 Jan 2020 13:43:28 +0800 From: Hanjie Lin To: Jerome Brunet , Neil Armstrong , Rob Herring , Greg Kroah-Hartman , Kevin Hilman CC: Hanjie Lin , , , , , Carlo Caione , Michael Turquette , Stephen Boyd , Martin Blumenstingl , Liang Yang , Jianxin Pan , Qiufang Dai , Jian Hu , Victor Wan , Yue Wang , Xingyu Chen Subject: [PATCH v5 0/6] arm64: meson: Add support for USB on Amlogic A1 Date: Fri, 10 Jan 2020 13:42:31 +0800 Message-ID: <1578634957-54826-1-git-send-email-hanjie.lin@amlogic.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 X-Originating-IP: [10.18.11.213] Sender: linux-usb-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org This patchset adds support for USB on Amlogic A1 SoCs. This patchset is composed with : - bindings of the PHY - bindings of the USB Control Glue - PHY Driver - USB Control Glue driver - dts of the PHY - dts of the USB Controller The Amlogic A1 USB Complex is composed of : - 1 DWC3 USB controller for USB2 Host functionality - 1 USB2 PHY for USB2 Host functionality The USB Control Glue setups the clocks and the reset about DWC3 USB controller, and binds to the USB2 PHY. It also configures the 8bit UTMI interfaces for the USB2 PHY, including setting USB2 phy mode. The USB2 PHY driver initializes the phy analog settings, phy PLL setup and phy tuning. This patchset is based on A1 clock/power domain/reset series at [0]. Changes since v1:[1] - integrate glue and phy drivers into g12a's Changes since v2:[2] - modify amlogic,meson-g12a-usb-ctrl.yaml with dt_binding_check tool - phy/glue driver use of_device_get_match_data to distinguish A1 from G12A Changes since v3:[3] - fix bindings mistakes of the PHY according Rob's comments - fix bindings mistakes of the USB Control Glue according Rob's comments - phy driver add xtal_usb_phy clock which moved from glue driver - glue driver use otg_mode instead of soc_id to support otg function Changes since v4:[4] - phy driver revert reset-names changes - phy driver change clock name to "xtal" to consistent with g12a - glue driver add drvdata otg_switch_supported [0] https://patchwork.kernel.org/project/linux-amlogic/list/?series=185477 https://patchwork.kernel.org/project/linux-amlogic/list/?series=180055 https://patchwork.kernel.org/project/linux-amlogic/list/?series=189643 [1] : https://lore.kernel.org/linux-amlogic/1574405757-76184-1-git-send-email-hanjie.lin@amlogic.com [2] : https://lore.kernel.org/linux-amlogic/1576636944-196192-1-git-send-email-hanjie.lin@amlogic.com [3] : https://lore.kernel.org/linux-amlogic/1577428606-69855-1-git-send-email-hanjie.lin@amlogic.com [4] : https://lore.kernel.org/linux-amlogic/1578537045-23260-1-git-send-email-hanjie.lin@amlogic.com Hanjie Lin (6): dt-bindings: phy: Add Amlogic A1 USB2 PHY Bindings dt-bindings: usb: dwc3: Add the Amlogic A1 Family DWC3 Glue Bindings phy: amlogic: Add Amlogic A1 USB2 PHY Driver usb: dwc3: Add Amlogic A1 DWC3 glue arm64: dts: meson: a1: Enable USB2 PHY arm64: dts: meson: a1: Enable DWC3 controller .../bindings/phy/amlogic,meson-a1-usb2-phy.yaml | 62 +++++++++++++++ .../bindings/usb/amlogic,meson-g12a-usb-ctrl.yaml | 11 +++ arch/arm64/boot/dts/amlogic/meson-a1.dtsi | 44 +++++++++++ drivers/phy/amlogic/phy-meson-g12a-usb2.c | 85 ++++++++++++++------- drivers/usb/dwc3/dwc3-meson-g12a.c | 89 ++++++++++++++++------ 5 files changed, 243 insertions(+), 48 deletions(-) create mode 100644 Documentation/devicetree/bindings/phy/amlogic,meson-a1-usb2-phy.yaml