diff options
| author | Azhar Shaikh <azhars@codeaurora.org> | 2015-11-20 12:01:35 -0800 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 21:22:01 -0700 |
| commit | 9c8cd50d9d7b2aea8a34625a020e1b9f071c5a53 (patch) | |
| tree | 0ad2a3726bc41e1db1922a520836d8329348e813 /drivers/usb | |
| parent | 82b8bbead99a4e476ff7d11c360b8d87fd88ff49 (diff) | |
usb: xhci: Set interrupt moderation for host mode to 4000(1ms)
Higher value allows xhci core to moderate interrupts resulting
in fewer interrupts from xhci core. This results in lower CPU
utilization during peak throughput scenarios.
Change-Id: I69548fd9a1adff1b8eafee40c0f92639efd93b2e
Signed-off-by: Devdutt Patnaik <dpatnaik@codeaurora.org>
Signed-off-by: Azhar Shaikh <azhars@codeaurora.org>
Diffstat (limited to 'drivers/usb')
| -rw-r--r-- | drivers/usb/host/xhci.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index 776d59c32bc5..b9577ebbb2b1 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c @@ -35,6 +35,8 @@ #define DRIVER_AUTHOR "Sarah Sharp" #define DRIVER_DESC "'eXtensible' Host Controller (xHC) Driver" +#define XHCI_INT_MODERATION_VAL 4000 + #define PORT_WAKE_BITS (PORT_WKOC_E | PORT_WKDISC_E | PORT_WKCONN_E) /* Some 0.95 hardware can't handle the chain bit on a Link TRB being cleared */ @@ -634,7 +636,7 @@ int xhci_run(struct usb_hcd *hcd) "// Set the interrupt modulation register"); temp = readl(&xhci->ir_set->irq_control); temp &= ~ER_IRQ_INTERVAL_MASK; - temp |= (u32) 160; + temp |= (u32) XHCI_INT_MODERATION_VAL; writel(temp, &xhci->ir_set->irq_control); /* Set the HCD state before we enable the irqs */ |
