diff options
Diffstat (limited to 'drivers/usb/host')
| -rw-r--r-- | drivers/usb/host/ehci-hcd.c | 7 | ||||
| -rw-r--r-- | drivers/usb/host/ehci.h | 6 | 
2 files changed, 12 insertions, 1 deletions
| diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c index ef5afc22b..b6422d7d7 100644 --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c @@ -255,6 +255,13 @@ static int ehci_reset(void)  #endif  		ehci_writel(reg_ptr, tmp);  	} + +#ifdef CONFIG_USB_EHCI_TXFIFO_THRESH +	cmd = ehci_readl(&hcor->or_txfilltuning); +	cmd &= ~TXFIFO_THRESH(0x3f); +	cmd |= TXFIFO_THRESH(CONFIG_USB_EHCI_TXFIFO_THRESH); +	ehci_writel(&hcor->or_txfilltuning, cmd); +#endif  out:  	return ret;  } diff --git a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h index 3d0ad0c85..cc00ce428 100644 --- a/drivers/usb/host/ehci.h +++ b/drivers/usb/host/ehci.h @@ -80,7 +80,11 @@ struct ehci_hcor {  	uint32_t or_ctrldssegment;  	uint32_t or_periodiclistbase;  	uint32_t or_asynclistaddr; -	uint32_t _reserved_[9]; +	uint32_t _reserved_0_; +	uint32_t or_burstsize; +	uint32_t or_txfilltuning; +#define TXFIFO_THRESH(p)		((p & 0x3f) << 16) +	uint32_t _reserved_1_[6];  	uint32_t or_configflag;  #define FLAG_CF		(1 << 0)	/* true:  we'll support "high speed" */  	uint32_t or_portsc[CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS]; |