IWX_WRITE
IWX_WRITE(sc, IWX_CSR_CTXT_INFO_ADDR, paddr & 0xffffffff);
IWX_WRITE(sc, IWX_CSR_CTXT_INFO_ADDR + 4, paddr >> 32);
IWX_WRITE(sc, IWX_CSR_IML_DATA_ADDR, paddr & 0xffffffff);
IWX_WRITE(sc, IWX_CSR_IML_DATA_ADDR + 4, paddr >> 32);
IWX_WRITE(sc, IWX_CSR_IML_SIZE_ADDR, sc->sc_fw.iml_len);
IWX_WRITE(sc, IWX_RFH_Q0_FRBDCB_WIDX_TRG, hw & ~7);
IWX_WRITE(sc, IWX_CSR_INT_MASK, 0);
IWX_WRITE(sc, IWX_CSR_INT, r1 | ~sc->sc_intmask);
IWX_WRITE(sc, IWX_RFH_Q0_FRBDCB_WIDX_TRG, 8);
IWX_WRITE(sc, IWX_CSR_FH_INT_STATUS, IWX_CSR_FH_INT_TX_MASK);
IWX_WRITE(sc, IWX_CSR_FH_INT_STATUS, IWX_CSR_FH_INT_RX_MASK);
IWX_WRITE(sc, IWX_CSR_INT, IWX_CSR_INT_BIT_RX_PERIODIC);
IWX_WRITE(sc, IWX_CSR_MSIX_FH_INT_CAUSES_AD, inta_fh);
IWX_WRITE(sc, IWX_CSR_MSIX_HW_INT_CAUSES_AD, inta_hw);
IWX_WRITE(sc, IWX_RFH_Q0_FRBDCB_WIDX_TRG, 8);
IWX_WRITE(sc, IWX_CSR_MSIX_AUTOMASK_ST_AD, 1 << vector);
IWX_WRITE(sc, IWX_CSR_INT_MASK, 0);
IWX_WRITE(sc, IWX_CSR_INT, ~0);
IWX_WRITE(sc, IWX_CSR_FH_INT_STATUS, ~0);
IWX_WRITE(sc, IWX_HBUS_TARG_PRPH_RADDR, ((addr & mask) | (3 << 24)));
IWX_WRITE(sc, IWX_HBUS_TARG_PRPH_WADDR, ((addr & mask) | (3 << 24)));
IWX_WRITE(sc, IWX_HBUS_TARG_PRPH_WDAT, val);
IWX_WRITE(sc, IWX_HBUS_TARG_MEM_RADDR, addr);
IWX_WRITE(sc, IWX_HBUS_TARG_MEM_WADDR, addr);
IWX_WRITE(sc, IWX_HBUS_TARG_MEM_WDAT, val);
IWX_WRITE(sc, IWX_CSR_INT_MASK, sc->sc_intmask);
IWX_WRITE(sc, IWX_CSR_MSIX_FH_INT_MASK_AD,
IWX_WRITE(sc, IWX_CSR_MSIX_HW_INT_MASK_AD,
IWX_WRITE(sc, IWX_CSR_INT_MASK, sc->sc_intmask);
IWX_WRITE(sc, IWX_CSR_MSIX_FH_INT_MASK_AD,
IWX_WRITE(sc, IWX_CSR_MSIX_HW_INT_MASK_AD,
IWX_WRITE(sc, IWX_CSR_INT_MASK, sc->sc_intmask);
IWX_WRITE(sc, IWX_CSR_MSIX_HW_INT_MASK_AD,
IWX_WRITE(sc, IWX_CSR_MSIX_FH_INT_MASK_AD,
IWX_WRITE(sc, IWX_CSR_INT_MASK, sc->sc_intmask);
IWX_WRITE(sc, IWX_CSR_INT_MASK, 0);
IWX_WRITE(sc, IWX_CSR_INT, ~0);
IWX_WRITE(sc, IWX_CSR_FH_INT_STATUS, ~0);
IWX_WRITE(sc, IWX_CSR_MSIX_FH_INT_MASK_AD,
IWX_WRITE(sc, IWX_CSR_MSIX_HW_INT_MASK_AD,
IWX_WRITE(sc, IWX_CSR_DRAM_INT_TBL_REG,
IWX_WRITE(sc, IWX_CSR_INT, ~0);
IWX_WRITE(sc, IWX_CSR_MSIX_FH_INT_MASK_AD, ~0);
IWX_WRITE(sc, IWX_CSR_MSIX_HW_INT_MASK_AD, ~0);
IWX_WRITE(sc, IWX_CSR_HW_IF_CONFIG_REG, val);
IWX_WRITE(sc, IWX_CSR_INT, ~0);
IWX_WRITE(sc, IWX_CSR_UCODE_DRV_GP1_CLR, IWX_CSR_UCODE_SW_BIT_RFKILL);
IWX_WRITE(sc, IWX_CSR_UCODE_DRV_GP1_CLR,
IWX_WRITE(sc, IWX_CSR_INT, ~0);
IWX_WRITE(sc, IWX_HBUS_TARG_WRPTR, ring->qid << 16 | ring->cur_hw);
IWX_WRITE(sc, IWX_HBUS_TARG_WRPTR, ring->qid << 16 | ring->cur_hw);
IWX_WRITE(sc, addr, val);
IWX_WRITE(sc, IWX_CSR_LTR_LONG_VAL_AD, ltr_val);
IWX_WRITE(sc, IWX_CSR_CTXT_INFO_BA, paddr & 0xffffffff);
IWX_WRITE(sc, IWX_CSR_CTXT_INFO_BA + 4, paddr >> 32);
IWX_WRITE(sc, reg, IWX_READ(sc, reg) | (mask))
IWX_WRITE(sc, reg, IWX_READ(sc, reg) & ~(mask))