diff options
author | David Kilroy <kilroyd@googlemail.com> | 2010-05-01 09:05:43 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-05-03 14:53:09 -0400 |
commit | 07cefe7ac983374ee4c369f1d4aee3093bf3b44f (patch) | |
tree | c4db80ac5a3f28bda1a5c93fb9b88b7db728898e /drivers/net/wireless/orinoco/hermes.h | |
parent | fc97431a50962e66c052ec6909d4b2582efd3554 (diff) |
orinoco_usb: implement fw download
This involves some refactorring of the common fw download code to
substitute ezusb versions of various functions.
Note that WPA-enabled firmwares (9.xx series) will not work fully with
orinoco_usb yet.
Signed-off-by: David Kilroy <kilroyd@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/orinoco/hermes.h')
-rw-r--r-- | drivers/net/wireless/orinoco/hermes.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/wireless/orinoco/hermes.h b/drivers/net/wireless/orinoco/hermes.h index aed14ff2d235..9ca34e722b45 100644 --- a/drivers/net/wireless/orinoco/hermes.h +++ b/drivers/net/wireless/orinoco/hermes.h | |||
@@ -393,6 +393,12 @@ struct hermes_ops { | |||
393 | u16 id, u16 offset); | 393 | u16 id, u16 offset); |
394 | int (*bap_pwrite)(struct hermes *hw, int bap, const void *buf, | 394 | int (*bap_pwrite)(struct hermes *hw, int bap, const void *buf, |
395 | int len, u16 id, u16 offset); | 395 | int len, u16 id, u16 offset); |
396 | int (*read_pda)(struct hermes *hw, __le16 *pda, | ||
397 | u32 pda_addr, u16 pda_len); | ||
398 | int (*program_init)(struct hermes *hw, u32 entry_point); | ||
399 | int (*program_end)(struct hermes *hw); | ||
400 | int (*program)(struct hermes *hw, const char *buf, | ||
401 | u32 addr, u32 len); | ||
396 | void (*lock_irqsave)(spinlock_t *lock, unsigned long *flags); | 402 | void (*lock_irqsave)(spinlock_t *lock, unsigned long *flags); |
397 | void (*unlock_irqrestore)(spinlock_t *lock, unsigned long *flags); | 403 | void (*unlock_irqrestore)(spinlock_t *lock, unsigned long *flags); |
398 | void (*lock_irq)(spinlock_t *lock); | 404 | void (*lock_irq)(spinlock_t *lock); |
@@ -406,6 +412,7 @@ typedef struct hermes { | |||
406 | #define HERMES_16BIT_REGSPACING 0 | 412 | #define HERMES_16BIT_REGSPACING 0 |
407 | #define HERMES_32BIT_REGSPACING 1 | 413 | #define HERMES_32BIT_REGSPACING 1 |
408 | u16 inten; /* Which interrupts should be enabled? */ | 414 | u16 inten; /* Which interrupts should be enabled? */ |
415 | bool eeprom_pda; | ||
409 | const struct hermes_ops *ops; | 416 | const struct hermes_ops *ops; |
410 | void *priv; | 417 | void *priv; |
411 | } hermes_t; | 418 | } hermes_t; |