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>
This commit is contained in:
committed by
John W. Linville
parent
38e3b0d86e
commit
1556c0f22d
@@ -243,6 +243,9 @@ static inline void lbs_deb_hex(unsigned int grp, const char *prompt, u8 *buf, in
|
||||
|
||||
#define CMD_F_HOSTCMD (1 << 0)
|
||||
#define FW_CAPINFO_WPA (1 << 0)
|
||||
#define FW_CAPINFO_FIRMWARE_UPGRADE (1 << 13)
|
||||
#define FW_CAPINFO_BOOT2_UPGRADE (1<<14)
|
||||
#define FW_CAPINFO_PERSISTENT_CONFIG (1<<15)
|
||||
|
||||
#define KEY_LEN_WPA_AES 16
|
||||
#define KEY_LEN_WPA_TKIP 32
|
||||
@@ -316,7 +319,8 @@ enum PS_STATE {
|
||||
enum DNLD_STATE {
|
||||
DNLD_RES_RECEIVED,
|
||||
DNLD_DATA_SENT,
|
||||
DNLD_CMD_SENT
|
||||
DNLD_CMD_SENT,
|
||||
DNLD_BOOTCMD_SENT,
|
||||
};
|
||||
|
||||
/** LBS_MEDIA_STATE */
|
||||
|
Reference in New Issue
Block a user