diff options
| author | James Morris <james.l.morris@oracle.com> | 2012-05-04 12:46:40 +1000 | 
|---|---|---|
| committer | James Morris <james.l.morris@oracle.com> | 2012-05-04 12:46:40 +1000 | 
| commit | 898bfc1d46bd76f8ea2a0fbd239dd2073efe2aa3 (patch) | |
| tree | e6e666085abe674dbf6292555961fe0a0f2e2d2f /drivers/usb/host/xhci.c | |
| parent | 08162e6a23d476544adfe1164afe9ea8b34ab859 (diff) | |
| parent | 69964ea4c7b68c9399f7977aa5b9aa6539a6a98a (diff) | |
| download | olio-linux-3.10-898bfc1d46bd76f8ea2a0fbd239dd2073efe2aa3.tar.xz olio-linux-3.10-898bfc1d46bd76f8ea2a0fbd239dd2073efe2aa3.zip  | |
Merge tag 'v3.4-rc5' into next
Linux 3.4-rc5
Merge to pull in prerequisite change for Smack:
86812bb0de1a3758dc6c7aa01a763158a7c0638a
Requested by Casey.
Diffstat (limited to 'drivers/usb/host/xhci.c')
| -rw-r--r-- | drivers/usb/host/xhci.c | 12 | 
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index e1963d4a430..36641a7f237 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c @@ -106,6 +106,9 @@ int xhci_halt(struct xhci_hcd *xhci)  			STS_HALT, STS_HALT, XHCI_MAX_HALT_USEC);  	if (!ret)  		xhci->xhc_state |= XHCI_STATE_HALTED; +	else +		xhci_warn(xhci, "Host not halted after %u microseconds.\n", +				XHCI_MAX_HALT_USEC);  	return ret;  } @@ -664,11 +667,11 @@ static void xhci_save_registers(struct xhci_hcd *xhci)  	xhci->s3.dev_nt = xhci_readl(xhci, &xhci->op_regs->dev_notification);  	xhci->s3.dcbaa_ptr = xhci_read_64(xhci, &xhci->op_regs->dcbaa_ptr);  	xhci->s3.config_reg = xhci_readl(xhci, &xhci->op_regs->config_reg); -	xhci->s3.irq_pending = xhci_readl(xhci, &xhci->ir_set->irq_pending); -	xhci->s3.irq_control = xhci_readl(xhci, &xhci->ir_set->irq_control);  	xhci->s3.erst_size = xhci_readl(xhci, &xhci->ir_set->erst_size);  	xhci->s3.erst_base = xhci_read_64(xhci, &xhci->ir_set->erst_base);  	xhci->s3.erst_dequeue = xhci_read_64(xhci, &xhci->ir_set->erst_dequeue); +	xhci->s3.irq_pending = xhci_readl(xhci, &xhci->ir_set->irq_pending); +	xhci->s3.irq_control = xhci_readl(xhci, &xhci->ir_set->irq_control);  }  static void xhci_restore_registers(struct xhci_hcd *xhci) @@ -677,10 +680,11 @@ static void xhci_restore_registers(struct xhci_hcd *xhci)  	xhci_writel(xhci, xhci->s3.dev_nt, &xhci->op_regs->dev_notification);  	xhci_write_64(xhci, xhci->s3.dcbaa_ptr, &xhci->op_regs->dcbaa_ptr);  	xhci_writel(xhci, xhci->s3.config_reg, &xhci->op_regs->config_reg); -	xhci_writel(xhci, xhci->s3.irq_pending, &xhci->ir_set->irq_pending); -	xhci_writel(xhci, xhci->s3.irq_control, &xhci->ir_set->irq_control);  	xhci_writel(xhci, xhci->s3.erst_size, &xhci->ir_set->erst_size);  	xhci_write_64(xhci, xhci->s3.erst_base, &xhci->ir_set->erst_base); +	xhci_write_64(xhci, xhci->s3.erst_dequeue, &xhci->ir_set->erst_dequeue); +	xhci_writel(xhci, xhci->s3.irq_pending, &xhci->ir_set->irq_pending); +	xhci_writel(xhci, xhci->s3.irq_control, &xhci->ir_set->irq_control);  }  static void xhci_set_cmd_ring_deq(struct xhci_hcd *xhci)  |