From patchwork Fri Dec 27 06:36:40 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hanjie Lin X-Patchwork-Id: 11310949 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 D72C8138D for ; Fri, 27 Dec 2019 06:37:23 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id B31F620882 for ; Fri, 27 Dec 2019 06:37:23 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="drCqHTPb" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B31F620882 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amlogic.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-amlogic-bounces+patchwork-linux-amlogic=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=aERcdf/Y6YiUSB363vcad82Sza/HfVPkHe9J5CLXl0M=; b=drCqHTPbt8odJN v5NsJ4vjxUiWyTx7CP0o8sZJWwm594vP9eziLK7tx7/pr2B9BPWZVjmQo/3a3BG9iHdsPky3ImNjr qM/H1I6Of+TuI1F5FbbqYUAVR6ERMEz30okUP78PL6ISjp/VrHM6taP2BEzPl29eCFjWJlKU9JiTl bnOaAVUKArMDIFQWG76E8ppKVenwWx6zD2NGRdaCKGzyNCFrz93wb/c7nECJB+OTrzpQM2IiNotu9 H32JK6llmSy6y6XYW+MHxqovrIKWZOGvZdBzOr8NmfQIiMfkhhRr0b2BU0/J4yZRsM+U/32NUn4sF hBE5kob/bM7KuJEF7wSA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1ikjFS-0007qu-Ni; Fri, 27 Dec 2019 06:37:22 +0000 Received: from mail-sh.amlogic.com ([58.32.228.43]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1ikjF6-0007c3-OD; Fri, 27 Dec 2019 06:37:02 +0000 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, 27 Dec 2019 14:37:14 +0800 From: Hanjie Lin To: Jerome Brunet , Neil Armstrong , Rob Herring , Greg Kroah-Hartman , Kevin Hilman Subject: [PATCH v3 0/6] arm64: meson: Add support for USB on Amlogic A1 Date: Fri, 27 Dec 2019 14:36:40 +0800 Message-ID: <1577428606-69855-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] X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20191226_223700_790063_9FA13261 X-CRM114-Status: UNSURE ( 7.67 ) X-CRM114-Notice: Please train this message. X-Spam-Score: 0.0 (/) X-Spam-Report: SpamAssassin version 3.4.2 on bombadil.infradead.org summary: Content analysis details: (0.0 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Hanjie Lin , Victor Wan , Jianxin Pan , Stephen Boyd , Michael Turquette , linux-usb@vger.kernel.org, Yue Wang , Martin Blumenstingl , Liang Yang , Qiufang Dai , Xingyu Chen , Carlo Caione , linux-amlogic@lists.infradead.org, linux-arm-kernel@lists.infradead.org, Jian Hu Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+patchwork-linux-amlogic=patchwork.kernel.org@lists.infradead.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 [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/ 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 | 55 +++++++++++ .../bindings/usb/amlogic,meson-g12a-usb-ctrl.yaml | 57 +++++++++-- arch/arm64/boot/dts/amlogic/meson-a1.dtsi | 44 +++++++++ drivers/phy/amlogic/phy-meson-g12a-usb2.c | 93 ++++++++++++------ drivers/usb/dwc3/dwc3-meson-g12a.c | 105 +++++++++++++++------ 5 files changed, 292 insertions(+), 62 deletions(-) create mode 100644 Documentation/devicetree/bindings/phy/amlogic,meson-a1-usb2-phy.yaml