From: Florian Fainelli <florian@openwrt.org>
To: stern@rowland.harvard.edu
Cc: linux-usb@vger.kernel.org, Florian Fainelli <florian@openwrt.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-kernel@vger.kernel.org
Subject: [PATCH 07/32 v3] USB: EHCI: add no_io_watchdog platform_data parameter to ehci-platform
Date: Fri, 5 Oct 2012 18:20:39 +0200 [thread overview]
Message-ID: <1349454064-11606-8-git-send-email-florian@openwrt.org> (raw)
In-Reply-To: <1349454064-11606-1-git-send-email-florian@openwrt.org>
Enhance the ehci-platform driver to also accept no_io_watchdog as a platform
data parameter. When no_io_watchdog is set to 1, the ehci controller will set
ehci->need_io_watchdog to 0. Since most EHCI controllers do need the I/O
watchdog to be on, only let those which need it to turn the watchdog off.
Make sure that we change need_io_watchdog after the call to ehci_setup()
because ehci_setup() will unconditionnaly set need_io_watchdog to 1.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
---
Changes in v3:
- set need_io_watchdog after the call to ehci_setup()
Changes in v2:
- reworked patch to introduce "no_io_watchdog" instead of "need_io_watchdog"
- reworded commit message accordingly
drivers/usb/host/ehci-platform.c | 2 ++
include/linux/usb/ehci_pdriver.h | 3 +++
2 files changed, 5 insertions(+)
diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
index 764e010..607adf9 100644
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
@@ -38,6 +38,8 @@ static int ehci_platform_reset(struct usb_hcd *hcd)
if (retval)
return retval;
+ if (pdata->no_io_watchdog)
+ ehci->need_io_watchdog = 0;
if (pdata->port_power_on)
ehci_port_power(ehci, 1);
if (pdata->port_power_off)
diff --git a/include/linux/usb/ehci_pdriver.h b/include/linux/usb/ehci_pdriver.h
index c9d09f8..67ac74b 100644
--- a/include/linux/usb/ehci_pdriver.h
+++ b/include/linux/usb/ehci_pdriver.h
@@ -29,6 +29,8 @@
* initialization.
* @port_power_off: set to 1 if the controller needs to be powered down
* after initialization.
+ * @no_io_watchdog: set to 1 if the controller does not need the I/O
+ * watchdog to run.
*
* These are general configuration options for the EHCI controller. All of
* these options are activating more or less workarounds for some hardware.
@@ -41,6 +43,7 @@ struct usb_ehci_pdata {
unsigned big_endian_mmio:1;
unsigned port_power_on:1;
unsigned port_power_off:1;
+ unsigned no_io_watchdog:1;
/* Turn on all power and clocks */
int (*power_on)(struct platform_device *pdev);
--
1.7.9.5
next prev parent reply other threads:[~2012-10-05 16:31 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1349454064-11606-1-git-send-email-florian@openwrt.org>
2012-10-05 16:20 ` [PATCH 01/32 v3] USB: EHCI: remove IXP4xx EHCI driver Florian Fainelli
2012-10-05 16:20 ` [PATCH 02/32] USB: OHCI: remove ohci-pcc-soc driver Florian Fainelli
2012-10-05 17:54 ` Alan Stern
2012-10-05 16:20 ` [PATCH 03/32 v3] MIPS: Loongson 1B: use ehci-platform instead of ehci-ls1x Florian Fainelli
2012-10-05 16:20 ` [PATCH 04/32 v3] USB: EHCI: remove Loongson 1B EHCI driver Florian Fainelli
2012-10-05 16:20 ` [PATCH 05/32 v3] MIPS: Netlogic: use ehci-platform driver Florian Fainelli
2012-10-05 16:20 ` [PATCH 06/32 v3] USB: EHCI: remove Netlogic XLS EHCI driver Florian Fainelli
2012-10-05 16:20 ` Florian Fainelli [this message]
2012-10-05 16:20 ` [PATCH 08/32 v3] MIPS: Alchemy: use the ehci platform driver Florian Fainelli
2012-10-05 16:20 ` [PATCH 09/32 v3] USB: EHCI: remove Alchemy EHCI driver Florian Fainelli
2012-10-05 16:20 ` [PATCH 10/32 v3] ARM: cns3xxx: use ehci platform driver Florian Fainelli
2012-10-05 16:20 ` [PATCH 11/32 v3] USB: EHCI: remove CNS3xxx EHCI " Florian Fainelli
2012-10-05 16:20 ` [PATCH 12/32 v3] USB: ohci: allow platform driver to specify the number of ports Florian Fainelli
2012-10-05 16:20 ` [PATCH 13/32 v2] USB: ohci: move ohci_pci_{suspend,resume} to ohci-hcd.c Florian Fainelli
2012-10-05 17:56 ` Alan Stern
2012-10-05 16:20 ` [PATCH 14/32 v2] USB: ohci: remove check for RH already suspended in ohci_suspend Florian Fainelli
2012-10-05 16:20 ` [PATCH 15/32 v2] USB: ohci: merge ohci_finish_controller_resume with ohci_resume Florian Fainelli
2012-10-05 16:20 ` [PATCH 16/32 v3] MIPS: PNX8550: use OHCI platform driver Florian Fainelli
2012-10-05 16:20 ` [PATCH 17/32 v3] USB: OHCI: remove PNX8550 OHCI driver Florian Fainelli
2012-10-05 16:20 ` [PATCH 18/32 v3] ARM: cns3xxx: use OHCI platform driver Florian Fainelli
2012-10-05 16:20 ` [PATCH 19/32 v3] USB: OHCI: remove CNS3xxx " Florian Fainelli
2012-10-05 16:20 ` [PATCH 20/32 v3] MIPS: Netlogic: convert to use " Florian Fainelli
2012-10-05 16:20 ` [PATCH 21/32 v3] USB: OHCI: remove Netlogic XLS " Florian Fainelli
2012-10-05 16:20 ` [PATCH 22/32 v3] sh: convert boards to use the " Florian Fainelli
2012-10-05 16:20 ` [PATCH 23/32 v3] USB: OHCI: remove OHCI SH " Florian Fainelli
2012-10-05 16:20 ` [PATCH 24/32 v3] MIPS: Alchemy: use the OHCI " Florian Fainelli
2012-10-05 16:20 ` [PATCH 25/32 v3] USB: OHCI: remove Alchemy " Florian Fainelli
2012-10-05 16:20 ` [PATCH 26/32] USB: move common alchemy USB routines to arch/mips/alchemy/common.c Florian Fainelli
2012-10-05 16:20 ` [PATCH 27/32] USB: EHCI: make ehci-platform use dev_err() instead of pr_err() Florian Fainelli
2012-10-05 16:21 ` [PATCH 28/32] USB: OHCI: make ohci-platform " Florian Fainelli
2012-10-05 16:21 ` [PATCH 29/32] USB: EHCI: fix typo in ehci-platform driver on the word "resource" Florian Fainelli
2012-10-05 16:21 ` [PATCH 30/32] USB: OHCI: fix typo in ohci-platform " Florian Fainelli
2012-10-05 16:21 ` [PATCH 31/32] USB: EHCI: make ehci-platform use devm_{ioremap,request_mem_region} helpers Florian Fainelli
2012-10-05 16:28 ` Florian Fainelli
2012-10-05 17:07 ` [PATCH 31/32 v2] USB: EHCI: make ehci-platform use devm_request_and_ioremap helper Florian Fainelli
2012-10-05 16:21 ` [PATCH 32/32] USB: OHCI: make ohci-platform use devm_{ioremap,request_mem_region} helpers Florian Fainelli
2012-10-05 17:08 ` [PATCH 32/32 v2] USB: OHCI: make ohci-platform use devm_request_and_ioremap helper Florian Fainelli
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=1349454064-11606-8-git-send-email-florian@openwrt.org \
--to=florian@openwrt.org \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=stern@rowland.harvard.edu \
/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
Powered by JetHome