From patchwork Wed Apr 17 09:21:45 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Igor Opaniuk X-Patchwork-Id: 1086875 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=quarantine dis=none) header.from=toradex.com Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44kcFM0htrz9s7T for ; Wed, 17 Apr 2019 19:21:56 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id E30DFC21E1B; Wed, 17 Apr 2019 09:21:53 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id E8808C21C2F; Wed, 17 Apr 2019 09:21:48 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id AEA0EC21C2F; Wed, 17 Apr 2019 09:21:47 +0000 (UTC) Received: from mail-ed1-f68.google.com (mail-ed1-f68.google.com [209.85.208.68]) by lists.denx.de (Postfix) with ESMTPS id 381E3C21BE5 for ; Wed, 17 Apr 2019 09:21:47 +0000 (UTC) Received: by mail-ed1-f68.google.com with SMTP id u57so19718404edm.3 for ; Wed, 17 Apr 2019 02:21:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=uLZlZVqRUjQ3eQPwN78UtzRuQWF2XUVWgq49GK6Kib4=; b=Z3ql0Catsz1NjOou0BmWOoYcSIUfjXwPUh1Pt8xLx/7lWPz/pD5E5iTslghMySklqu wYdAGzMtKFNho/5+NG/R7wfXVGcoDYCvv1Gt4z94XNPegp/WfGCAS5cebTfinIQRDeAD sixmilX1whLRlz9Lcief78wJB+NUSG6/0RPo0X5lDSGsUqGHeAJUBIF4MrhJMFib6LGQ YXUnfGPS1gSybPxMRVkbRsQP2FseL6p+vTKKPQsOzKSl8Vnuh3B5W809/YLyYzFHBTvq pIkY9ca89bN1UtpRDBpxO+p0hrEfRVvxOUP+9yyFDqr4I7jc8UNvBbavMR/ooGQbT6zz 7dzQ== X-Gm-Message-State: APjAAAVsxRt+zfowRaP0ZOatc+AmCNp2HdrpkbB+m8iOvCCeqwWDNdd+ Z13F1dfZjoMhGCIP11LBSpIDAWRg X-Google-Smtp-Source: APXvYqzQHKB3BnWT0lmRi+pJNVwhywfByRfOB9beaAoR+Pyim7y6Uus9u0J37NogTkgIi+v7o7fbBw== X-Received: by 2002:a50:b16c:: with SMTP id l41mr9085143edd.9.1555492906655; Wed, 17 Apr 2019 02:21:46 -0700 (PDT) Received: from localhost ([46.140.72.82]) by smtp.gmail.com with ESMTPSA id k51sm4821090ede.40.2019.04.17.02.21.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 17 Apr 2019 02:21:45 -0700 (PDT) From: Igor Opaniuk To: u-boot@lists.denx.de Date: Wed, 17 Apr 2019 11:21:45 +0200 Message-Id: <20190417092145.15720-1-igor.opaniuk@toradex.com> X-Mailer: git-send-email 2.17.1 Cc: support.arm@toradex.com, marcel.ziswiler@toradex.com, marcel@ziswiler.com, max.krummenacher@toradex.com Subject: [U-Boot] [PATCH v3 1/1] colibri_imx7: migrate usb to driver model X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Migrate USB to Driver Model (CONFIG_DM_USB=y). Acked-by: Marcel Ziswiler Tested-by: Marcel Ziswiler Signed-off-by: Igor Opaniuk --- v3: - re-order usb nodes and add additional comments, as suggested by Marcel v2: - Drop vbus-supply property for usbotg1 node, as on Colibri the turning on of the USB host power is actually done purely in hardware based on the cable detect pin arch/arm/dts/imx7-colibri-emmc.dts | 38 +++++++++++++++++++++++++ arch/arm/dts/imx7-colibri-rawnand.dts | 41 +++++++++++++++++++++++++++ configs/colibri_imx7_defconfig | 1 + configs/colibri_imx7_emmc_defconfig | 1 + 4 files changed, 81 insertions(+) diff --git a/arch/arm/dts/imx7-colibri-emmc.dts b/arch/arm/dts/imx7-colibri-emmc.dts index efd600091d..8265d6ff15 100644 --- a/arch/arm/dts/imx7-colibri-emmc.dts +++ b/arch/arm/dts/imx7-colibri-emmc.dts @@ -13,11 +13,30 @@ aliases { mmc0 = &usdhc3; mmc1 = &usdhc1; + usb0 = &usbotg1; /* required for ums */ }; chosen { stdout-path = &uart1; }; + + reg_5v0: regulator-5v0 { + compatible = "regulator-fixed"; + regulator-name = "5V"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + }; + + reg_usbh_vbus: regulator-usbh-vbus { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usbh_reg>; + regulator-name = "VCC_USB[1-4]"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio4 7 GPIO_ACTIVE_LOW>; + vin-supply = <®_5v0>; + }; }; &usdhc3 { @@ -44,4 +63,23 @@ MX7D_PAD_SD3_STROBE__SD3_STROBE 0x19 >; }; + + pinctrl_usbh_reg: gpio-usbh-vbus { + fsl,pins = < + MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14 + >; + }; +}; + +/* Colibri USBC */ +&usbotg1 { + dr_mode = "host"; + status = "okay"; +}; + +/* Colibri USBH */ +&usbotg2 { + dr_mode = "host"; + vbus-supply = <®_usbh_vbus>; + status = "okay"; }; diff --git a/arch/arm/dts/imx7-colibri-rawnand.dts b/arch/arm/dts/imx7-colibri-rawnand.dts index 4eb86fb011..b8d798765f 100644 --- a/arch/arm/dts/imx7-colibri-rawnand.dts +++ b/arch/arm/dts/imx7-colibri-rawnand.dts @@ -13,6 +13,28 @@ chosen { stdout-path = &uart1; }; + + aliases { + usb0 = &usbotg1; /* required for ums */ + }; + + reg_5v0: regulator-5v0 { + compatible = "regulator-fixed"; + regulator-name = "5V"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + }; + + reg_usbh_vbus: regulator-usbh-vbus { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usbh_reg>; + regulator-name = "VCC_USB[1-4]"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio4 7 GPIO_ACTIVE_LOW>; + vin-supply = <®_5v0>; + }; }; &gpmi { @@ -43,4 +65,23 @@ MX7D_PAD_SD3_DATA7__NAND_DATA07 0x71 >; }; + + pinctrl_usbh_reg: gpio-usbh-vbus { + fsl,pins = < + MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14 + >; + }; +}; + +/* Colibri USBC */t +&usbotg1 { + dr_mode = "host"; + status = "okay"; +}; + +/* Colibri USBH */ +&usbotg2 { + dr_mode = "host"; + vbus-supply = <®_usbh_vbus>; + status = "okay"; }; diff --git a/configs/colibri_imx7_defconfig b/configs/colibri_imx7_defconfig index 7a52361a2a..43af825d5c 100644 --- a/configs/colibri_imx7_defconfig +++ b/configs/colibri_imx7_defconfig @@ -62,6 +62,7 @@ CONFIG_PINCTRL=y CONFIG_PINCTRL_IMX7=y CONFIG_DM_PMIC=y CONFIG_PMIC_RN5T567=y +CONFIG_DM_USB=y CONFIG_USB=y CONFIG_USB_EHCI_HCD=y CONFIG_USB_GADGET=y diff --git a/configs/colibri_imx7_emmc_defconfig b/configs/colibri_imx7_emmc_defconfig index 5e2a204a88..beec2704c5 100644 --- a/configs/colibri_imx7_emmc_defconfig +++ b/configs/colibri_imx7_emmc_defconfig @@ -64,3 +64,4 @@ CONFIG_USB_GADGET_DOWNLOAD=y CONFIG_VIDEO=y CONFIG_FAT_WRITE=y CONFIG_OF_LIBFDT_OVERLAY=y +CONFIG_DM_USB=y