cpu_reg
bnx_load_cpu_fw(struct bnx_softc *sc, struct cpu_reg *cpu_reg,
val = REG_RD_IND(sc, cpu_reg->mode);
val |= cpu_reg->mode_value_halt;
REG_WR_IND(sc, cpu_reg->mode, val);
REG_WR_IND(sc, cpu_reg->state, cpu_reg->state_value_clear);
offset = cpu_reg->spad_base + (fw->text_addr - cpu_reg->mips_view_base);
offset = cpu_reg->spad_base + (fw->data_addr - cpu_reg->mips_view_base);
offset = cpu_reg->spad_base + (fw->sbss_addr - cpu_reg->mips_view_base);
offset = cpu_reg->spad_base + (fw->bss_addr - cpu_reg->mips_view_base);
offset = cpu_reg->spad_base +
(fw->rodata_addr - cpu_reg->mips_view_base);
REG_WR_IND(sc, cpu_reg->inst, 0);
REG_WR_IND(sc, cpu_reg->pc, fw->start_addr);
val = REG_RD_IND(sc, cpu_reg->mode);
val &= ~cpu_reg->mode_value_halt;
REG_WR_IND(sc, cpu_reg->state, cpu_reg->state_value_clear);
REG_WR_IND(sc, cpu_reg->mode, val);
struct cpu_reg cpu_reg;
cpu_reg.mode = BNX_RXP_CPU_MODE;
cpu_reg.mode_value_halt = BNX_RXP_CPU_MODE_SOFT_HALT;
cpu_reg.mode_value_sstep = BNX_RXP_CPU_MODE_STEP_ENA;
cpu_reg.state = BNX_RXP_CPU_STATE;
cpu_reg.state_value_clear = 0xffffff;
cpu_reg.gpr0 = BNX_RXP_CPU_REG_FILE;
cpu_reg.evmask = BNX_RXP_CPU_EVENT_MASK;
cpu_reg.pc = BNX_RXP_CPU_PROGRAM_COUNTER;
cpu_reg.inst = BNX_RXP_CPU_INSTRUCTION;
cpu_reg.bp = BNX_RXP_CPU_HW_BREAKPOINT;
cpu_reg.spad_base = BNX_RXP_SCRATCH;
cpu_reg.mips_view_base = 0x8000000;
bnx_load_cpu_fw(sc, &cpu_reg, &fw);
cpu_reg.mode = BNX_TXP_CPU_MODE;
cpu_reg.mode_value_halt = BNX_TXP_CPU_MODE_SOFT_HALT;
cpu_reg.mode_value_sstep = BNX_TXP_CPU_MODE_STEP_ENA;
cpu_reg.state = BNX_TXP_CPU_STATE;
cpu_reg.state_value_clear = 0xffffff;
cpu_reg.gpr0 = BNX_TXP_CPU_REG_FILE;
cpu_reg.evmask = BNX_TXP_CPU_EVENT_MASK;
cpu_reg.pc = BNX_TXP_CPU_PROGRAM_COUNTER;
cpu_reg.inst = BNX_TXP_CPU_INSTRUCTION;
cpu_reg.bp = BNX_TXP_CPU_HW_BREAKPOINT;
cpu_reg.spad_base = BNX_TXP_SCRATCH;
cpu_reg.mips_view_base = 0x8000000;
bnx_load_cpu_fw(sc, &cpu_reg, &fw);
cpu_reg.mode = BNX_TPAT_CPU_MODE;
cpu_reg.mode_value_halt = BNX_TPAT_CPU_MODE_SOFT_HALT;
cpu_reg.mode_value_sstep = BNX_TPAT_CPU_MODE_STEP_ENA;
cpu_reg.state = BNX_TPAT_CPU_STATE;
cpu_reg.state_value_clear = 0xffffff;
cpu_reg.gpr0 = BNX_TPAT_CPU_REG_FILE;
cpu_reg.evmask = BNX_TPAT_CPU_EVENT_MASK;
cpu_reg.pc = BNX_TPAT_CPU_PROGRAM_COUNTER;
cpu_reg.inst = BNX_TPAT_CPU_INSTRUCTION;
cpu_reg.bp = BNX_TPAT_CPU_HW_BREAKPOINT;
cpu_reg.spad_base = BNX_TPAT_SCRATCH;
cpu_reg.mips_view_base = 0x8000000;
bnx_load_cpu_fw(sc, &cpu_reg, &fw);
cpu_reg.mode = BNX_COM_CPU_MODE;
cpu_reg.mode_value_halt = BNX_COM_CPU_MODE_SOFT_HALT;
cpu_reg.mode_value_sstep = BNX_COM_CPU_MODE_STEP_ENA;
cpu_reg.state = BNX_COM_CPU_STATE;
cpu_reg.state_value_clear = 0xffffff;
cpu_reg.gpr0 = BNX_COM_CPU_REG_FILE;
cpu_reg.evmask = BNX_COM_CPU_EVENT_MASK;
cpu_reg.pc = BNX_COM_CPU_PROGRAM_COUNTER;
cpu_reg.inst = BNX_COM_CPU_INSTRUCTION;
cpu_reg.bp = BNX_COM_CPU_HW_BREAKPOINT;
cpu_reg.spad_base = BNX_COM_SCRATCH;
cpu_reg.mips_view_base = 0x8000000;
bnx_load_cpu_fw(sc, &cpu_reg, &fw);
void bnx_load_cpu_fw(struct bnx_softc *, struct cpu_reg *,