#include "qlcnic.h"
#include "qlcnic_hw.h"
struct crb_addr_pair { … };
#define QLCNIC_MAX_CRB_XFORM …
static unsigned int crb_addr_xform[QLCNIC_MAX_CRB_XFORM];
#define crb_addr_transform(name) …
#define QLCNIC_ADDR_ERROR …
static int
qlcnic_check_fw_hearbeat(struct qlcnic_adapter *adapter);
static void crb_addr_transform_setup(void)
{ … }
void qlcnic_release_rx_buffers(struct qlcnic_adapter *adapter)
{ … }
void qlcnic_reset_rx_buffers_list(struct qlcnic_adapter *adapter)
{ … }
void qlcnic_release_tx_buffers(struct qlcnic_adapter *adapter,
struct qlcnic_host_tx_ring *tx_ring)
{ … }
void qlcnic_free_sw_resources(struct qlcnic_adapter *adapter)
{ … }
int qlcnic_alloc_sw_resources(struct qlcnic_adapter *adapter)
{ … }
static u32 qlcnic_decode_crb_addr(u32 addr)
{ … }
#define QLCNIC_MAX_ROM_WAIT_USEC …
static int qlcnic_wait_rom_done(struct qlcnic_adapter *adapter)
{ … }
static int do_rom_fast_read(struct qlcnic_adapter *adapter,
u32 addr, u32 *valp)
{ … }
static int do_rom_fast_read_words(struct qlcnic_adapter *adapter, int addr,
u8 *bytes, size_t size)
{ … }
int
qlcnic_rom_fast_read_words(struct qlcnic_adapter *adapter, int addr,
u8 *bytes, size_t size)
{ … }
int qlcnic_rom_fast_read(struct qlcnic_adapter *adapter, u32 addr, u32 *valp)
{ … }
int qlcnic_pinit_from_rom(struct qlcnic_adapter *adapter)
{ … }
static int qlcnic_cmd_peg_ready(struct qlcnic_adapter *adapter)
{ … }
static int
qlcnic_receive_peg_ready(struct qlcnic_adapter *adapter)
{ … }
int
qlcnic_check_fw_status(struct qlcnic_adapter *adapter)
{ … }
int
qlcnic_setup_idc_param(struct qlcnic_adapter *adapter) { … }
static int qlcnic_get_flt_entry(struct qlcnic_adapter *adapter, u8 region,
struct qlcnic_flt_entry *region_entry)
{ … }
int
qlcnic_check_flash_fw_ver(struct qlcnic_adapter *adapter)
{ … }
static int
qlcnic_has_mn(struct qlcnic_adapter *adapter)
{ … }
static
struct uni_table_desc *qlcnic_get_table_desc(const u8 *unirom, int section)
{ … }
#define FILEHEADER_SIZE …
static int
qlcnic_validate_header(struct qlcnic_adapter *adapter)
{ … }
static int
qlcnic_validate_bootld(struct qlcnic_adapter *adapter)
{ … }
static int
qlcnic_validate_fw(struct qlcnic_adapter *adapter)
{ … }
static int
qlcnic_validate_product_offs(struct qlcnic_adapter *adapter)
{ … }
static int
qlcnic_validate_unified_romimage(struct qlcnic_adapter *adapter)
{ … }
static
struct uni_data_desc *qlcnic_get_data_desc(struct qlcnic_adapter *adapter,
u32 section, u32 idx_offset)
{ … }
static u8 *
qlcnic_get_bootld_offs(struct qlcnic_adapter *adapter)
{ … }
static u8 *
qlcnic_get_fw_offs(struct qlcnic_adapter *adapter)
{ … }
static u32 qlcnic_get_fw_size(struct qlcnic_adapter *adapter)
{ … }
static u32 qlcnic_get_fw_version(struct qlcnic_adapter *adapter)
{ … }
static u32 qlcnic_get_bios_version(struct qlcnic_adapter *adapter)
{ … }
static void qlcnic_rom_lock_recovery(struct qlcnic_adapter *adapter)
{ … }
static int
qlcnic_check_fw_hearbeat(struct qlcnic_adapter *adapter)
{ … }
int
qlcnic_need_fw_reset(struct qlcnic_adapter *adapter)
{ … }
static const char *fw_name[] = …;
int
qlcnic_load_firmware(struct qlcnic_adapter *adapter)
{ … }
static int
qlcnic_validate_firmware(struct qlcnic_adapter *adapter)
{ … }
static void
qlcnic_get_next_fwtype(struct qlcnic_adapter *adapter)
{ … }
void qlcnic_request_firmware(struct qlcnic_adapter *adapter)
{ … }
void
qlcnic_release_firmware(struct qlcnic_adapter *adapter)
{ … }