From mboxrd@z Thu Jan 1 00:00:00 1970 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=-3.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,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 25220C04AB4 for ; Tue, 14 May 2019 15:11:40 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 039712085A for ; Tue, 14 May 2019 15:11:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726179AbfENPLj (ORCPT ); Tue, 14 May 2019 11:11:39 -0400 Received: from pbmsgap01.intersil.com ([192.157.179.201]:51608 "EHLO pbmsgap01.intersil.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726036AbfENPLj (ORCPT ); Tue, 14 May 2019 11:11:39 -0400 Received: from pps.filterd (pbmsgap01.intersil.com [127.0.0.1]) by pbmsgap01.intersil.com (8.16.0.27/8.16.0.27) with SMTP id x4EEqbkb026036; Tue, 14 May 2019 10:56:23 -0400 Received: from pbmxdp02.intersil.corp (pbmxdp02.pb.intersil.com [132.158.200.223]) by pbmsgap01.intersil.com with ESMTP id 2sdswyjjq5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Tue, 14 May 2019 10:56:23 -0400 Received: from pbmxdp02.intersil.corp (132.158.200.223) by pbmxdp02.intersil.corp (132.158.200.223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.1531.3; Tue, 14 May 2019 10:56:22 -0400 Received: from localhost.localdomain (132.158.202.108) by pbmxdp02.intersil.corp (132.158.200.223) with Microsoft SMTP Server id 15.1.1531.3 via Frontend Transport; Tue, 14 May 2019 10:56:21 -0400 From: Chris Brandt To: Rob Herring , Mark Rutland , Greg Kroah-Hartman , Simon Horman , Yoshihiro Shimoda CC: Geert Uytterhoeven , Sergei Shtylyov , Chunfeng Yun , , , , "Chris Brandt" Subject: [PATCH v3 00/15] usb: Add host and device support for RZ/A2 Date: Tue, 14 May 2019 09:55:50 -0500 Message-ID: <20190514145605.19112-1-chris.brandt@renesas.com> X-Mailer: git-send-email 2.16.1 MIME-Version: 1.0 Content-Type: text/plain X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-05-14_09:,, signatures=0 X-Proofpoint-Spam-Details: rule=junk_notspam policy=junk score=0 suspectscore=2 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1905140106 X-Proofpoint-Spam-Reason: mlx Sender: linux-renesas-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-renesas-soc@vger.kernel.org NOTE: This series requires the follow patch from Shimoda-san. [PATCH v2] usb: renesas_usbhs: Use specific struct instead of USBHS_TYPE_* enums For the most part, the RZ/A2 has the same USB 2.0 host and device HW as the R-Car Gen3, so we can reuse a lot of the code. However, there are a couple extra register bits, and the CFIFO register 8-bit access works a little different. There is a dedicated DMAC for the RZ/A2 USB Device HW, but we have not been able to reliably get that working yet, so device operation is pio only at the moment. On the RZ/A2M eval board, both USB channels can be used as either host or device. But, it's not set up for otg (ie, there are jumpers and separate connectors). Therefore, below is an example of what it would look like to enable USB channel 0 as a device instead of a host. &usb2_phy0 { pinctrl-names = "default"; pinctrl-0 = <&usb0_pins>; dr_mode = "peripheral"; status = "okay"; }; &usbhs0 { status = "okay"; }; Chris Brandt (15): ARM: dts: r7s9210: Add USB clock ARM: dts: rza2mevb: Add 48MHz USB clock phy: renesas: rcar-gen3-usb2: detect usb_x1 clock dt-bindings: rcar-gen3-phy-usb2: Document use of usb_x1 phy: renesas: rcar-gen3-usb2: Check dr_mode when not using OTG dt-bindings: rcar-gen3-phy-usb2: Document dr_mode dt-bindings: rcar-gen3-phy-usb2: Add r7s9210 support usb: renesas_usbhs: move flags to param usb: renesas_usbhs: add support for CNEN bit usb: renesas_usbhs: support byte addressable CFIFO usb: renesas_usbhs: Add support for RZ/A2 dt-bindings: usb: renesas_usbhs: Add support for r7s9210 ARM: dts: r7s9210: Add USB Host support ARM: dts: r7s9210: Add USB Device support ARM: dts: rza2mevb: Add USB host support .../devicetree/bindings/phy/rcar-gen3-phy-usb2.txt | 19 +++-- .../devicetree/bindings/usb/renesas_usbhs.txt | 2 + arch/arm/boot/dts/r7s9210-rza2mevb.dts | 42 ++++++++++ arch/arm/boot/dts/r7s9210.dtsi | 97 ++++++++++++++++++++++ drivers/phy/renesas/phy-rcar-gen3-usb2.c | 26 ++++++ drivers/usb/renesas_usbhs/Makefile | 2 +- drivers/usb/renesas_usbhs/common.c | 44 ++++++---- drivers/usb/renesas_usbhs/common.h | 3 +- drivers/usb/renesas_usbhs/fifo.c | 9 +- drivers/usb/renesas_usbhs/rza.h | 1 + drivers/usb/renesas_usbhs/rza2.c | 75 +++++++++++++++++ include/linux/usb/renesas_usbhs.h | 4 + 12 files changed, 298 insertions(+), 26 deletions(-) create mode 100644 drivers/usb/renesas_usbhs/rza2.c -- 2.16.1