|
|
|
|
|
|
|
/*
|
|
|
|
* Board initialization code should put one of these into dev->platform_data
|
|
|
|
* and place the isp116x onto platform_bus.
|
|
|
|
*/
|
|
|
|
|
|
|
|
struct isp116x_platform_data {
|
|
|
|
/* Enable internal resistors on downstream ports */
|
|
|
|
unsigned sel15Kres:1;
|
|
|
|
/* On-chip overcurrent detection */
|
|
|
|
unsigned oc_enable:1;
|
|
|
|
/* INT output polarity */
|
|
|
|
unsigned int_act_high:1;
|
|
|
|
/* INT edge or level triggered */
|
|
|
|
unsigned int_edge_triggered:1;
|
|
|
|
/* Enable wakeup by devices on usb bus (e.g. wakeup
|
|
|
|
by attachment/detachment or by device activity
|
|
|
|
such as moving a mouse). When chosen, this option
|
|
|
|
prevents stopping internal clock, increasing
|
|
|
|
thereby power consumption in suspended state. */
|
|
|
|
unsigned remote_wakeup_enable:1;
|
|
|
|
/* Inter-io delay (ns). The chip is picky about access timings; it
|
|
|
|
expects at least:
|
|
|
|
150ns delay between consecutive accesses to DATA_REG,
|
|
|
|
300ns delay between access to ADDR_REG and DATA_REG
|
|
|
|
OE, WE MUST NOT be changed during these intervals
|
|
|
|
*/
|
|
|
|
void (*delay) (struct device * dev, int delay);
|
|
|
|
};
|