aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wimax/i2400m/i2400m-usb.h
diff options
context:
space:
mode:
authorDirk Brandewie <dirk.j.brandewie@intel.com>2009-08-12 14:29:46 -0400
committerInaky Perez-Gonzalez <inaky@linux.intel.com>2009-10-19 02:55:44 -0400
commit2093586de29418820b89aae05746511392f8ad73 (patch)
treeb5d021b77a886380e3ac529e6a837b063cff0779 /drivers/net/wimax/i2400m/i2400m-usb.h
parent8bec9a5efd5691c5a32d85da1da09643290ebb72 (diff)
wimax/i2400m: USB driver uses a configurable endpoint map
Newer generations of the i2400m USB WiMAX device use a different endpoint map; in order to make it easy to support it, we make the endpoint-to-function mapeable instead of static. Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com> Signed-off-by: Inaky Perez-Gonzalez <inaky@linux.intel.com>
Diffstat (limited to 'drivers/net/wimax/i2400m/i2400m-usb.h')
-rw-r--r--drivers/net/wimax/i2400m/i2400m-usb.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/net/wimax/i2400m/i2400m-usb.h b/drivers/net/wimax/i2400m/i2400m-usb.h
index 79c37534c200..f73a067e0668 100644
--- a/drivers/net/wimax/i2400m/i2400m-usb.h
+++ b/drivers/net/wimax/i2400m/i2400m-usb.h
@@ -88,6 +88,13 @@ struct edc {
88 u16 errorcount; 88 u16 errorcount;
89}; 89};
90 90
91struct i2400m_endpoint_cfg {
92 unsigned char bulk_out;
93 unsigned char notification;
94 unsigned char reset_cold;
95 unsigned char bulk_in;
96};
97
91static inline void edc_init(struct edc *edc) 98static inline void edc_init(struct edc *edc)
92{ 99{
93 edc->timestart = jiffies; 100 edc->timestart = jiffies;
@@ -141,12 +148,6 @@ enum {
141 I2400MU_MAX_NOTIFICATION_LEN = 256, 148 I2400MU_MAX_NOTIFICATION_LEN = 256,
142 I2400MU_BLK_SIZE = 16, 149 I2400MU_BLK_SIZE = 16,
143 I2400MU_PL_SIZE_MAX = 0x3EFF, 150 I2400MU_PL_SIZE_MAX = 0x3EFF,
144
145 /* Endpoints */
146 I2400MU_EP_BULK_OUT = 0,
147 I2400MU_EP_NOTIFICATION,
148 I2400MU_EP_RESET_COLD,
149 I2400MU_EP_BULK_IN,
150}; 151};
151 152
152 153
@@ -216,6 +217,7 @@ struct i2400mu {
216 struct usb_device *usb_dev; 217 struct usb_device *usb_dev;
217 struct usb_interface *usb_iface; 218 struct usb_interface *usb_iface;
218 struct edc urb_edc; /* Error density counter */ 219 struct edc urb_edc; /* Error density counter */
220 struct i2400m_endpoint_cfg endpoint_cfg;
219 221
220 struct urb *notif_urb; 222 struct urb *notif_urb;
221 struct task_struct *tx_kthread; 223 struct task_struct *tx_kthread;