#include "bfad_drv.h"
#include "bfa_ioc.h"
#include "bfi_reg.h"
#include "bfa_defs.h"
BFA_TRC_FILE(…);
#define bfa_ioc_ct_sync_pos(__ioc) …
#define BFA_IOC_SYNC_REQD_SH …
#define bfa_ioc_ct_get_sync_ackd(__val) …
#define bfa_ioc_ct_clear_sync_ackd(__val) …
#define bfa_ioc_ct_get_sync_reqd(__val) …
#define bfa_ioc_ct_sync_reqd_pos(__ioc) …
static bfa_boolean_t bfa_ioc_ct_firmware_lock(struct bfa_ioc_s *ioc);
static void bfa_ioc_ct_firmware_unlock(struct bfa_ioc_s *ioc);
static void bfa_ioc_ct_notify_fail(struct bfa_ioc_s *ioc);
static void bfa_ioc_ct_ownership_reset(struct bfa_ioc_s *ioc);
static bfa_boolean_t bfa_ioc_ct_sync_start(struct bfa_ioc_s *ioc);
static void bfa_ioc_ct_sync_join(struct bfa_ioc_s *ioc);
static void bfa_ioc_ct_sync_leave(struct bfa_ioc_s *ioc);
static void bfa_ioc_ct_sync_ack(struct bfa_ioc_s *ioc);
static bfa_boolean_t bfa_ioc_ct_sync_complete(struct bfa_ioc_s *ioc);
static void bfa_ioc_ct_set_cur_ioc_fwstate(
struct bfa_ioc_s *ioc, enum bfi_ioc_state fwstate);
static enum bfi_ioc_state bfa_ioc_ct_get_cur_ioc_fwstate(struct bfa_ioc_s *ioc);
static void bfa_ioc_ct_set_alt_ioc_fwstate(
struct bfa_ioc_s *ioc, enum bfi_ioc_state fwstate);
static enum bfi_ioc_state bfa_ioc_ct_get_alt_ioc_fwstate(struct bfa_ioc_s *ioc);
static struct bfa_ioc_hwif_s hwif_ct;
static struct bfa_ioc_hwif_s hwif_ct2;
static bfa_boolean_t
bfa_ioc_ct_firmware_lock(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct_firmware_unlock(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct_notify_fail(struct bfa_ioc_s *ioc)
{ … }
static struct { … } ct_fnreg[] = …;
static struct { … } ct_p0reg[] = …;
static struct { … } ct_p1reg[] = …;
static struct { … }
ct2_reg[] = …;
static void
bfa_ioc_ct_reg_init(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct2_reg_init(struct bfa_ioc_s *ioc)
{ … }
#define FNC_PERS_FN_SHIFT(__fn) …
static void
bfa_ioc_ct_map_port(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct2_map_port(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct_isr_mode_set(struct bfa_ioc_s *ioc, bfa_boolean_t msix)
{ … }
static bfa_boolean_t
bfa_ioc_ct2_lpu_read_stat(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct_ownership_reset(struct bfa_ioc_s *ioc)
{ … }
static bfa_boolean_t
bfa_ioc_ct_sync_start(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct_sync_join(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct_sync_leave(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct_sync_ack(struct bfa_ioc_s *ioc)
{ … }
static bfa_boolean_t
bfa_ioc_ct_sync_complete(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_set_ctx_hwif(struct bfa_ioc_s *ioc, struct bfa_ioc_hwif_s *hwif)
{ … }
void
bfa_ioc_set_ct_hwif(struct bfa_ioc_s *ioc)
{ … }
void
bfa_ioc_set_ct2_hwif(struct bfa_ioc_s *ioc)
{ … }
#define HOSTFN_MSIX_DEFAULT …
#define HOSTFN_MSIX_VT_INDEX_MBOX_ERR …
#define HOSTFN_MSIX_VT_OFST_NUMVT …
#define __MSIX_VT_NUMVT__MK …
#define __MSIX_VT_NUMVT__SH …
#define __MSIX_VT_NUMVT_(_v) …
#define __MSIX_VT_OFST_ …
void
bfa_ioc_ct2_poweron(struct bfa_ioc_s *ioc)
{ … }
bfa_status_t
bfa_ioc_ct_pll_init(void __iomem *rb, enum bfi_asic_mode mode)
{ … }
static void
bfa_ioc_ct2_sclk_init(void __iomem *rb)
{ … }
static void
bfa_ioc_ct2_lclk_init(void __iomem *rb)
{ … }
static void
bfa_ioc_ct2_mem_init(void __iomem *rb)
{ … }
static void
bfa_ioc_ct2_mac_reset(void __iomem *rb)
{ … }
static void
bfa_ioc_ct2_enable_flash(void __iomem *rb)
{ … }
#define CT2_NFC_MAX_DELAY …
#define CT2_NFC_PAUSE_MAX_DELAY …
#define CT2_NFC_VER_VALID …
#define CT2_NFC_STATE_RUNNING …
#define BFA_IOC_PLL_POLL …
static bfa_boolean_t
bfa_ioc_ct2_nfc_halted(void __iomem *rb)
{ … }
static void
bfa_ioc_ct2_nfc_halt(void __iomem *rb)
{ … }
static void
bfa_ioc_ct2_nfc_resume(void __iomem *rb)
{ … }
static void
bfa_ioc_ct2_clk_reset(void __iomem *rb)
{ … }
static void
bfa_ioc_ct2_nfc_clk_reset(void __iomem *rb)
{ … }
static void
bfa_ioc_ct2_wait_till_nfc_running(void __iomem *rb)
{ … }
bfa_status_t
bfa_ioc_ct2_pll_init(void __iomem *rb, enum bfi_asic_mode mode)
{ … }
static void
bfa_ioc_ct_set_cur_ioc_fwstate(struct bfa_ioc_s *ioc,
enum bfi_ioc_state fwstate)
{ … }
static enum bfi_ioc_state
bfa_ioc_ct_get_cur_ioc_fwstate(struct bfa_ioc_s *ioc)
{ … }
static void
bfa_ioc_ct_set_alt_ioc_fwstate(struct bfa_ioc_s *ioc,
enum bfi_ioc_state fwstate)
{ … }
static enum bfi_ioc_state
bfa_ioc_ct_get_alt_ioc_fwstate(struct bfa_ioc_s *ioc)
{ … }