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>
This commit is contained in:
parent
eb70e5ab8f
commit
bd841986e4
|
@ -33,6 +33,12 @@ struct ci13xxx_udc_driver langwell_pci_driver = {
|
|||
.capoffset = 0,
|
||||
};
|
||||
|
||||
struct ci13xxx_udc_driver penwell_pci_driver = {
|
||||
.name = UDC_DRIVER_NAME,
|
||||
.capoffset = 0,
|
||||
.power_budget = 200,
|
||||
};
|
||||
|
||||
/**
|
||||
* ci13xxx_pci_probe: PCI probe
|
||||
* @pdev: USB device controller being probed
|
||||
|
@ -153,7 +159,7 @@ static DEFINE_PCI_DEVICE_TABLE(ci13xxx_pci_id_table) = {
|
|||
},
|
||||
{
|
||||
PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x0829),
|
||||
.driver_data = (kernel_ulong_t)&langwell_pci_driver,
|
||||
.driver_data = (kernel_ulong_t)&penwell_pci_driver,
|
||||
},
|
||||
{ 0, 0, 0, 0, 0, 0, 0 /* end: all zeroes */ }
|
||||
};
|
||||
|
|
|
@ -116,6 +116,8 @@ static int host_start(struct ci13xxx *ci)
|
|||
hcd->regs = ci->hw_bank.abs;
|
||||
hcd->has_tt = 1;
|
||||
|
||||
hcd->power_budget = ci->udc_driver->power_budget;
|
||||
|
||||
ehci = hcd_to_ehci(hcd);
|
||||
ehci->caps = ci->hw_bank.cap;
|
||||
ehci->has_hostpc = ci->hw_bank.lpm;
|
||||
|
|
|
@ -10,6 +10,7 @@ struct ci13xxx_udc_driver {
|
|||
const char *name;
|
||||
/* offset of the capability registers */
|
||||
uintptr_t capoffset;
|
||||
unsigned power_budget;
|
||||
unsigned long flags;
|
||||
#define CI13XXX_REGS_SHARED BIT(0)
|
||||
#define CI13XXX_REQUIRE_TRANSCEIVER BIT(1)
|
||||
|
|
Loading…
Reference in New Issue