From: Alan Stern <stern@rowland.harvard.edu>
To: Tomer Maimon <tmaimon77@gmail.com>
Cc: avifishman70@gmail.com, tali.perry1@gmail.com, joel@jms.id.au,
venture@google.com, yuenn@google.com, benjaminfair@google.com,
gregkh@linuxfoundation.org, tony@atomide.com,
felipe.balbi@linux.intel.com, jgross@suse.com,
lukas.bulwahn@gmail.com, arnd@arndb.de, robh+dt@kernel.org,
krzysztof.kozlowski+dt@linaro.org, openbmc@lists.ozlabs.org,
linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org
Subject: Re: [PATCH v1 1/3] usb: host: npcm7xx: remove USB EHCI host reset sequence
Date: Mon, 18 Jul 2022 10:30:34 -0400 [thread overview]
Message-ID: <YtVuildpxcI5By4x@rowland.harvard.edu> (raw)
In-Reply-To: <20220718122922.9396-2-tmaimon77@gmail.com>
On Mon, Jul 18, 2022 at 03:29:20PM +0300, Tomer Maimon wrote:
> Remove USB EHCI host controller reset sequence from NPCM7XX USB EHCI
> host probe function because it is done in the NPCM reset driver.
>
> Due to it, NPCM7XX EHCI driver configuration is dependent on NPCM reset.
>
> Signed-off-by: Tomer Maimon <tmaimon77@gmail.com>
> ---
Regarding the changes to ehci-npcm7xx.c:
Acked-by: Alan Stern <stern@rowland.harvard.edu>
But you probably should remove the "#include <linux/regmap.h>" line near
the start of the source file.
Alan Stern
> drivers/usb/host/Kconfig | 2 +-
> drivers/usb/host/ehci-npcm7xx.c | 47 ---------------------------------
> 2 files changed, 1 insertion(+), 48 deletions(-)
>
> diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
> index 682b3d2da623..e05e2cf806f8 100644
> --- a/drivers/usb/host/Kconfig
> +++ b/drivers/usb/host/Kconfig
> @@ -206,7 +206,7 @@ config USB_EHCI_FSL
>
> config USB_EHCI_HCD_NPCM7XX
> tristate "Support for Nuvoton NPCM7XX on-chip EHCI USB controller"
> - depends on (USB_EHCI_HCD && ARCH_NPCM7XX) || COMPILE_TEST
> + depends on (USB_EHCI_HCD && ARCH_NPCM7XX && RESET_NPCM) || COMPILE_TEST
> default y if (USB_EHCI_HCD && ARCH_NPCM7XX)
> help
> Enables support for the on-chip EHCI controller on
> diff --git a/drivers/usb/host/ehci-npcm7xx.c b/drivers/usb/host/ehci-npcm7xx.c
> index 6b5a7a873e01..955e7c8f3db8 100644
> --- a/drivers/usb/host/ehci-npcm7xx.c
> +++ b/drivers/usb/host/ehci-npcm7xx.c
> @@ -28,13 +28,6 @@
> #define DRIVER_DESC "EHCI npcm7xx driver"
>
> static const char hcd_name[] = "npcm7xx-ehci";
> -
> -#define USB2PHYCTL_OFFSET 0x144
> -
> -#define IPSRST2_OFFSET 0x24
> -#define IPSRST3_OFFSET 0x34
> -
> -
> static struct hc_driver __read_mostly ehci_npcm7xx_hc_driver;
>
> static int __maybe_unused ehci_npcm7xx_drv_suspend(struct device *dev)
> @@ -60,52 +53,12 @@ static int npcm7xx_ehci_hcd_drv_probe(struct platform_device *pdev)
> {
> struct usb_hcd *hcd;
> struct resource *res;
> - struct regmap *gcr_regmap;
> - struct regmap *rst_regmap;
> const struct hc_driver *driver = &ehci_npcm7xx_hc_driver;
> int irq;
> int retval;
>
> dev_dbg(&pdev->dev, "initializing npcm7xx ehci USB Controller\n");
>
> - gcr_regmap = syscon_regmap_lookup_by_compatible("nuvoton,npcm750-gcr");
> - if (IS_ERR(gcr_regmap)) {
> - dev_err(&pdev->dev, "%s: failed to find nuvoton,npcm750-gcr\n",
> - __func__);
> - return PTR_ERR(gcr_regmap);
> - }
> -
> - rst_regmap = syscon_regmap_lookup_by_compatible("nuvoton,npcm750-rst");
> - if (IS_ERR(rst_regmap)) {
> - dev_err(&pdev->dev, "%s: failed to find nuvoton,npcm750-rst\n",
> - __func__);
> - return PTR_ERR(rst_regmap);
> - }
> -
> - /********* phy init ******/
> - // reset usb host
> - regmap_update_bits(rst_regmap, IPSRST2_OFFSET,
> - (0x1 << 26), (0x1 << 26));
> - regmap_update_bits(rst_regmap, IPSRST3_OFFSET,
> - (0x1 << 25), (0x1 << 25));
> - regmap_update_bits(gcr_regmap, USB2PHYCTL_OFFSET,
> - (0x1 << 28), 0);
> -
> - udelay(1);
> -
> - // enable phy
> - regmap_update_bits(rst_regmap, IPSRST3_OFFSET,
> - (0x1 << 25), 0);
> -
> - udelay(50); // enable phy
> -
> - regmap_update_bits(gcr_regmap, USB2PHYCTL_OFFSET,
> - (0x1 << 28), (0x1 << 28));
> -
> - // enable host
> - regmap_update_bits(rst_regmap, IPSRST2_OFFSET,
> - (0x1 << 26), 0);
> -
> if (usb_disabled())
> return -ENODEV;
>
> --
> 2.33.0
>
next prev parent reply other threads:[~2022-07-18 14:30 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-18 12:29 [PATCH v1 0/3] usb: host: npcm7xx-ehci: add Arbel NPCM8XX support and remove reset sequence Tomer Maimon
2022-07-18 12:29 ` [PATCH v1 1/3] usb: host: npcm7xx: remove USB EHCI host " Tomer Maimon
2022-07-18 12:38 ` Arnd Bergmann
2022-07-18 14:29 ` Tomer Maimon
2022-07-18 14:30 ` Alan Stern [this message]
2022-07-18 12:29 ` [PATCH v1 2/3] dt-bindings: usb: npcm7xx: Add npcm845 compatible Tomer Maimon
2022-07-18 13:55 ` Krzysztof Kozlowski
2022-07-18 12:29 ` [PATCH v1 3/3] USB: host: npcm: Add NPCM8XX support Tomer Maimon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YtVuildpxcI5By4x@rowland.harvard.edu \
--to=stern@rowland.harvard.edu \
--cc=arnd@arndb.de \
--cc=avifishman70@gmail.com \
--cc=benjaminfair@google.com \
--cc=devicetree@vger.kernel.org \
--cc=felipe.balbi@linux.intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=jgross@suse.com \
--cc=joel@jms.id.au \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=lukas.bulwahn@gmail.com \
--cc=openbmc@lists.ozlabs.org \
--cc=robh+dt@kernel.org \
--cc=tali.perry1@gmail.com \
--cc=tmaimon77@gmail.com \
--cc=tony@atomide.com \
--cc=venture@google.com \
--cc=yuenn@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).