diff options
author | Alexander Shishkin <alexander.shishkin@linux.intel.com> | 2012-05-11 10:25:55 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-05-11 19:59:35 -0400 |
commit | bd841986e4e1fe60fe97da45be5139f173c5188e (patch) | |
tree | 4fb3a19474eedd0c6775520a1f180171bafd228e /drivers/usb/chipidea | |
parent | eb70e5ab8f95a81283623c03d2c99dfc59fcb319 (diff) |
usb: chipidea: add power_budget limit for ehci to platform data
Some implementations need this limitation to work correctly.
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/chipidea')
-rw-r--r-- | drivers/usb/chipidea/ci13xxx_pci.c | 8 | ||||
-rw-r--r-- | drivers/usb/chipidea/host.c | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/drivers/usb/chipidea/ci13xxx_pci.c b/drivers/usb/chipidea/ci13xxx_pci.c index f190140cf612..e3dab27f5c75 100644 --- a/drivers/usb/chipidea/ci13xxx_pci.c +++ b/drivers/usb/chipidea/ci13xxx_pci.c | |||
@@ -33,6 +33,12 @@ struct ci13xxx_udc_driver langwell_pci_driver = { | |||
33 | .capoffset = 0, | 33 | .capoffset = 0, |
34 | }; | 34 | }; |
35 | 35 | ||
36 | struct ci13xxx_udc_driver penwell_pci_driver = { | ||
37 | .name = UDC_DRIVER_NAME, | ||
38 | .capoffset = 0, | ||
39 | .power_budget = 200, | ||
40 | }; | ||
41 | |||
36 | /** | 42 | /** |
37 | * ci13xxx_pci_probe: PCI probe | 43 | * ci13xxx_pci_probe: PCI probe |
38 | * @pdev: USB device controller being probed | 44 | * @pdev: USB device controller being probed |
@@ -153,7 +159,7 @@ static DEFINE_PCI_DEVICE_TABLE(ci13xxx_pci_id_table) = { | |||
153 | }, | 159 | }, |
154 | { | 160 | { |
155 | PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x0829), | 161 | PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x0829), |
156 | .driver_data = (kernel_ulong_t)&langwell_pci_driver, | 162 | .driver_data = (kernel_ulong_t)&penwell_pci_driver, |
157 | }, | 163 | }, |
158 | { 0, 0, 0, 0, 0, 0, 0 /* end: all zeroes */ } | 164 | { 0, 0, 0, 0, 0, 0, 0 /* end: all zeroes */ } |
159 | }; | 165 | }; |
diff --git a/drivers/usb/chipidea/host.c b/drivers/usb/chipidea/host.c index 8c8362c89a8c..0cffcfe5ce53 100644 --- a/drivers/usb/chipidea/host.c +++ b/drivers/usb/chipidea/host.c | |||
@@ -116,6 +116,8 @@ static int host_start(struct ci13xxx *ci) | |||
116 | hcd->regs = ci->hw_bank.abs; | 116 | hcd->regs = ci->hw_bank.abs; |
117 | hcd->has_tt = 1; | 117 | hcd->has_tt = 1; |
118 | 118 | ||
119 | hcd->power_budget = ci->udc_driver->power_budget; | ||
120 | |||
119 | ehci = hcd_to_ehci(hcd); | 121 | ehci = hcd_to_ehci(hcd); |
120 | ehci->caps = ci->hw_bank.cap; | 122 | ehci->caps = ci->hw_bank.cap; |
121 | ehci->has_hostpc = ci->hw_bank.lpm; | 123 | ehci->has_hostpc = ci->hw_bank.lpm; |