blob: 96ca114e88d0e1b843f1816c55c1bba310ee93ad [file] [log] [blame]
Olav Kongas4808a1c2005-04-09 22:57:39 +03001/*
2 * Board initialization code should put one of these into dev->platform_data
3 * and place the isp116x onto platform_bus.
4 */
5
Robert P. J. Daydda43a02008-03-07 13:45:32 -05006#ifndef __LINUX_USB_ISP116X_H
7#define __LINUX_USB_ISP116X_H
8
Olav Kongas4808a1c2005-04-09 22:57:39 +03009struct isp116x_platform_data {
10 /* Enable internal resistors on downstream ports */
11 unsigned sel15Kres:1;
Olav Kongas9d233d92005-08-04 16:54:08 +030012 /* On-chip overcurrent detection */
Olav Kongas4808a1c2005-04-09 22:57:39 +030013 unsigned oc_enable:1;
14 /* INT output polarity */
15 unsigned int_act_high:1;
16 /* INT edge or level triggered */
17 unsigned int_edge_triggered:1;
Olav Kongasd4d62862005-08-04 16:48:19 +030018 /* Enable wakeup by devices on usb bus (e.g. wakeup
19 by attachment/detachment or by device activity
20 such as moving a mouse). When chosen, this option
21 prevents stopping internal clock, increasing
22 thereby power consumption in suspended state. */
Olav Kongas4808a1c2005-04-09 22:57:39 +030023 unsigned remote_wakeup_enable:1;
Olav Kongas4808a1c2005-04-09 22:57:39 +030024 /* Inter-io delay (ns). The chip is picky about access timings; it
25 expects at least:
26 150ns delay between consecutive accesses to DATA_REG,
27 300ns delay between access to ADDR_REG and DATA_REG
28 OE, WE MUST NOT be changed during these intervals
29 */
Greg Kroah-Hartman41dceed2008-01-30 15:21:33 -080030 void (*delay) (struct device *dev, int delay);
Olav Kongas4808a1c2005-04-09 22:57:39 +030031};
Robert P. J. Daydda43a02008-03-07 13:45:32 -050032
33#endif /* __LINUX_USB_ISP116X_H */