diff options
author | Brian Cavagnolo <brian@cozybit.com> | 2008-07-21 14:02:46 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-08-22 16:29:49 -0400 |
commit | 1556c0f22df77800d2e99342ce354a4ce94c5a0f (patch) | |
tree | 76c8af4251f78f1afc4504135c9d355ca15d4127 /drivers/net/wireless/libertas/if_usb.h | |
parent | 38e3b0d86eaa0bf90a74677b6d6c442ec66daa0c (diff) |
libertas: support boot commands to write persistent firmware and bootloader
Add locking and non-locking versions of if_usb_prog_firmware to support
programming firmware after and before driver bring-up respectively. Add more
suitable error codes for firmware programming process. Add capability checks
for persistent features before attempting to use them.
Based on patches from Brajesh Dave and Priyank Singh.
Signed-off-by: Brian Cavagnolo <brian@cozybit.com>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/libertas/if_usb.h')
-rw-r--r-- | drivers/net/wireless/libertas/if_usb.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/wireless/libertas/if_usb.h b/drivers/net/wireless/libertas/if_usb.h index 5771a83a43f0..5ba0aee0eb2f 100644 --- a/drivers/net/wireless/libertas/if_usb.h +++ b/drivers/net/wireless/libertas/if_usb.h | |||
@@ -30,6 +30,7 @@ struct bootcmd | |||
30 | 30 | ||
31 | #define BOOT_CMD_RESP_OK 0x0001 | 31 | #define BOOT_CMD_RESP_OK 0x0001 |
32 | #define BOOT_CMD_RESP_FAIL 0x0000 | 32 | #define BOOT_CMD_RESP_FAIL 0x0000 |
33 | #define BOOT_CMD_RESP_NOT_SUPPORTED 0x0002 | ||
33 | 34 | ||
34 | struct bootcmdresp | 35 | struct bootcmdresp |
35 | { | 36 | { |
@@ -50,6 +51,10 @@ struct if_usb_card { | |||
50 | uint8_t ep_in; | 51 | uint8_t ep_in; |
51 | uint8_t ep_out; | 52 | uint8_t ep_out; |
52 | 53 | ||
54 | /* bootcmdresp == 0 means command is pending | ||
55 | * bootcmdresp < 0 means error | ||
56 | * bootcmdresp > 0 is a BOOT_CMD_RESP_* from firmware | ||
57 | */ | ||
53 | int8_t bootcmdresp; | 58 | int8_t bootcmdresp; |
54 | 59 | ||
55 | int ep_in_size; | 60 | int ep_in_size; |