mfi_softc
mfi_get_controller_info(struct mfi_softc *sc)
static int mfi_add_sys_pd(struct mfi_softc *sc, int);
static struct mfi_command * mfi_bio_command(struct mfi_softc *);
mfi_get_log_state(struct mfi_softc *sc, struct mfi_evt_log_state **log_state)
static struct mfi_command *mfi_build_ldio(struct mfi_softc *,struct bio*);
static struct mfi_command *mfi_build_syspdio(struct mfi_softc *,struct bio*);
static int mfi_send_frame(struct mfi_softc *, struct mfi_command *);
mfi_aen_setup(struct mfi_softc *sc, uint32_t seq_start)
static int mfi_std_send_frame(struct mfi_softc *, struct mfi_command *);
static int mfi_abort(struct mfi_softc *, struct mfi_command **);
mfi_wait_command(struct mfi_softc *sc, struct mfi_command *cm)
static int mfi_user_command(struct mfi_softc *,
mfi_free(struct mfi_softc *sc)
static void mfi_enable_intr_xscale(struct mfi_softc *sc);
static void mfi_enable_intr_ppc(struct mfi_softc *sc);
static int32_t mfi_read_fw_status_xscale(struct mfi_softc *sc);
static int32_t mfi_read_fw_status_ppc(struct mfi_softc *sc);
static int mfi_check_clear_intr_xscale(struct mfi_softc *sc);
static int mfi_check_clear_intr_ppc(struct mfi_softc *sc);
static void mfi_issue_cmd_xscale(struct mfi_softc *sc, bus_addr_t bus_add,
static void mfi_issue_cmd_ppc(struct mfi_softc *sc, bus_addr_t bus_add,
static int mfi_config_lock(struct mfi_softc *sc, uint32_t opcode);
static void mfi_config_unlock(struct mfi_softc *sc, int locked);
struct mfi_softc *sc;
static int mfi_check_command_pre(struct mfi_softc *sc, struct mfi_command *cm);
sc = (struct mfi_softc *)arg;
static void mfi_check_command_post(struct mfi_softc *sc, struct mfi_command *cm);
struct mfi_softc *sc;
static int mfi_check_for_sscd(struct mfi_softc *sc, struct mfi_command *cm);
sc = (struct mfi_softc *)arg;
mfi_shutdown(struct mfi_softc *sc)
mfi_syspdprobe(struct mfi_softc *sc)
mfi_ldprobe(struct mfi_softc *sc)
mfi_decode_evt(struct mfi_softc *sc, struct mfi_evt_detail *detail)
mfi_queue_evt(struct mfi_softc *sc, struct mfi_evt_detail *detail)
struct mfi_softc *sc;
mfi_aen_register(struct mfi_softc *sc, int seq, int locale)
struct mfi_softc *sc;
mfi_parse_entries(struct mfi_softc *sc, int start_seq, int stop_seq)
mfi_enable_intr_xscale(struct mfi_softc *sc)
mfi_enable_intr_ppc(struct mfi_softc *sc)
mfi_add_ld(struct mfi_softc *sc, int id)
struct mfi_softc *sc;
static int mfi_add_sys_pd(struct mfi_softc *sc, int id)
struct mfi_softc *sc;
mfi_read_fw_status_xscale(struct mfi_softc *sc)
mfi_bio_command(struct mfi_softc *sc)
mfi_read_fw_status_ppc(struct mfi_softc *sc)
mfi_build_syspdio(struct mfi_softc *sc, struct bio *bio)
mfi_check_clear_intr_xscale(struct mfi_softc *sc)
mfi_build_ldio(struct mfi_softc *sc, struct bio *bio)
struct mfi_softc *sc;
mfi_check_clear_intr_ppc(struct mfi_softc *sc)
mfi_startio(struct mfi_softc *sc)
mfi_mapcmd(struct mfi_softc *sc, struct mfi_command *cm)
struct mfi_softc *sc;
mfi_send_frame(struct mfi_softc *sc, struct mfi_command *cm)
mfi_std_send_frame(struct mfi_softc *sc, struct mfi_command *cm)
mfi_complete(struct mfi_softc *sc, struct mfi_command *cm)
mfi_issue_cmd_xscale(struct mfi_softc *sc, bus_addr_t bus_add, uint32_t frame_cnt)
mfi_abort(struct mfi_softc *sc, struct mfi_command **cm_abort)
mfi_issue_cmd_ppc(struct mfi_softc *sc, bus_addr_t bus_add, uint32_t frame_cnt)
mfi_dump_blocks(struct mfi_softc *sc, int id, uint64_t lba, void *virt,
mfi_dump_syspd_blocks(struct mfi_softc *sc, int id, uint64_t lba, void *virt,
struct mfi_softc *sc;
mfi_transition_firmware(struct mfi_softc *sc)
struct mfi_softc *sc;
mfi_config_lock(struct mfi_softc *sc, uint32_t opcode)
mfi_config_unlock(struct mfi_softc *sc, int locked)
mfi_check_command_pre(struct mfi_softc *sc, struct mfi_command *cm)
mfi_check_command_post(struct mfi_softc *sc, struct mfi_command *cm)
mfi_check_for_sscd(struct mfi_softc *sc, struct mfi_command *cm)
mfi_stp_cmd(struct mfi_softc *sc, struct mfi_command *cm,caddr_t arg)
mfi_user_command(struct mfi_softc *sc, struct mfi_ioc_passthru *ioc)
struct mfi_softc *sc;
struct mfi_softc *sc;
mfi_attach(struct mfi_softc *sc)
struct mfi_softc *sc;
struct mfi_softc *sc;
struct mfi_softc *sc = (struct mfi_softc *)data;
mfi_alloc_commands(struct mfi_softc *sc)
static int mfi_alloc_commands(struct mfi_softc *);
static int mfi_comms_init(struct mfi_softc *);
static int mfi_get_controller_info(struct mfi_softc *);
static int mfi_get_log_state(struct mfi_softc *,
static int mfi_parse_entries(struct mfi_softc *, int, int);
mfi_dcmd_command(struct mfi_softc *sc, struct mfi_command **cmp,
static void mfi_ldprobe(struct mfi_softc *sc);
static void mfi_syspdprobe(struct mfi_softc *sc);
mfi_comms_init(struct mfi_softc *sc)
static int mfi_aen_register(struct mfi_softc *sc, int seq, int locale);
static int mfi_add_ld(struct mfi_softc *sc, int);
struct mfi_softc *mfisc;
struct mfi_softc *mfisc = sc->mfi_sc;
mfip_cam_rescan(struct mfi_softc *sc, uint32_t tid)
struct mfi_softc *mfisc = sc->mfi_sc;
struct mfi_softc *mfi_sc;
static void mfip_cam_rescan(struct mfi_softc *, uint32_t tid);
mfi_print_ldio(struct mfi_softc *sc, device_t dev, struct mfi_command *cm)
mfi_print_dcmd(struct mfi_softc *sc, device_t dev, struct mfi_command *cm)
mfi_print_generic_frame(struct mfi_softc *sc, struct mfi_command *cm)
struct mfi_softc *sc;
mfi_dump_cmds(struct mfi_softc *sc)
mfi_validate_sg(struct mfi_softc *sc, struct mfi_command *cm,
struct mfi_softc *controller;
struct mfi_softc *parent_sc;
sizeof(struct mfi_softc)
struct mfi_softc *sc;
struct mfi_softc *sc;
mfi_pci_free(struct mfi_softc *sc)
static void mfi_pci_free(struct mfi_softc *);
struct mfi_softc *controller;
struct mfi_softc *parent_sc;
mfi_build_and_issue_cmd(struct mfi_softc *sc, struct mfi_command *mfi_cmd)
mfi_tbolt_build_mpt_cmd(struct mfi_softc *sc, struct mfi_command *cmd)
mfi_tbolt_read_fw_status_ppc(struct mfi_softc *sc)
mfi_tbolt_send_frame(struct mfi_softc *sc, struct mfi_command *cm)
mfi_tbolt_check_clear_intr_ppc(struct mfi_softc *sc)
mfi_issue_pending_cmds_again(struct mfi_softc *sc)
mfi_kill_hba(struct mfi_softc *sc)
struct mfi_softc *sc= (struct mfi_softc *)arg;
mfi_tbolt_sync_map_info(struct mfi_softc *sc)
mfi_tbolt_issue_cmd_ppc(struct mfi_softc *sc, bus_addr_t bus_add,
struct mfi_softc *sc;
mfi_queue_map_sync(struct mfi_softc *sc)
struct mfi_softc *sc;
mfi_tbolt_adp_reset(struct mfi_softc *sc)
mfi_tbolt_init_globals(struct mfi_softc *sc)
mfi_tbolt_get_memory_requirement(struct mfi_softc *sc)
mfi_tbolt_init_desc_pool(struct mfi_softc *sc, uint8_t* mem_location,
mfi_tbolt_init_MFI_queue(struct mfi_softc *sc)
mfi_tbolt_alloc_cmd(struct mfi_softc *sc)
mfi_tbolt_reset(struct mfi_softc *sc)
struct mfi_cmd_tbolt *mfi_tbolt_get_cmd(struct mfi_softc *sc, struct mfi_command *);
struct mfi_softc *sc = (struct mfi_softc *)arg;
mfi_tbolt_get_request_descriptor(struct mfi_softc *sc, uint16_t index);
void mfi_tbolt_complete_cmd(struct mfi_softc *sc);
int mfi_tbolt_build_io(struct mfi_softc *sc, struct mfi_command *mfi_cmd,
union mfi_mpi2_request_descriptor *mfi_tbolt_build_mpt_cmd(struct mfi_softc
mfi_tbolt_return_cmd(struct mfi_softc *sc, struct mfi_cmd_tbolt *tbolt_cmd,
mfi_tbolt_complete_cmd(struct mfi_softc *sc)
mfi_build_mpt_pass_thru(struct mfi_softc *sc, struct mfi_command *mfi_cmd);
union mfi_mpi2_request_descriptor *mfi_build_and_issue_cmd(struct mfi_softc
void mfi_tbolt_build_ldio(struct mfi_softc *sc, struct mfi_command *mfi_cmd,
static int mfi_tbolt_make_sgl(struct mfi_softc *sc, struct mfi_command
static void mfi_issue_pending_cmds_again (struct mfi_softc *sc);
mfi_tbolt_get_cmd(struct mfi_softc *sc, struct mfi_command *mfi_cmd)
static void mfi_kill_hba (struct mfi_softc *sc);
mfi_tbolt_get_request_descriptor(struct mfi_softc *sc, uint16_t index)
static void mfi_queue_map_sync(struct mfi_softc *sc);
mfi_build_mpt_pass_thru(struct mfi_softc *sc, struct mfi_command *mfi_cmd)
mfi_tbolt_build_ldio(struct mfi_softc *sc, struct mfi_command *mfi_cmd,
mfi_tbolt_build_io(struct mfi_softc *sc, struct mfi_command *mfi_cmd,
mfi_tbolt_enable_intr_ppc(struct mfi_softc *sc)
mfi_tbolt_make_sgl(struct mfi_softc *sc, struct mfi_command *mfi_cmd,
mfi_tbolt_disable_intr_ppc(struct mfi_softc *sc)
struct mfi_softc *ld_controller;
struct mfi_softc *pd_controller;
void (*mfi_cam_rescan_cb)(struct mfi_softc *,
void (*mfi_enable_intr)(struct mfi_softc *sc);
void (*mfi_disable_intr)(struct mfi_softc *sc);
int32_t (*mfi_read_fw_status)(struct mfi_softc *sc);
int (*mfi_check_clear_intr)(struct mfi_softc *sc);
void (*mfi_issue_cmd)(struct mfi_softc *sc, bus_addr_t bus_add,
int (*mfi_adp_reset)(struct mfi_softc *sc);
int (*mfi_adp_check_reset)(struct mfi_softc *sc);
extern int mfi_attach(struct mfi_softc *);
extern void mfi_free(struct mfi_softc *);
extern int mfi_shutdown(struct mfi_softc *);
extern void mfi_startio(struct mfi_softc *);
extern int mfi_dump_blocks(struct mfi_softc *, int id, uint64_t, void *, int);
extern int mfi_dump_syspd_blocks(struct mfi_softc *, int id, uint64_t, void *,
extern int mfi_transition_firmware(struct mfi_softc *sc);
extern int mfi_aen_setup(struct mfi_softc *sc, uint32_t seq_start);
extern void mfi_complete(struct mfi_softc *sc, struct mfi_command *cm);
extern int mfi_mapcmd(struct mfi_softc *sc,struct mfi_command *cm);
extern int mfi_wait_command(struct mfi_softc *sc, struct mfi_command *cm);
extern void mfi_tbolt_enable_intr_ppc(struct mfi_softc *);
extern void mfi_tbolt_disable_intr_ppc(struct mfi_softc *);
extern int32_t mfi_tbolt_read_fw_status_ppc(struct mfi_softc *);
extern int32_t mfi_tbolt_check_clear_intr_ppc(struct mfi_softc *);
extern void mfi_tbolt_issue_cmd_ppc(struct mfi_softc *, bus_addr_t, uint32_t);
extern void mfi_tbolt_init_globals(struct mfi_softc*);
extern uint32_t mfi_tbolt_get_memory_requirement(struct mfi_softc *);
extern int mfi_tbolt_init_desc_pool(struct mfi_softc *, uint8_t *, uint32_t);
extern int mfi_tbolt_init_MFI_queue(struct mfi_softc *);
extern int mfi_tbolt_alloc_cmd(struct mfi_softc *sc);
extern int mfi_tbolt_send_frame(struct mfi_softc *sc, struct mfi_command *cm);
extern int mfi_tbolt_adp_reset(struct mfi_softc *sc);
extern int mfi_tbolt_reset(struct mfi_softc *sc);
extern void mfi_tbolt_sync_map_info(struct mfi_softc *sc);
extern int mfi_dcmd_command(struct mfi_softc *, struct mfi_command **,
mfi_initq_ ## name (struct mfi_softc *sc) \
mfi_dequeue_ ## name (struct mfi_softc *sc) \
mfi_initq_bio(struct mfi_softc *sc)
mfi_enqueue_bio(struct mfi_softc *sc, struct bio *bp)
mfi_dequeue_bio(struct mfi_softc *sc)
mfi_print_sense(struct mfi_softc *sc, void *sense)
extern void mfi_dump_cmds(struct mfi_softc *sc);
extern void mfi_validate_sg(struct mfi_softc *, struct mfi_command *,
extern void mfi_tbolt_return_cmd(struct mfi_softc *,
struct mfi_softc;
struct mfi_softc *cm_sc;