Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1711270ybz; Thu, 30 Apr 2020 04:15:41 -0700 (PDT) X-Google-Smtp-Source: APiQypK0E9wuskp1bp0arFJQXKHjxwYMr73+xx0AK/jYg6ypOfq+oQ1WJgkwoqV2Jylp8V0nxe+O X-Received: by 2002:aa7:c609:: with SMTP id h9mr2067480edq.250.1588245341696; Thu, 30 Apr 2020 04:15:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588245341; cv=none; d=google.com; s=arc-20160816; b=cooED2WXYy2yqPj4zx+12Pj8B5BjgrdoGm/EPuBdKUB+9yEARo2PLhf4R9plYlqCG6 EYgSDNTCQPKjbtkZqPW0adALJTOTQzwgMRJTlxIM33V7KungRxqR8Hqv8PAzUurtUUZ9 LF4OeSkgmghq1L24TmmIvjvzUS21pJghUDdjKCm+ei9/KWmYK9Zp5WsjWLDvrJjImGEM FrbwXGEOn1UElvjmxKGcJdO5pkIoIVkhpxmBnj80RXa0qx5fUK4IZMIWdELUgSAW33F4 ixI2TPScy+rybJspNzpqLkeXrFSZkFOboSF1pT3OIH6mkjDIkgL/Bk3M6udqA0gRSybP ZEWw== 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=VUKTvWtgbhttFGtzeI6IS/XpZNSIFlJPHH6aYTtzr2WpLq6E3OcQfqAqrbK6JC8psZ 9FA86o32bqfa5b4dVi4p/kSggiq/YKHOb1P7QMzEtv31O3ZUD4tYcWLMBd76rZAU1o/L ayZ7KWSfDgDqR2af56WsHODqtF2KlmKq7TEIBIuDaBKGo0dh36O2Na8UCEHLTYRAF8Wy RFYaat3eao+24/iIWVEtrwOfo6HmuWE8KCU9kwx9y3OgWsMt/PDxKLrYJ8AXZhokv7Gf nMu8Eked4cdtz7pGdOHOOMoKVK2eXS42yWeSGy2eYNtCJKWDAzoQtW1hTYnBPQtGx5eR DOgQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ZkZmrlH0; 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 cb14si5417998edb.529.2020.04.30.04.15.18; Thu, 30 Apr 2020 04:15:41 -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=ZkZmrlH0; 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 S1727088AbgD3LNc (ORCPT + 99 others); Thu, 30 Apr 2020 07:13:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58268 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726859AbgD3LN2 (ORCPT ); Thu, 30 Apr 2020 07:13:28 -0400 Received: from mail-wr1-x443.google.com (mail-wr1-x443.google.com [IPv6:2a00:1450:4864:20::443]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 05CC3C035495; Thu, 30 Apr 2020 04:13:28 -0700 (PDT) Received: by mail-wr1-x443.google.com with SMTP id j2so6382621wrs.9; Thu, 30 Apr 2020 04:13:27 -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=ZkZmrlH0zQmRJKuakU82/136JlIvkKt2OAwJKmE7XXk02VRQ9SllniS7dIW5Q3vkDP AdMjcmaliUnU12JP+LbrRktms1BhfH4niTj6khMGeB+xC/4q+hcUo1HqvXoOt/F/irB0 /tM9REv8xPnnErTcaueEumb0vNDXSkN3TW85Q0JJvo7XFnizC540Z5vLbZGiCbco8fA3 b6CBWsj46msWSO18em0aES75bigoMN30cShsGc1DfxBN81q9KFXf/HbmdZWm4HG26vRd 71ZeVsdRTtKppLR8oM9+cW457vH8noHuBhsnP0wk+3wFO1OivCtfI7+p9onp4E+AGqxg 1xnw== 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=SYEZVbGpMlzQdMiNVx4A/EUesnC+EaBHp49t0tfNbAC5S5oV/CJ6IllMZWswsUdaMo TbsvgqpHDH7jUUmeR0eL4h/OgkEB8QdkVFFAteeDJqqdsupeMSqYy8jcvLd2joNbClXe YKrq8Y3aPu14I1p+ViguU9kzVUul+6KFYnTne3RDHX5XG8+CMS0bNE6ECRcq3pv+/3lK JnJwkTDJHYYCvzJzFBFode5KHLMdnZjEcjzHjVKiCBK1xyQg2HvwXD3j5y0q9+dCwovI m8YqqmWojQjcDfdinOvZK1kUk2Pgt/1Jr+S4I0W/DY8UjhMfWACfXCEX9xSIvGtEC8oi vgSg== X-Gm-Message-State: AGi0Pub2XCblG+QqtYKtHQBD/WwWI5wbAbTpC6OeZRTegN3zrdHmg4On FZ4g3vdw5KWZ7guIoRX5DDpcNKJEpLQ= X-Received: by 2002:adf:f004:: with SMTP id j4mr3282756wro.123.1588245206382; Thu, 30 Apr 2020 04:13:26 -0700 (PDT) Received: from stbsrv-and-01.and.broadcom.net ([192.19.231.250]) by smtp.gmail.com with ESMTPSA id 74sm3727077wrk.30.2020.04.30.04.13.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Apr 2020 04:13:25 -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 v6 4/4] usb: host: Add ability to build new Broadcom STB USB drivers Date: Thu, 30 Apr 2020 07:12:58 -0400 Message-Id: <20200430111258.6091-5-alcooperx@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200430111258.6091-1-alcooperx@gmail.com> References: <20200430111258.6091-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