Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp999857ybz; Wed, 29 Apr 2020 13:10:56 -0700 (PDT) X-Google-Smtp-Source: APiQypI/ZROw5S4Mdlhfud8LgJ43ZDB1VOnplBvf10ussgwf2hx6TZxwRYDDnFQ/0dH/nF65cs6I X-Received: by 2002:a17:906:bfc9:: with SMTP id us9mr4052228ejb.84.1588191056260; Wed, 29 Apr 2020 13:10:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588191056; cv=none; d=google.com; s=arc-20160816; b=jOa0VXlHMCrQdxPWBYftDlzaaObzWNfPt/hKnaCdtlEPZnnn7FDr1dKYNYZklD7WNT tVvXo22D2mi+I911kt7Ak8urRIUXcQrrZ7F5c0tlNqUkIBYW5fchN96jB0vKnnx+6hTV zxybJfC+CJW1yBliuHryFg6xvSWF8dYgmvIaqVlT16lQLWnD8bBgRBz8GE1Jyg/W/L+l LKV+WtAvTNSRoOewTHdgAa5JzwP4diHIVwb90I4ZCGWnymyugO62MZCFefcgwfTaCWts mSn5lIKx0+QmBQ23jkFR51aorUICXtN0aoS78pBiF64hPqILHKf0kqFTSNGkBenWpBKq jbRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=lpRZMrHTzTW8z6tlIKgNxL8ccVzt5z7E+tVpzahVStY=; b=ihICcfTRtAx/Yrjgs1g/F8nXRsgqgrFbTPRbhC0BVI9nosd0O5FBtTMnlBnbvcw/2C H8d4OyJqiElBWIIY8KmckroHtwwvTcc3hwZ/trGEq7yXEt/eVifZBzsc133pIFZzxMwD D46xRvdCwO78vypTep2PSYsoxrotuefI9UCbgFOOBCxCwISH1koazypS3RkadKTDrgv9 OISGJ+zFOhmmux+KmdtnKl+JIK3IQ4P0UMJiQL7BeY2EVx0SGajIf/MM+3AfDQsp8omA ePabHQqYBskpHdMXlI/PVjmVNFD0L//mxgTWjb09XlNFRlJUpD0wSSlLYTmyyv8KgP7K 88+A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=Tu1+0hiz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id a12si4118326edx.283.2020.04.29.13.10.32; Wed, 29 Apr 2020 13:10:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-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=@gmail.com header.s=20161025 header.b=Tu1+0hiz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727772AbgD2UIy (ORCPT + 99 others); Wed, 29 Apr 2020 16:08:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58344 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727114AbgD2UIu (ORCPT ); Wed, 29 Apr 2020 16:08:50 -0400 Received: from mail-pj1-x1042.google.com (mail-pj1-x1042.google.com [IPv6:2607:f8b0:4864:20::1042]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 44815C03C1AE; Wed, 29 Apr 2020 13:08:49 -0700 (PDT) Received: by mail-pj1-x1042.google.com with SMTP id t40so1200532pjb.3; Wed, 29 Apr 2020 13:08:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=lpRZMrHTzTW8z6tlIKgNxL8ccVzt5z7E+tVpzahVStY=; b=Tu1+0hizfn13qpIyyhbi0iLwBFLeo8zVhWMQCHnhx14GxWdO8vFfT22DikMm7jSgko z+3N0rPOfFiEhvctI1nsA6c1idvbbEd/4vn/wkChAePFrOyoLePJNOJMHZQT3PxJk7/S QD1+xsX6M8JeP0T/wd8ObzkgEuOPdwzJ6o5tle6AjlJ+FiB1CNo5JfA6Ky99rfp7Z8pN uNPLudSDOEoSS8g3v9vDboK7tjZS3v13MiWcVm9m5uGHupBxw6hcSTAILNfCahkukSgM +c8MItkwH4yifKjzy/l+kHF8ZJXThFw2h0i2LiEEPly4CpPRM/pvUJS8VESMP6OwLMJf jDvA== 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:in-reply-to :references; bh=lpRZMrHTzTW8z6tlIKgNxL8ccVzt5z7E+tVpzahVStY=; b=uRSGkqTl/1uKj0+eYWo/3bVqkNrLr2nOGE8mwmhxdWM+/+4XOs8AVbDrC0S3xtuHe2 lkAC/pn9nIEwrJrTYtz8YLUK+rVchE4hsBwFJLJUlTehHE3d31z2a4muln4Qj04TOkAp IbAnxVHhZcOy1qELOtbqUdQ7SQoQcUcv5dEOjchG9D6yTEldS1vncEe0gPvZp1SCXfh4 4otvP+4506kTwmPF1/0roED/kc6r+5QZPJ7aZzccJjlnCQalhqRCg6nhzGB0ZC9tsoz9 SWeB9kOhXGxLfC7yBOa+sKS8MfJBTBZdmaaZA5UxfEqFMZ7ZH71LhAOPH8SND+0ooCJe XPFw== X-Gm-Message-State: AGi0Puasl1FtHEbMKAwKsdRAUg29E7Kv0+Q477dZCf29apJnqzYX2xxR Bmhf8q8i6EAu2wnFg7L6+rjofe5yiAU= X-Received: by 2002:a17:90a:8b:: with SMTP id a11mr136254pja.163.1588190928419; Wed, 29 Apr 2020 13:08:48 -0700 (PDT) Received: from stbsrv-and-01.and.broadcom.net ([192.19.231.250]) by smtp.gmail.com with ESMTPSA id z23sm1638957pfr.136.2020.04.29.13.08.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Apr 2020 13:08:48 -0700 (PDT) From: Al Cooper To: linux-kernel@vger.kernel.org Cc: Al Cooper , Alan Stern , Andy Shevchenko , bcm-kernel-feedback-list@broadcom.com, devicetree@vger.kernel.org, Greg Kroah-Hartman , Krzysztof Kozlowski , linux-usb@vger.kernel.org, Mathias Nyman , Rob Herring , Yoshihiro Shimoda , Andy Shevchenko Subject: [PATCH v5 4/4] usb: host: Add ability to build new Broadcom STB USB drivers Date: Wed, 29 Apr 2020 16:08:26 -0400 Message-Id: <20200429200826.20177-5-alcooperx@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200429200826.20177-1-alcooperx@gmail.com> References: <20200429200826.20177-1-alcooperx@gmail.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add the build system changes needed to get the Broadcom STB XHCI, EHCI and OHCI functionality working. The OHCI support does not require anything unique to Broadcom so the standard ohci-platform driver is being used. The link order for XHCI was changed in the Makefile because of the way STB XHCI, EHCI and OHCI controllers share a port which requires that the XHCI driver be initialized first. Also update MAINTAINERS. Signed-off-by: Al Cooper --- MAINTAINERS | 8 ++++++++ drivers/usb/host/Kconfig | 16 ++++++++++++++++ drivers/usb/host/Makefile | 16 ++++++++++------ 3 files changed, 34 insertions(+), 6 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index 26f281d9f32a..6147ed78d212 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -3481,6 +3481,14 @@ S: Supported F: Documentation/devicetree/bindings/i2c/brcm,brcmstb-i2c.yaml F: drivers/i2c/busses/i2c-brcmstb.c +BROADCOM BRCMSTB USB EHCI DRIVER +M: Al Cooper +L: linux-usb@vger.kernel.org +L: bcm-kernel-feedback-list@broadcom.com +S: Maintained +F: Documentation/devicetree/bindings/usb/brcm,bcm7445-ehci.yaml +F: drivers/usb/host/ehci-brcm.* + BROADCOM BRCMSTB USB2 and USB3 PHY DRIVER M: Al Cooper L: linux-kernel@vger.kernel.org diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig index 55bdfdf11e4c..7d58fd66e412 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig @@ -97,6 +97,22 @@ config USB_XHCI_TEGRA endif # USB_XHCI_HCD +config USB_EHCI_BRCMSTB + tristate + +config USB_BRCMSTB + tristate "Broadcom STB USB support" + depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST + select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD + select USB_EHCI_BRCMSTB if USB_EHCI_HCD + select USB_XHCI_PLATFORM if USB_XHCI_HCD + help + Say Y to enable support for XHCI, EHCI and OHCI host controllers + found in Broadcom STB SoC's. + + Disabling this will keep the controllers and corresponding + PHYs powered down. + config USB_EHCI_HCD tristate "EHCI HCD (USB 2.0) support" depends on HAS_DMA && HAS_IOMEM diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile index b191361257cc..85fa6ace552a 100644 --- a/drivers/usb/host/Makefile +++ b/drivers/usb/host/Makefile @@ -37,6 +37,15 @@ endif obj-$(CONFIG_USB_PCI) += pci-quirks.o +# NOTE: BRCMSTB systems require that xhci driver be linked before the +# ehci/ohci drivers. +obj-$(CONFIG_USB_XHCI_HCD) += xhci-hcd.o +obj-$(CONFIG_USB_XHCI_PCI) += xhci-pci.o +obj-$(CONFIG_USB_XHCI_PLATFORM) += xhci-plat-hcd.o +obj-$(CONFIG_USB_XHCI_HISTB) += xhci-histb.o +obj-$(CONFIG_USB_XHCI_MTK) += xhci-mtk.o +obj-$(CONFIG_USB_XHCI_TEGRA) += xhci-tegra.o + obj-$(CONFIG_USB_EHCI_HCD) += ehci-hcd.o obj-$(CONFIG_USB_EHCI_PCI) += ehci-pci.o obj-$(CONFIG_USB_EHCI_HCD_PLATFORM) += ehci-platform.o @@ -49,6 +58,7 @@ obj-$(CONFIG_USB_EHCI_HCD_STI) += ehci-st.o obj-$(CONFIG_USB_EHCI_EXYNOS) += ehci-exynos.o obj-$(CONFIG_USB_EHCI_HCD_AT91) += ehci-atmel.o obj-$(CONFIG_USB_EHCI_TEGRA) += ehci-tegra.o +obj-$(CONFIG_USB_EHCI_BRCMSTB) += ehci-brcm.o obj-$(CONFIG_USB_OXU210HP_HCD) += oxu210hp-hcd.o obj-$(CONFIG_USB_ISP116X_HCD) += isp116x-hcd.o @@ -69,12 +79,6 @@ obj-$(CONFIG_USB_OHCI_HCD_DAVINCI) += ohci-da8xx.o obj-$(CONFIG_USB_UHCI_HCD) += uhci-hcd.o obj-$(CONFIG_USB_FHCI_HCD) += fhci.o -obj-$(CONFIG_USB_XHCI_HCD) += xhci-hcd.o -obj-$(CONFIG_USB_XHCI_PCI) += xhci-pci.o -obj-$(CONFIG_USB_XHCI_PLATFORM) += xhci-plat-hcd.o -obj-$(CONFIG_USB_XHCI_HISTB) += xhci-histb.o -obj-$(CONFIG_USB_XHCI_MTK) += xhci-mtk.o -obj-$(CONFIG_USB_XHCI_TEGRA) += xhci-tegra.o obj-$(CONFIG_USB_SL811_HCD) += sl811-hcd.o obj-$(CONFIG_USB_SL811_CS) += sl811_cs.o obj-$(CONFIG_USB_U132_HCD) += u132-hcd.o -- 2.17.1