#include <linux/firmware.h>
#include <net/bluetooth/bluetooth.h>
#include "rsi_mgmt.h"
#include "rsi_hal.h"
#include "rsi_sdio.h"
#include "rsi_common.h"
static struct ta_metadata metadata_flash_content[] = …;
static struct ta_metadata metadata[] = …;
int rsi_send_pkt_to_bus(struct rsi_common *common, struct sk_buff *skb)
{ … }
int rsi_prepare_mgmt_desc(struct rsi_common *common, struct sk_buff *skb)
{ … }
int rsi_prepare_data_desc(struct rsi_common *common, struct sk_buff *skb)
{ … }
int rsi_send_data_pkt(struct rsi_common *common, struct sk_buff *skb)
{ … }
int rsi_send_mgmt_pkt(struct rsi_common *common,
struct sk_buff *skb)
{ … }
int rsi_send_bt_pkt(struct rsi_common *common, struct sk_buff *skb)
{ … }
int rsi_prepare_beacon(struct rsi_common *common, struct sk_buff *skb)
{ … }
static void bl_cmd_timeout(struct timer_list *t)
{ … }
static int bl_start_cmd_timer(struct rsi_hw *adapter, u32 timeout)
{ … }
static int bl_stop_cmd_timer(struct rsi_hw *adapter)
{ … }
static int bl_write_cmd(struct rsi_hw *adapter, u8 cmd, u8 exp_resp,
u16 *cmd_resp)
{ … }
static int bl_cmd(struct rsi_hw *adapter, u8 cmd, u8 exp_resp, char *str)
{ … }
#define CHECK_SUM_OFFSET …
#define LEN_OFFSET …
#define ADDR_OFFSET …
static int bl_write_header(struct rsi_hw *adapter, u8 *flash_content,
u32 content_size)
{ … }
static u32 read_flash_capacity(struct rsi_hw *adapter)
{ … }
static int ping_pong_write(struct rsi_hw *adapter, u8 cmd, u8 *addr, u32 size)
{ … }
static int auto_fw_upgrade(struct rsi_hw *adapter, u8 *flash_content,
u32 content_size)
{ … }
static int rsi_hal_prepare_fwload(struct rsi_hw *adapter)
{ … }
static int rsi_load_9113_firmware(struct rsi_hw *adapter)
{ … }
static int rsi_load_9116_firmware(struct rsi_hw *adapter)
{ … }
int rsi_hal_device_init(struct rsi_hw *adapter)
{ … }
EXPORT_SYMBOL_GPL(…);