mvi                14 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_detect_porttype(struct mvs_info *mvi, int i)
mvi                16 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi                18 drivers/scsi/mvsas/mv_64xx.c 	struct mvs_phy *phy = &mvi->phy[i];
mvi                28 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_enable_xmt(struct mvs_info *mvi, int phy_id)
mvi                30 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi                34 drivers/scsi/mvsas/mv_64xx.c 	if (mvi->chip->n_phy <= MVS_SOC_PORTS)
mvi                41 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_phy_hacks(struct mvs_info *mvi)
mvi                43 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi                46 drivers/scsi/mvsas/mv_64xx.c 	mvs_phy_hacks(mvi);
mvi                48 drivers/scsi/mvsas/mv_64xx.c 	if (!(mvi->flags & MVF_FLAG_SOC)) {
mvi                50 drivers/scsi/mvsas/mv_64xx.c 			mvs_write_port_vsr_addr(mvi, i, VSR_PHY_MODE8);
mvi                51 drivers/scsi/mvsas/mv_64xx.c 			mvs_write_port_vsr_data(mvi, i, 0x2F0);
mvi                56 drivers/scsi/mvsas/mv_64xx.c 		for (i = 0; i < mvi->chip->n_phy; i++) {
mvi                57 drivers/scsi/mvsas/mv_64xx.c 			mvs_write_port_vsr_addr(mvi, i, VSR_PHY_MODE7);
mvi                58 drivers/scsi/mvsas/mv_64xx.c 			mvs_write_port_vsr_data(mvi, i, 0x90000000);
mvi                59 drivers/scsi/mvsas/mv_64xx.c 			mvs_write_port_vsr_addr(mvi, i, VSR_PHY_MODE9);
mvi                60 drivers/scsi/mvsas/mv_64xx.c 			mvs_write_port_vsr_data(mvi, i, 0x50f2);
mvi                61 drivers/scsi/mvsas/mv_64xx.c 			mvs_write_port_vsr_addr(mvi, i, VSR_PHY_MODE11);
mvi                62 drivers/scsi/mvsas/mv_64xx.c 			mvs_write_port_vsr_data(mvi, i, 0x0e);
mvi                67 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_stp_reset(struct mvs_info *mvi, u32 phy_id)
mvi                69 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi                72 drivers/scsi/mvsas/mv_64xx.c 	if (!(mvi->flags & MVF_FLAG_SOC)) {
mvi                74 drivers/scsi/mvsas/mv_64xx.c 			pci_read_config_dword(mvi->pdev, PCR_PHY_CTL, &reg);
mvi                76 drivers/scsi/mvsas/mv_64xx.c 			pci_read_config_dword(mvi->pdev, PCR_PHY_CTL2, &reg);
mvi                87 drivers/scsi/mvsas/mv_64xx.c 	if (!(mvi->flags & MVF_FLAG_SOC)) {
mvi                89 drivers/scsi/mvsas/mv_64xx.c 			pci_write_config_dword(mvi->pdev, PCR_PHY_CTL, tmp);
mvi                91 drivers/scsi/mvsas/mv_64xx.c 			pci_write_config_dword(mvi->pdev, PCR_PHY_CTL, reg);
mvi                93 drivers/scsi/mvsas/mv_64xx.c 			pci_write_config_dword(mvi->pdev, PCR_PHY_CTL2, tmp);
mvi                95 drivers/scsi/mvsas/mv_64xx.c 			pci_write_config_dword(mvi->pdev, PCR_PHY_CTL2, reg);
mvi               104 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_phy_reset(struct mvs_info *mvi, u32 phy_id, int hard)
mvi               107 drivers/scsi/mvsas/mv_64xx.c 	tmp = mvs_read_port_irq_stat(mvi, phy_id);
mvi               109 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_port_irq_stat(mvi, phy_id, tmp);
mvi               110 drivers/scsi/mvsas/mv_64xx.c 	tmp = mvs_read_phy_ctl(mvi, phy_id);
mvi               115 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_phy_ctl(mvi, phy_id, tmp);
mvi               118 drivers/scsi/mvsas/mv_64xx.c 			tmp = mvs_read_phy_ctl(mvi, phy_id);
mvi               124 drivers/scsi/mvsas/mv_64xx.c mvs_64xx_clear_srs_irq(struct mvs_info *mvi, u8 reg_set, u8 clear_all)
mvi               126 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               144 drivers/scsi/mvsas/mv_64xx.c static int mvs_64xx_chip_reset(struct mvs_info *mvi)
mvi               146 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               156 drivers/scsi/mvsas/mv_64xx.c 		if (mvi->flags & MVF_PHY_PWR_FIX) {
mvi               157 drivers/scsi/mvsas/mv_64xx.c 			pci_read_config_dword(mvi->pdev, PCR_PHY_CTL, &tmp);
mvi               160 drivers/scsi/mvsas/mv_64xx.c 			pci_write_config_dword(mvi->pdev, PCR_PHY_CTL, tmp);
mvi               162 drivers/scsi/mvsas/mv_64xx.c 			pci_read_config_dword(mvi->pdev, PCR_PHY_CTL2, &tmp);
mvi               165 drivers/scsi/mvsas/mv_64xx.c 			pci_write_config_dword(mvi->pdev, PCR_PHY_CTL2, tmp);
mvi               188 drivers/scsi/mvsas/mv_64xx.c 		dev_printk(KERN_ERR, mvi->dev, "HBA reset failed\n");
mvi               194 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_phy_disable(struct mvs_info *mvi, u32 phy_id)
mvi               196 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               198 drivers/scsi/mvsas/mv_64xx.c 	if (!(mvi->flags & MVF_FLAG_SOC)) {
mvi               206 drivers/scsi/mvsas/mv_64xx.c 		pci_read_config_dword(mvi->pdev, offs, &tmp);
mvi               208 drivers/scsi/mvsas/mv_64xx.c 		pci_write_config_dword(mvi->pdev, offs, tmp);
mvi               216 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_phy_enable(struct mvs_info *mvi, u32 phy_id)
mvi               218 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               220 drivers/scsi/mvsas/mv_64xx.c 	if (!(mvi->flags & MVF_FLAG_SOC)) {
mvi               228 drivers/scsi/mvsas/mv_64xx.c 		pci_read_config_dword(mvi->pdev, offs, &tmp);
mvi               230 drivers/scsi/mvsas/mv_64xx.c 		pci_write_config_dword(mvi->pdev, offs, tmp);
mvi               238 drivers/scsi/mvsas/mv_64xx.c static int mvs_64xx_init(struct mvs_info *mvi)
mvi               240 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               244 drivers/scsi/mvsas/mv_64xx.c 	if (mvi->pdev && mvi->pdev->revision == 0)
mvi               245 drivers/scsi/mvsas/mv_64xx.c 		mvi->flags |= MVF_PHY_PWR_FIX;
mvi               246 drivers/scsi/mvsas/mv_64xx.c 	if (!(mvi->flags & MVF_FLAG_SOC)) {
mvi               247 drivers/scsi/mvsas/mv_64xx.c 		mvs_show_pcie_usage(mvi);
mvi               248 drivers/scsi/mvsas/mv_64xx.c 		tmp = mvs_64xx_chip_reset(mvi);
mvi               266 drivers/scsi/mvsas/mv_64xx.c 	if (!(mvi->flags & MVF_FLAG_SOC)) {
mvi               268 drivers/scsi/mvsas/mv_64xx.c 		pci_read_config_dword(mvi->pdev, PCR_DEV_CTRL, &tmp);
mvi               271 drivers/scsi/mvsas/mv_64xx.c 		pci_write_config_dword(mvi->pdev, PCR_DEV_CTRL, tmp);
mvi               273 drivers/scsi/mvsas/mv_64xx.c 		pci_read_config_dword(mvi->pdev, PCR_PHY_CTL, &tmp);
mvi               276 drivers/scsi/mvsas/mv_64xx.c 		pci_write_config_dword(mvi->pdev, PCR_PHY_CTL, tmp);
mvi               278 drivers/scsi/mvsas/mv_64xx.c 		pci_read_config_dword(mvi->pdev, PCR_PHY_CTL2, &tmp);
mvi               281 drivers/scsi/mvsas/mv_64xx.c 		pci_write_config_dword(mvi->pdev, PCR_PHY_CTL2, tmp);
mvi               298 drivers/scsi/mvsas/mv_64xx.c 	mvs_64xx_phy_hacks(mvi);
mvi               300 drivers/scsi/mvsas/mv_64xx.c 	tmp = mvs_cr32(mvi, CMD_PHY_MODE_21);
mvi               303 drivers/scsi/mvsas/mv_64xx.c 	mvs_cw32(mvi, CMD_PHY_MODE_21, tmp);
mvi               308 drivers/scsi/mvsas/mv_64xx.c 	mw32(MVS_CMD_LIST_LO, mvi->slot_dma);
mvi               309 drivers/scsi/mvsas/mv_64xx.c 	mw32(MVS_CMD_LIST_HI, (mvi->slot_dma >> 16) >> 16);
mvi               311 drivers/scsi/mvsas/mv_64xx.c 	mw32(MVS_RX_FIS_LO, mvi->rx_fis_dma);
mvi               312 drivers/scsi/mvsas/mv_64xx.c 	mw32(MVS_RX_FIS_HI, (mvi->rx_fis_dma >> 16) >> 16);
mvi               315 drivers/scsi/mvsas/mv_64xx.c 	mw32(MVS_TX_LO, mvi->tx_dma);
mvi               316 drivers/scsi/mvsas/mv_64xx.c 	mw32(MVS_TX_HI, (mvi->tx_dma >> 16) >> 16);
mvi               319 drivers/scsi/mvsas/mv_64xx.c 	mw32(MVS_RX_LO, mvi->rx_dma);
mvi               320 drivers/scsi/mvsas/mv_64xx.c 	mw32(MVS_RX_HI, (mvi->rx_dma >> 16) >> 16);
mvi               322 drivers/scsi/mvsas/mv_64xx.c 	for (i = 0; i < mvi->chip->n_phy; i++) {
mvi               325 drivers/scsi/mvsas/mv_64xx.c 		mvs_set_sas_addr(mvi, i, PHYR_ADDR_LO, PHYR_ADDR_HI,
mvi               326 drivers/scsi/mvsas/mv_64xx.c 				cpu_to_be64(mvi->phy[i].dev_sas_addr));
mvi               328 drivers/scsi/mvsas/mv_64xx.c 		mvs_64xx_enable_xmt(mvi, i);
mvi               330 drivers/scsi/mvsas/mv_64xx.c 		mvs_64xx_phy_reset(mvi, i, MVS_HARD_RESET);
mvi               332 drivers/scsi/mvsas/mv_64xx.c 		mvs_64xx_detect_porttype(mvi, i);
mvi               334 drivers/scsi/mvsas/mv_64xx.c 	if (mvi->flags & MVF_FLAG_SOC) {
mvi               345 drivers/scsi/mvsas/mv_64xx.c 	for (i = 0; i < mvi->chip->n_phy; i++) {
mvi               347 drivers/scsi/mvsas/mv_64xx.c 		tmp = mvs_read_port_irq_stat(mvi, i);
mvi               349 drivers/scsi/mvsas/mv_64xx.c 		mvs_write_port_irq_stat(mvi, i, tmp);
mvi               355 drivers/scsi/mvsas/mv_64xx.c 		mvs_write_port_irq_mask(mvi, i, tmp);
mvi               358 drivers/scsi/mvsas/mv_64xx.c 		mvs_update_phyinfo(mvi, i, 1);
mvi               407 drivers/scsi/mvsas/mv_64xx.c static int mvs_64xx_ioremap(struct mvs_info *mvi)
mvi               409 drivers/scsi/mvsas/mv_64xx.c 	if (!mvs_ioremap(mvi, 4, 2))
mvi               414 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_iounmap(struct mvs_info *mvi)
mvi               416 drivers/scsi/mvsas/mv_64xx.c 	mvs_iounmap(mvi->regs);
mvi               417 drivers/scsi/mvsas/mv_64xx.c 	mvs_iounmap(mvi->regs_ex);
mvi               420 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_interrupt_enable(struct mvs_info *mvi)
mvi               422 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               429 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_interrupt_disable(struct mvs_info *mvi)
mvi               431 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               438 drivers/scsi/mvsas/mv_64xx.c static u32 mvs_64xx_isr_status(struct mvs_info *mvi, int irq)
mvi               440 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               443 drivers/scsi/mvsas/mv_64xx.c 	if (!(mvi->flags & MVF_FLAG_SOC)) {
mvi               453 drivers/scsi/mvsas/mv_64xx.c static irqreturn_t mvs_64xx_isr(struct mvs_info *mvi, int irq, u32 stat)
mvi               455 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               460 drivers/scsi/mvsas/mv_64xx.c 	spin_lock(&mvi->lock);
mvi               461 drivers/scsi/mvsas/mv_64xx.c 	mvs_int_full(mvi);
mvi               462 drivers/scsi/mvsas/mv_64xx.c 	spin_unlock(&mvi->lock);
mvi               467 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_command_active(struct mvs_info *mvi, u32 slot_idx)
mvi               470 drivers/scsi/mvsas/mv_64xx.c 	mvs_cw32(mvi, 0x40 + (slot_idx >> 3), 1 << (slot_idx % 32));
mvi               471 drivers/scsi/mvsas/mv_64xx.c 	mvs_cw32(mvi, 0x00 + (slot_idx >> 3), 1 << (slot_idx % 32));
mvi               473 drivers/scsi/mvsas/mv_64xx.c 		tmp = mvs_cr32(mvi, 0x00 + (slot_idx >> 3));
mvi               476 drivers/scsi/mvsas/mv_64xx.c 		tmp = mvs_cr32(mvi, 0x40 + (slot_idx >> 3));
mvi               480 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_issue_stop(struct mvs_info *mvi, enum mvs_port_type type,
mvi               483 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               495 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_free_reg_set(struct mvs_info *mvi, u8 *tfs)
mvi               497 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               520 drivers/scsi/mvsas/mv_64xx.c static u8 mvs_64xx_assign_reg_set(struct mvs_info *mvi, u8 *tfs)
mvi               524 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               531 drivers/scsi/mvsas/mv_64xx.c 	for (i = 0; i < mvi->chip->srs_sz; i++) {
mvi               563 drivers/scsi/mvsas/mv_64xx.c static int mvs_64xx_oob_done(struct mvs_info *mvi, int i)
mvi               566 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_port_cfg_addr(mvi, i,
mvi               568 drivers/scsi/mvsas/mv_64xx.c 	phy_st = mvs_read_port_cfg_data(mvi, i);
mvi               574 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_fix_phy_info(struct mvs_info *mvi, int i,
mvi               578 drivers/scsi/mvsas/mv_64xx.c 	struct mvs_phy *phy = &mvi->phy[i];
mvi               592 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_port_cfg_addr(mvi, i, PHYR_IDENTIFY);
mvi               593 drivers/scsi/mvsas/mv_64xx.c 	phy->dev_info = mvs_read_port_cfg_data(mvi, i);
mvi               595 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_port_cfg_addr(mvi, i, PHYR_ATT_DEV_INFO);
mvi               596 drivers/scsi/mvsas/mv_64xx.c 	phy->att_dev_info = mvs_read_port_cfg_data(mvi, i);
mvi               598 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_port_cfg_addr(mvi, i, PHYR_ATT_ADDR_HI);
mvi               600 drivers/scsi/mvsas/mv_64xx.c 	     (u64) mvs_read_port_cfg_data(mvi, i) << 32;
mvi               601 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_port_cfg_addr(mvi, i, PHYR_ATT_ADDR_LO);
mvi               602 drivers/scsi/mvsas/mv_64xx.c 	phy->att_dev_sas_addr |= mvs_read_port_cfg_data(mvi, i);
mvi               606 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_phy_work_around(struct mvs_info *mvi, int i)
mvi               609 drivers/scsi/mvsas/mv_64xx.c 	struct mvs_phy *phy = &mvi->phy[i];
mvi               610 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_port_vsr_addr(mvi, i, VSR_PHY_MODE6);
mvi               611 drivers/scsi/mvsas/mv_64xx.c 	tmp = mvs_read_port_vsr_data(mvi, i);
mvi               618 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_port_vsr_data(mvi, i, tmp);
mvi               621 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_phy_set_link_rate(struct mvs_info *mvi, u32 phy_id,
mvi               627 drivers/scsi/mvsas/mv_64xx.c 	tmp = mvs_read_phy_ctl(mvi, phy_id);
mvi               639 drivers/scsi/mvsas/mv_64xx.c 	mvs_write_phy_ctl(mvi, phy_id, tmp);
mvi               640 drivers/scsi/mvsas/mv_64xx.c 	mvs_64xx_phy_reset(mvi, phy_id, MVS_HARD_RESET);
mvi               643 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_clear_active_cmds(struct mvs_info *mvi)
mvi               646 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi               656 drivers/scsi/mvsas/mv_64xx.c static u32 mvs_64xx_spi_read_data(struct mvs_info *mvi)
mvi               658 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs_ex;
mvi               662 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_spi_write_data(struct mvs_info *mvi, u32 data)
mvi               664 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs_ex;
mvi               670 drivers/scsi/mvsas/mv_64xx.c static int mvs_64xx_spi_buildcmd(struct mvs_info *mvi,
mvi               694 drivers/scsi/mvsas/mv_64xx.c static int mvs_64xx_spi_issuecmd(struct mvs_info *mvi, u32 cmd)
mvi               696 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs_ex;
mvi               709 drivers/scsi/mvsas/mv_64xx.c static int mvs_64xx_spi_waitdataready(struct mvs_info *mvi, u32 timeout)
mvi               711 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs_ex;
mvi               724 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_fix_dma(struct mvs_info *mvi, u32 phy_mask,
mvi               729 drivers/scsi/mvsas/mv_64xx.c 	dma_addr_t buf_dma = mvi->bulk_buffer_dma;
mvi               739 drivers/scsi/mvsas/mv_64xx.c static void mvs_64xx_tune_interrupt(struct mvs_info *mvi, u32 time)
mvi               741 drivers/scsi/mvsas/mv_64xx.c 	void __iomem *regs = mvi->regs;
mvi                14 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_detect_porttype(struct mvs_info *mvi, int i)
mvi                17 drivers/scsi/mvsas/mv_94xx.c 	struct mvs_phy *phy = &mvi->phy[i];
mvi                20 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_addr(mvi, i, VSR_PHY_MODE3);
mvi                21 drivers/scsi/mvsas/mv_94xx.c 	reg = mvs_read_port_vsr_data(mvi, i);
mvi                35 drivers/scsi/mvsas/mv_94xx.c static void set_phy_tuning(struct mvs_info *mvi, int phy_id,
mvi                54 drivers/scsi/mvsas/mv_94xx.c 	if (mvi->pdev->revision == VANIR_A0_REV)
mvi                80 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_addr(mvi, phy_id, setting_0);
mvi                81 drivers/scsi/mvsas/mv_94xx.c 		tmp = mvs_read_port_vsr_data(mvi, phy_id);
mvi                86 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_data(mvi, phy_id, tmp);
mvi                89 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_addr(mvi, phy_id, setting_1);
mvi                90 drivers/scsi/mvsas/mv_94xx.c 		tmp = mvs_read_port_vsr_data(mvi, phy_id);
mvi                93 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_data(mvi, phy_id, tmp);
mvi                97 drivers/scsi/mvsas/mv_94xx.c static void set_phy_ffe_tuning(struct mvs_info *mvi, int phy_id,
mvi               103 drivers/scsi/mvsas/mv_94xx.c 	if ((mvi->pdev->revision == VANIR_A0_REV)
mvi               104 drivers/scsi/mvsas/mv_94xx.c 		|| (mvi->pdev->revision == VANIR_B0_REV))
mvi               114 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_addr(mvi, phy_id, VSR_PHY_FFE_CONTROL);
mvi               115 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_read_port_vsr_data(mvi, phy_id);
mvi               123 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_data(mvi, phy_id, tmp);
mvi               129 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_addr(mvi, phy_id, VSR_REF_CLOCK_CRTL);
mvi               130 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_read_port_vsr_data(mvi, phy_id);
mvi               135 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_data(mvi, phy_id, tmp);
mvi               142 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_addr(mvi, phy_id, VSR_PHY_DFE_UPDATE_CRTL);
mvi               143 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_read_port_vsr_data(mvi, phy_id);
mvi               148 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_data(mvi, phy_id, tmp);
mvi               154 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_addr(mvi, phy_id, VSR_REF_CLOCK_CRTL);
mvi               155 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_read_port_vsr_data(mvi, phy_id);
mvi               160 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_data(mvi, phy_id, tmp);
mvi               164 drivers/scsi/mvsas/mv_94xx.c static void set_phy_rate(struct mvs_info *mvi, int phy_id, u8 rate)
mvi               167 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_addr(mvi, phy_id, VSR_PHY_MODE2);
mvi               168 drivers/scsi/mvsas/mv_94xx.c 	phy_cfg_tmp.v = mvs_read_port_vsr_data(mvi, phy_id);
mvi               200 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_data(mvi, phy_id, phy_cfg.v);
mvi               203 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_config_reg_from_hba(struct mvs_info *mvi, int phy_id)
mvi               206 drivers/scsi/mvsas/mv_94xx.c 	temp = (u32)(*(u32 *)&mvi->hba_info_param.phy_tuning[phy_id]);
mvi               208 drivers/scsi/mvsas/mv_94xx.c 		mvi->hba_info_param.phy_tuning[phy_id].trans_emp_amp = 0x6;
mvi               209 drivers/scsi/mvsas/mv_94xx.c 		mvi->hba_info_param.phy_tuning[phy_id].trans_amp = 0x1A;
mvi               210 drivers/scsi/mvsas/mv_94xx.c 		mvi->hba_info_param.phy_tuning[phy_id].trans_amp_adj = 0x3;
mvi               213 drivers/scsi/mvsas/mv_94xx.c 	temp = (u8)(*(u8 *)&mvi->hba_info_param.ffe_ctl[phy_id]);
mvi               215 drivers/scsi/mvsas/mv_94xx.c 		switch (mvi->pdev->revision) {
mvi               218 drivers/scsi/mvsas/mv_94xx.c 			mvi->hba_info_param.ffe_ctl[phy_id].ffe_rss_sel = 0x7;
mvi               219 drivers/scsi/mvsas/mv_94xx.c 			mvi->hba_info_param.ffe_ctl[phy_id].ffe_cap_sel = 0x7;
mvi               225 drivers/scsi/mvsas/mv_94xx.c 			mvi->hba_info_param.ffe_ctl[phy_id].ffe_rss_sel = 0x7;
mvi               226 drivers/scsi/mvsas/mv_94xx.c 			mvi->hba_info_param.ffe_ctl[phy_id].ffe_cap_sel = 0xC;
mvi               231 drivers/scsi/mvsas/mv_94xx.c 	temp = (u8)(*(u8 *)&mvi->hba_info_param.phy_rate[phy_id]);
mvi               234 drivers/scsi/mvsas/mv_94xx.c 		mvi->hba_info_param.phy_rate[phy_id] = 0x2;
mvi               236 drivers/scsi/mvsas/mv_94xx.c 	set_phy_tuning(mvi, phy_id,
mvi               237 drivers/scsi/mvsas/mv_94xx.c 		mvi->hba_info_param.phy_tuning[phy_id]);
mvi               238 drivers/scsi/mvsas/mv_94xx.c 	set_phy_ffe_tuning(mvi, phy_id,
mvi               239 drivers/scsi/mvsas/mv_94xx.c 		mvi->hba_info_param.ffe_ctl[phy_id]);
mvi               240 drivers/scsi/mvsas/mv_94xx.c 	set_phy_rate(mvi, phy_id,
mvi               241 drivers/scsi/mvsas/mv_94xx.c 		mvi->hba_info_param.phy_rate[phy_id]);
mvi               244 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_enable_xmt(struct mvs_info *mvi, int phy_id)
mvi               246 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi               254 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_phy_reset(struct mvs_info *mvi, u32 phy_id, int hard)
mvi               259 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_cfg_addr(mvi, phy_id, PHYR_SATA_CTL);
mvi               260 drivers/scsi/mvsas/mv_94xx.c 		tmp = mvs_read_port_cfg_data(mvi, phy_id);
mvi               261 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_cfg_data(mvi, phy_id, tmp|0x20000000);
mvi               262 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_cfg_data(mvi, phy_id, tmp|0x100000);
mvi               265 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_read_port_irq_stat(mvi, phy_id);
mvi               267 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_irq_stat(mvi, phy_id, tmp);
mvi               269 drivers/scsi/mvsas/mv_94xx.c 		tmp = mvs_read_phy_ctl(mvi, phy_id);
mvi               271 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_phy_ctl(mvi, phy_id, tmp);
mvi               273 drivers/scsi/mvsas/mv_94xx.c 			tmp = mvs_read_phy_ctl(mvi, phy_id);
mvi               280 drivers/scsi/mvsas/mv_94xx.c 		tmp = mvs_read_phy_ctl(mvi, phy_id);
mvi               282 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_phy_ctl(mvi, phy_id, tmp);
mvi               286 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_phy_disable(struct mvs_info *mvi, u32 phy_id)
mvi               289 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_addr(mvi, phy_id, VSR_PHY_MODE2);
mvi               290 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_read_port_vsr_data(mvi, phy_id);
mvi               291 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_data(mvi, phy_id, tmp | 0x00800000);
mvi               294 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_phy_enable(struct mvs_info *mvi, u32 phy_id)
mvi               299 drivers/scsi/mvsas/mv_94xx.c 	revision = mvi->pdev->revision;
mvi               301 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_addr(mvi, phy_id, CMD_HOST_RD_DATA);
mvi               302 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_data(mvi, phy_id, 0x8300ffc1);
mvi               305 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_addr(mvi, phy_id, CMD_APP_MEM_CTL);
mvi               306 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_data(mvi, phy_id, 0x08001006);
mvi               307 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_addr(mvi, phy_id, CMD_HOST_RD_DATA);
mvi               308 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_vsr_data(mvi, phy_id, 0x0000705f);
mvi               311 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_addr(mvi, phy_id, VSR_PHY_MODE2);
mvi               312 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_read_port_vsr_data(mvi, phy_id);
mvi               314 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_vsr_data(mvi, phy_id, tmp & 0xfd7fffff);
mvi               317 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_sgpio_init(struct mvs_info *mvi)
mvi               319 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs_ex - 0x10200;
mvi               326 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_SGPIO_CTRL + MVS_SGPIO_HOST_OFFSET * mvi->id,
mvi               329 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_SGPIO_CFG1 + MVS_SGPIO_HOST_OFFSET * mvi->id,
mvi               338 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_SGPIO_CFG2 + MVS_SGPIO_HOST_OFFSET * mvi->id,
mvi               343 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_SGPIO_CFG0 + MVS_SGPIO_HOST_OFFSET * mvi->id,
mvi               351 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_SGPIO_DCTRL + MVS_SGPIO_HOST_OFFSET * mvi->id,
mvi               354 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_SGPIO_DSRC + MVS_SGPIO_HOST_OFFSET * mvi->id,
mvi               355 drivers/scsi/mvsas/mv_94xx.c 		((mvi->id * 4) + 3) << (8 * 3) |
mvi               356 drivers/scsi/mvsas/mv_94xx.c 		((mvi->id * 4) + 2) << (8 * 2) |
mvi               357 drivers/scsi/mvsas/mv_94xx.c 		((mvi->id * 4) + 1) << (8 * 1) |
mvi               358 drivers/scsi/mvsas/mv_94xx.c 		((mvi->id * 4) + 0) << (8 * 0));
mvi               362 drivers/scsi/mvsas/mv_94xx.c static int mvs_94xx_init(struct mvs_info *mvi)
mvi               364 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi               369 drivers/scsi/mvsas/mv_94xx.c 	revision = mvi->pdev->revision;
mvi               370 drivers/scsi/mvsas/mv_94xx.c 	mvs_show_pcie_usage(mvi);
mvi               371 drivers/scsi/mvsas/mv_94xx.c 	if (mvi->flags & MVF_FLAG_SOC) {
mvi               386 drivers/scsi/mvsas/mv_94xx.c 	if (mvi->flags & MVF_FLAG_SOC) {
mvi               427 drivers/scsi/mvsas/mv_94xx.c 	mvs_phy_hacks(mvi);
mvi               430 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_cr32(mvi, CMD_SAS_CTL1);
mvi               436 drivers/scsi/mvsas/mv_94xx.c 		mvs_cw32(mvi, CMD_SAS_CTL1, tmp);
mvi               446 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_CMD_LIST_LO, mvi->slot_dma);
mvi               447 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_CMD_LIST_HI, (mvi->slot_dma >> 16) >> 16);
mvi               449 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_RX_FIS_LO, mvi->rx_fis_dma);
mvi               450 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_RX_FIS_HI, (mvi->rx_fis_dma >> 16) >> 16);
mvi               453 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_TX_LO, mvi->tx_dma);
mvi               454 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_TX_HI, (mvi->tx_dma >> 16) >> 16);
mvi               457 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_RX_LO, mvi->rx_dma);
mvi               458 drivers/scsi/mvsas/mv_94xx.c 	mw32(MVS_RX_HI, (mvi->rx_dma >> 16) >> 16);
mvi               460 drivers/scsi/mvsas/mv_94xx.c 	for (i = 0; i < mvi->chip->n_phy; i++) {
mvi               461 drivers/scsi/mvsas/mv_94xx.c 		mvs_94xx_phy_disable(mvi, i);
mvi               463 drivers/scsi/mvsas/mv_94xx.c 		mvs_set_sas_addr(mvi, i, CONFIG_ID_FRAME3, CONFIG_ID_FRAME4,
mvi               464 drivers/scsi/mvsas/mv_94xx.c 						cpu_to_le64(mvi->phy[i].dev_sas_addr));
mvi               466 drivers/scsi/mvsas/mv_94xx.c 		mvs_94xx_enable_xmt(mvi, i);
mvi               467 drivers/scsi/mvsas/mv_94xx.c 		mvs_94xx_config_reg_from_hba(mvi, i);
mvi               468 drivers/scsi/mvsas/mv_94xx.c 		mvs_94xx_phy_enable(mvi, i);
mvi               470 drivers/scsi/mvsas/mv_94xx.c 		mvs_94xx_phy_reset(mvi, i, PHY_RST_HARD);
mvi               472 drivers/scsi/mvsas/mv_94xx.c 		mvs_94xx_detect_porttype(mvi, i);
mvi               475 drivers/scsi/mvsas/mv_94xx.c 	if (mvi->flags & MVF_FLAG_SOC) {
mvi               486 drivers/scsi/mvsas/mv_94xx.c 	for (i = 0; i < mvi->chip->n_phy; i++) {
mvi               488 drivers/scsi/mvsas/mv_94xx.c 		tmp = mvs_read_port_irq_stat(mvi, i);
mvi               490 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_irq_stat(mvi, i, tmp);
mvi               495 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_irq_mask(mvi, i, tmp);
mvi               498 drivers/scsi/mvsas/mv_94xx.c 		mvs_update_phyinfo(mvi, i, 1);
mvi               541 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_cr32(mvi, CMD_LINK_TIMER);
mvi               543 drivers/scsi/mvsas/mv_94xx.c 	mvs_cw32(mvi, CMD_LINK_TIMER, tmp);
mvi               547 drivers/scsi/mvsas/mv_94xx.c 	mvs_cw32(mvi, CMD_PL_TIMER, tmp);
mvi               550 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_cr32(mvi, CMD_PORT_LAYER_TIMER1);
mvi               552 drivers/scsi/mvsas/mv_94xx.c 	mvs_cw32(mvi, CMD_PORT_LAYER_TIMER1, tmp);
mvi               556 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_cr32(mvi, CMD_SL_MODE0);
mvi               560 drivers/scsi/mvsas/mv_94xx.c 	mvs_cw32(mvi, CMD_SL_MODE0, tmp);
mvi               565 drivers/scsi/mvsas/mv_94xx.c 	mvs_94xx_sgpio_init(mvi);
mvi               570 drivers/scsi/mvsas/mv_94xx.c static int mvs_94xx_ioremap(struct mvs_info *mvi)
mvi               572 drivers/scsi/mvsas/mv_94xx.c 	if (!mvs_ioremap(mvi, 2, -1)) {
mvi               573 drivers/scsi/mvsas/mv_94xx.c 		mvi->regs_ex = mvi->regs + 0x10200;
mvi               574 drivers/scsi/mvsas/mv_94xx.c 		mvi->regs += 0x20000;
mvi               575 drivers/scsi/mvsas/mv_94xx.c 		if (mvi->id == 1)
mvi               576 drivers/scsi/mvsas/mv_94xx.c 			mvi->regs += 0x4000;
mvi               582 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_iounmap(struct mvs_info *mvi)
mvi               584 drivers/scsi/mvsas/mv_94xx.c 	if (mvi->regs) {
mvi               585 drivers/scsi/mvsas/mv_94xx.c 		mvi->regs -= 0x20000;
mvi               586 drivers/scsi/mvsas/mv_94xx.c 		if (mvi->id == 1)
mvi               587 drivers/scsi/mvsas/mv_94xx.c 			mvi->regs -= 0x4000;
mvi               588 drivers/scsi/mvsas/mv_94xx.c 		mvs_iounmap(mvi->regs);
mvi               592 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_interrupt_enable(struct mvs_info *mvi)
mvi               594 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs_ex;
mvi               607 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_interrupt_disable(struct mvs_info *mvi)
mvi               609 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs_ex;
mvi               623 drivers/scsi/mvsas/mv_94xx.c static u32 mvs_94xx_isr_status(struct mvs_info *mvi, int irq)
mvi               625 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs_ex;
mvi               627 drivers/scsi/mvsas/mv_94xx.c 	if (!(mvi->flags & MVF_FLAG_SOC)) {
mvi               636 drivers/scsi/mvsas/mv_94xx.c static irqreturn_t mvs_94xx_isr(struct mvs_info *mvi, int irq, u32 stat)
mvi               638 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi               640 drivers/scsi/mvsas/mv_94xx.c 	if (((stat & MVS_IRQ_SAS_A) && mvi->id == 0) ||
mvi               641 drivers/scsi/mvsas/mv_94xx.c 			((stat & MVS_IRQ_SAS_B) && mvi->id == 1)) {
mvi               644 drivers/scsi/mvsas/mv_94xx.c 		spin_lock(&mvi->lock);
mvi               645 drivers/scsi/mvsas/mv_94xx.c 		mvs_int_full(mvi);
mvi               646 drivers/scsi/mvsas/mv_94xx.c 		spin_unlock(&mvi->lock);
mvi               651 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_command_active(struct mvs_info *mvi, u32 slot_idx)
mvi               654 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_cr32(mvi, MVS_COMMAND_ACTIVE+(slot_idx >> 3));
mvi               657 drivers/scsi/mvsas/mv_94xx.c 		mvs_cw32(mvi, MVS_COMMAND_ACTIVE + (slot_idx >> 3),
mvi               660 drivers/scsi/mvsas/mv_94xx.c 			tmp = mvs_cr32(mvi,
mvi               667 drivers/scsi/mvsas/mv_94xx.c mvs_94xx_clear_srs_irq(struct mvs_info *mvi, u8 reg_set, u8 clear_all)
mvi               669 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi               699 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_issue_stop(struct mvs_info *mvi, enum mvs_port_type type,
mvi               702 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi               704 drivers/scsi/mvsas/mv_94xx.c 	mvs_94xx_clear_srs_irq(mvi, 0, 1);
mvi               712 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_non_spec_ncq_error(struct mvs_info *mvi)
mvi               714 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi               726 drivers/scsi/mvsas/mv_94xx.c 			device = mvs_find_dev_by_reg_set(mvi, i);
mvi               728 drivers/scsi/mvsas/mv_94xx.c 				mvs_release_task(mvi, device->sas_device);
mvi               731 drivers/scsi/mvsas/mv_94xx.c 			device = mvs_find_dev_by_reg_set(mvi, i+32);
mvi               733 drivers/scsi/mvsas/mv_94xx.c 				mvs_release_task(mvi, device->sas_device);
mvi               741 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_free_reg_set(struct mvs_info *mvi, u8 *tfs)
mvi               743 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi               749 drivers/scsi/mvsas/mv_94xx.c 	mvi->sata_reg_set &= ~bit(reg_set);
mvi               751 drivers/scsi/mvsas/mv_94xx.c 		w_reg_set_enable(reg_set, (u32)mvi->sata_reg_set);
mvi               753 drivers/scsi/mvsas/mv_94xx.c 		w_reg_set_enable(reg_set, (u32)(mvi->sata_reg_set >> 32));
mvi               760 drivers/scsi/mvsas/mv_94xx.c static u8 mvs_94xx_assign_reg_set(struct mvs_info *mvi, u8 *tfs)
mvi               763 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi               768 drivers/scsi/mvsas/mv_94xx.c 	i = mv_ffc64(mvi->sata_reg_set);
mvi               770 drivers/scsi/mvsas/mv_94xx.c 		mvi->sata_reg_set |= bit(i);
mvi               771 drivers/scsi/mvsas/mv_94xx.c 		w_reg_set_enable(i, (u32)(mvi->sata_reg_set >> 32));
mvi               775 drivers/scsi/mvsas/mv_94xx.c 		mvi->sata_reg_set |= bit(i);
mvi               776 drivers/scsi/mvsas/mv_94xx.c 		w_reg_set_enable(i, (u32)mvi->sata_reg_set);
mvi               798 drivers/scsi/mvsas/mv_94xx.c static int mvs_94xx_oob_done(struct mvs_info *mvi, int i)
mvi               801 drivers/scsi/mvsas/mv_94xx.c 	phy_st = mvs_read_phy_ctl(mvi, i);
mvi               807 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_get_dev_identify_frame(struct mvs_info *mvi, int port_id,
mvi               814 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_cfg_addr(mvi, port_id,
mvi               816 drivers/scsi/mvsas/mv_94xx.c 		id_frame[i] = cpu_to_le32(mvs_read_port_cfg_data(mvi, port_id));
mvi               821 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_get_att_identify_frame(struct mvs_info *mvi, int port_id,
mvi               828 drivers/scsi/mvsas/mv_94xx.c 		mvs_write_port_cfg_addr(mvi, port_id,
mvi               830 drivers/scsi/mvsas/mv_94xx.c 		id_frame[i] = cpu_to_le32(mvs_read_port_cfg_data(mvi, port_id));
mvi               832 drivers/scsi/mvsas/mv_94xx.c 			port_id + mvi->id * mvi->chip->n_phy, i, id_frame[i]);
mvi               864 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_fix_phy_info(struct mvs_info *mvi, int i,
mvi               867 drivers/scsi/mvsas/mv_94xx.c 	struct mvs_phy *phy = &mvi->phy[i];
mvi               877 drivers/scsi/mvsas/mv_94xx.c 	mvs_94xx_get_dev_identify_frame(mvi, i, id);
mvi               881 drivers/scsi/mvsas/mv_94xx.c 		mvs_94xx_get_att_identify_frame(mvi, i, id);
mvi               889 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_cfg_addr(mvi, i, PHYR_PHY_STAT);
mvi               890 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_port_cfg_data(mvi, i, 0x04);
mvi               894 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_phy_set_link_rate(struct mvs_info *mvi, u32 phy_id,
mvi               900 drivers/scsi/mvsas/mv_94xx.c 	tmp = mvs_read_phy_ctl(mvi, phy_id);
mvi               907 drivers/scsi/mvsas/mv_94xx.c 	mvs_write_phy_ctl(mvi, phy_id, tmp);
mvi               908 drivers/scsi/mvsas/mv_94xx.c 	mvs_94xx_phy_reset(mvi, phy_id, PHY_RST_HARD);
mvi               911 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_clear_active_cmds(struct mvs_info *mvi)
mvi               914 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi               924 drivers/scsi/mvsas/mv_94xx.c static u32 mvs_94xx_spi_read_data(struct mvs_info *mvi)
mvi               926 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs_ex - 0x10200;
mvi               930 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_spi_write_data(struct mvs_info *mvi, u32 data)
mvi               932 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs_ex - 0x10200;
mvi               938 drivers/scsi/mvsas/mv_94xx.c static int mvs_94xx_spi_buildcmd(struct mvs_info *mvi,
mvi               946 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs_ex - 0x10200;
mvi               963 drivers/scsi/mvsas/mv_94xx.c static int mvs_94xx_spi_issuecmd(struct mvs_info *mvi, u32 cmd)
mvi               965 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs_ex - 0x10200;
mvi               971 drivers/scsi/mvsas/mv_94xx.c static int mvs_94xx_spi_waitdataready(struct mvs_info *mvi, u32 timeout)
mvi               973 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs_ex - 0x10200;
mvi               986 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_fix_dma(struct mvs_info *mvi, u32 phy_mask,
mvi               998 drivers/scsi/mvsas/mv_94xx.c 	if ((mvi->pdev->revision == VANIR_A0_REV) ||
mvi               999 drivers/scsi/mvsas/mv_94xx.c 			(mvi->pdev->revision == VANIR_B0_REV))
mvi              1001 drivers/scsi/mvsas/mv_94xx.c 				mvi->bulk_buffer_dma : mvi->bulk_buffer_dma1;
mvi              1018 drivers/scsi/mvsas/mv_94xx.c static void mvs_94xx_tune_interrupt(struct mvs_info *mvi, u32 time)
mvi              1020 drivers/scsi/mvsas/mv_94xx.c 	void __iomem *regs = mvi->regs;
mvi              1063 drivers/scsi/mvsas/mv_94xx.c 			struct mvs_info *mvi = mvs_prv->mvi[i/(4*3)];
mvi              1065 drivers/scsi/mvsas/mv_94xx.c 			void __iomem *regs = mvi->regs_ex - 0x10200;
mvi              1070 drivers/scsi/mvsas/mv_94xx.c 				MVS_SGPIO_HOST_OFFSET * mvi->id);
mvi              1106 drivers/scsi/mvsas/mv_94xx.c 				MVS_SGPIO_HOST_OFFSET * mvi->id);
mvi              1117 drivers/scsi/mvsas/mv_94xx.c 			struct mvs_info *mvi = mvs_prv->mvi[i+reg_index];
mvi              1118 drivers/scsi/mvsas/mv_94xx.c 			void __iomem *regs = mvi->regs_ex - 0x10200;
mvi              1120 drivers/scsi/mvsas/mv_94xx.c 			mw32(MVS_SGPIO_DCTRL + MVS_SGPIO_HOST_OFFSET * mvi->id,
mvi                28 drivers/scsi/mvsas/mv_chips.h static inline u32 mvs_cr32(struct mvs_info *mvi, u32 addr)
mvi                30 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs;
mvi                35 drivers/scsi/mvsas/mv_chips.h static inline void mvs_cw32(struct mvs_info *mvi, u32 addr, u32 val)
mvi                37 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs;
mvi                42 drivers/scsi/mvsas/mv_chips.h static inline u32 mvs_read_phy_ctl(struct mvs_info *mvi, u32 port)
mvi                44 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs;
mvi                49 drivers/scsi/mvsas/mv_chips.h static inline void mvs_write_phy_ctl(struct mvs_info *mvi, u32 port, u32 val)
mvi                51 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs;
mvi                58 drivers/scsi/mvsas/mv_chips.h static inline u32 mvs_read_port(struct mvs_info *mvi, u32 off,
mvi                61 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs + off;
mvi                62 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs2 = mvi->regs + off2;
mvi                67 drivers/scsi/mvsas/mv_chips.h static inline void mvs_write_port(struct mvs_info *mvi, u32 off, u32 off2,
mvi                70 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs + off;
mvi                71 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs2 = mvi->regs + off2;
mvi                78 drivers/scsi/mvsas/mv_chips.h static inline u32 mvs_read_port_cfg_data(struct mvs_info *mvi, u32 port)
mvi                80 drivers/scsi/mvsas/mv_chips.h 	return mvs_read_port(mvi, MVS_P0_CFG_DATA,
mvi                84 drivers/scsi/mvsas/mv_chips.h static inline void mvs_write_port_cfg_data(struct mvs_info *mvi,
mvi                87 drivers/scsi/mvsas/mv_chips.h 	mvs_write_port(mvi, MVS_P0_CFG_DATA,
mvi                91 drivers/scsi/mvsas/mv_chips.h static inline void mvs_write_port_cfg_addr(struct mvs_info *mvi,
mvi                94 drivers/scsi/mvsas/mv_chips.h 	mvs_write_port(mvi, MVS_P0_CFG_ADDR,
mvi                99 drivers/scsi/mvsas/mv_chips.h static inline u32 mvs_read_port_vsr_data(struct mvs_info *mvi, u32 port)
mvi               101 drivers/scsi/mvsas/mv_chips.h 	return mvs_read_port(mvi, MVS_P0_VSR_DATA,
mvi               105 drivers/scsi/mvsas/mv_chips.h static inline void mvs_write_port_vsr_data(struct mvs_info *mvi,
mvi               108 drivers/scsi/mvsas/mv_chips.h 	mvs_write_port(mvi, MVS_P0_VSR_DATA,
mvi               112 drivers/scsi/mvsas/mv_chips.h static inline void mvs_write_port_vsr_addr(struct mvs_info *mvi,
mvi               115 drivers/scsi/mvsas/mv_chips.h 	mvs_write_port(mvi, MVS_P0_VSR_ADDR,
mvi               120 drivers/scsi/mvsas/mv_chips.h static inline u32 mvs_read_port_irq_stat(struct mvs_info *mvi, u32 port)
mvi               122 drivers/scsi/mvsas/mv_chips.h 	return mvs_read_port(mvi, MVS_P0_INT_STAT,
mvi               126 drivers/scsi/mvsas/mv_chips.h static inline void mvs_write_port_irq_stat(struct mvs_info *mvi,
mvi               129 drivers/scsi/mvsas/mv_chips.h 	mvs_write_port(mvi, MVS_P0_INT_STAT,
mvi               133 drivers/scsi/mvsas/mv_chips.h static inline u32 mvs_read_port_irq_mask(struct mvs_info *mvi, u32 port)
mvi               135 drivers/scsi/mvsas/mv_chips.h 	return mvs_read_port(mvi, MVS_P0_INT_MASK,
mvi               140 drivers/scsi/mvsas/mv_chips.h static inline void mvs_write_port_irq_mask(struct mvs_info *mvi,
mvi               143 drivers/scsi/mvsas/mv_chips.h 	mvs_write_port(mvi, MVS_P0_INT_MASK,
mvi               147 drivers/scsi/mvsas/mv_chips.h static inline void mvs_phy_hacks(struct mvs_info *mvi)
mvi               151 drivers/scsi/mvsas/mv_chips.h 	tmp = mvs_cr32(mvi, CMD_PHY_TIMER);
mvi               154 drivers/scsi/mvsas/mv_chips.h 	mvs_cw32(mvi, CMD_PHY_TIMER, tmp);
mvi               157 drivers/scsi/mvsas/mv_chips.h 	mvs_cw32(mvi, CMD_SAS_CTL1, 0x7f7f);
mvi               160 drivers/scsi/mvsas/mv_chips.h 	tmp = mvs_cr32(mvi, CMD_SAS_CTL0);
mvi               163 drivers/scsi/mvsas/mv_chips.h 	mvs_cw32(mvi, CMD_SAS_CTL0, tmp);
mvi               165 drivers/scsi/mvsas/mv_chips.h 	mvs_cw32(mvi, CMD_WD_TIMER, 0x7a0000);
mvi               168 drivers/scsi/mvsas/mv_chips.h 	mvs_cw32(mvi, CMD_APP_ERR_CONFIG, 0xffefbf7d);
mvi               171 drivers/scsi/mvsas/mv_chips.h static inline void mvs_int_sata(struct mvs_info *mvi)
mvi               174 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs;
mvi               178 drivers/scsi/mvsas/mv_chips.h 	MVS_CHIP_DISP->clear_active_cmds(mvi);
mvi               181 drivers/scsi/mvsas/mv_chips.h static inline void mvs_int_full(struct mvs_info *mvi)
mvi               183 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs;
mvi               188 drivers/scsi/mvsas/mv_chips.h 	mvs_int_rx(mvi, false);
mvi               190 drivers/scsi/mvsas/mv_chips.h 	for (i = 0; i < mvi->chip->n_phy; i++) {
mvi               193 drivers/scsi/mvsas/mv_chips.h 			mvs_int_port(mvi, i, tmp);
mvi               197 drivers/scsi/mvsas/mv_chips.h 		MVS_CHIP_DISP->non_spec_ncq_error(mvi);
mvi               200 drivers/scsi/mvsas/mv_chips.h 		mvs_int_sata(mvi);
mvi               205 drivers/scsi/mvsas/mv_chips.h static inline void mvs_start_delivery(struct mvs_info *mvi, u32 tx)
mvi               207 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs;
mvi               211 drivers/scsi/mvsas/mv_chips.h static inline u32 mvs_rx_update(struct mvs_info *mvi)
mvi               213 drivers/scsi/mvsas/mv_chips.h 	void __iomem *regs = mvi->regs;
mvi               227 drivers/scsi/mvsas/mv_chips.h static inline void mvs_show_pcie_usage(struct mvs_info *mvi)
mvi               235 drivers/scsi/mvsas/mv_chips.h 	if (mvi->flags & MVF_FLAG_SOC || mvi->id > 0)
mvi               238 drivers/scsi/mvsas/mv_chips.h 	pci_read_config_word(mvi->pdev, PCR_LINK_STAT, &link_stat);
mvi               242 drivers/scsi/mvsas/mv_chips.h 	dev_printk(KERN_INFO, mvi->dev,
mvi                74 drivers/scsi/mvsas/mv_init.c static void mvs_phy_init(struct mvs_info *mvi, int phy_id)
mvi                76 drivers/scsi/mvsas/mv_init.c 	struct mvs_phy *phy = &mvi->phy[phy_id];
mvi                79 drivers/scsi/mvsas/mv_init.c 	phy->mvi = mvi;
mvi                82 drivers/scsi/mvsas/mv_init.c 	sas_phy->enabled = (phy_id < mvi->chip->n_phy) ? 1 : 0;
mvi                92 drivers/scsi/mvsas/mv_init.c 	sas_phy->sas_addr = &mvi->sas_addr[0];
mvi                94 drivers/scsi/mvsas/mv_init.c 	sas_phy->ha = (struct sas_ha_struct *)mvi->shost->hostdata;
mvi                98 drivers/scsi/mvsas/mv_init.c static void mvs_free(struct mvs_info *mvi)
mvi               103 drivers/scsi/mvsas/mv_init.c 	if (!mvi)
mvi               106 drivers/scsi/mvsas/mv_init.c 	if (mvi->flags & MVF_FLAG_SOC)
mvi               111 drivers/scsi/mvsas/mv_init.c 	dma_pool_destroy(mvi->dma_pool);
mvi               113 drivers/scsi/mvsas/mv_init.c 	if (mvi->tx)
mvi               114 drivers/scsi/mvsas/mv_init.c 		dma_free_coherent(mvi->dev,
mvi               115 drivers/scsi/mvsas/mv_init.c 				  sizeof(*mvi->tx) * MVS_CHIP_SLOT_SZ,
mvi               116 drivers/scsi/mvsas/mv_init.c 				  mvi->tx, mvi->tx_dma);
mvi               117 drivers/scsi/mvsas/mv_init.c 	if (mvi->rx_fis)
mvi               118 drivers/scsi/mvsas/mv_init.c 		dma_free_coherent(mvi->dev, MVS_RX_FISL_SZ,
mvi               119 drivers/scsi/mvsas/mv_init.c 				  mvi->rx_fis, mvi->rx_fis_dma);
mvi               120 drivers/scsi/mvsas/mv_init.c 	if (mvi->rx)
mvi               121 drivers/scsi/mvsas/mv_init.c 		dma_free_coherent(mvi->dev,
mvi               122 drivers/scsi/mvsas/mv_init.c 				  sizeof(*mvi->rx) * (MVS_RX_RING_SZ + 1),
mvi               123 drivers/scsi/mvsas/mv_init.c 				  mvi->rx, mvi->rx_dma);
mvi               124 drivers/scsi/mvsas/mv_init.c 	if (mvi->slot)
mvi               125 drivers/scsi/mvsas/mv_init.c 		dma_free_coherent(mvi->dev,
mvi               126 drivers/scsi/mvsas/mv_init.c 				  sizeof(*mvi->slot) * slot_nr,
mvi               127 drivers/scsi/mvsas/mv_init.c 				  mvi->slot, mvi->slot_dma);
mvi               129 drivers/scsi/mvsas/mv_init.c 	if (mvi->bulk_buffer)
mvi               130 drivers/scsi/mvsas/mv_init.c 		dma_free_coherent(mvi->dev, TRASH_BUCKET_SIZE,
mvi               131 drivers/scsi/mvsas/mv_init.c 				  mvi->bulk_buffer, mvi->bulk_buffer_dma);
mvi               132 drivers/scsi/mvsas/mv_init.c 	if (mvi->bulk_buffer1)
mvi               133 drivers/scsi/mvsas/mv_init.c 		dma_free_coherent(mvi->dev, TRASH_BUCKET_SIZE,
mvi               134 drivers/scsi/mvsas/mv_init.c 				  mvi->bulk_buffer1, mvi->bulk_buffer_dma1);
mvi               136 drivers/scsi/mvsas/mv_init.c 	MVS_CHIP_DISP->chip_iounmap(mvi);
mvi               137 drivers/scsi/mvsas/mv_init.c 	if (mvi->shost)
mvi               138 drivers/scsi/mvsas/mv_init.c 		scsi_host_put(mvi->shost);
mvi               139 drivers/scsi/mvsas/mv_init.c 	list_for_each_entry(mwq, &mvi->wq_list, entry)
mvi               141 drivers/scsi/mvsas/mv_init.c 	kfree(mvi->tags);
mvi               142 drivers/scsi/mvsas/mv_init.c 	kfree(mvi);
mvi               151 drivers/scsi/mvsas/mv_init.c 	struct mvs_info *mvi;
mvi               155 drivers/scsi/mvsas/mv_init.c 	mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[0];
mvi               157 drivers/scsi/mvsas/mv_init.c 	if (unlikely(!mvi))
mvi               160 drivers/scsi/mvsas/mv_init.c 	stat = MVS_CHIP_DISP->isr_status(mvi, mvi->pdev->irq);
mvi               165 drivers/scsi/mvsas/mv_init.c 		mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[i];
mvi               166 drivers/scsi/mvsas/mv_init.c 		MVS_CHIP_DISP->isr(mvi, mvi->pdev->irq, stat);
mvi               169 drivers/scsi/mvsas/mv_init.c 	MVS_CHIP_DISP->interrupt_enable(mvi);
mvi               178 drivers/scsi/mvsas/mv_init.c 	struct mvs_info *mvi;
mvi               185 drivers/scsi/mvsas/mv_init.c 	mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[0];
mvi               187 drivers/scsi/mvsas/mv_init.c 	if (unlikely(!mvi))
mvi               190 drivers/scsi/mvsas/mv_init.c 	MVS_CHIP_DISP->interrupt_disable(mvi);
mvi               193 drivers/scsi/mvsas/mv_init.c 	stat = MVS_CHIP_DISP->isr_status(mvi, irq);
mvi               196 drivers/scsi/mvsas/mv_init.c 		MVS_CHIP_DISP->interrupt_enable(mvi);
mvi               205 drivers/scsi/mvsas/mv_init.c 		mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[i];
mvi               206 drivers/scsi/mvsas/mv_init.c 		MVS_CHIP_DISP->isr(mvi, irq, stat);
mvi               212 drivers/scsi/mvsas/mv_init.c static int mvs_alloc(struct mvs_info *mvi, struct Scsi_Host *shost)
mvi               217 drivers/scsi/mvsas/mv_init.c 	if (mvi->flags & MVF_FLAG_SOC)
mvi               222 drivers/scsi/mvsas/mv_init.c 	spin_lock_init(&mvi->lock);
mvi               223 drivers/scsi/mvsas/mv_init.c 	for (i = 0; i < mvi->chip->n_phy; i++) {
mvi               224 drivers/scsi/mvsas/mv_init.c 		mvs_phy_init(mvi, i);
mvi               225 drivers/scsi/mvsas/mv_init.c 		mvi->port[i].wide_port_phymap = 0;
mvi               226 drivers/scsi/mvsas/mv_init.c 		mvi->port[i].port_attached = 0;
mvi               227 drivers/scsi/mvsas/mv_init.c 		INIT_LIST_HEAD(&mvi->port[i].list);
mvi               230 drivers/scsi/mvsas/mv_init.c 		mvi->devices[i].taskfileset = MVS_ID_NOT_MAPPED;
mvi               231 drivers/scsi/mvsas/mv_init.c 		mvi->devices[i].dev_type = SAS_PHY_UNUSED;
mvi               232 drivers/scsi/mvsas/mv_init.c 		mvi->devices[i].device_id = i;
mvi               233 drivers/scsi/mvsas/mv_init.c 		mvi->devices[i].dev_status = MVS_DEV_NORMAL;
mvi               239 drivers/scsi/mvsas/mv_init.c 	mvi->tx = dma_alloc_coherent(mvi->dev,
mvi               240 drivers/scsi/mvsas/mv_init.c 				     sizeof(*mvi->tx) * MVS_CHIP_SLOT_SZ,
mvi               241 drivers/scsi/mvsas/mv_init.c 				     &mvi->tx_dma, GFP_KERNEL);
mvi               242 drivers/scsi/mvsas/mv_init.c 	if (!mvi->tx)
mvi               244 drivers/scsi/mvsas/mv_init.c 	memset(mvi->tx, 0, sizeof(*mvi->tx) * MVS_CHIP_SLOT_SZ);
mvi               245 drivers/scsi/mvsas/mv_init.c 	mvi->rx_fis = dma_alloc_coherent(mvi->dev, MVS_RX_FISL_SZ,
mvi               246 drivers/scsi/mvsas/mv_init.c 					 &mvi->rx_fis_dma, GFP_KERNEL);
mvi               247 drivers/scsi/mvsas/mv_init.c 	if (!mvi->rx_fis)
mvi               249 drivers/scsi/mvsas/mv_init.c 	memset(mvi->rx_fis, 0, MVS_RX_FISL_SZ);
mvi               251 drivers/scsi/mvsas/mv_init.c 	mvi->rx = dma_alloc_coherent(mvi->dev,
mvi               252 drivers/scsi/mvsas/mv_init.c 				     sizeof(*mvi->rx) * (MVS_RX_RING_SZ + 1),
mvi               253 drivers/scsi/mvsas/mv_init.c 				     &mvi->rx_dma, GFP_KERNEL);
mvi               254 drivers/scsi/mvsas/mv_init.c 	if (!mvi->rx)
mvi               256 drivers/scsi/mvsas/mv_init.c 	memset(mvi->rx, 0, sizeof(*mvi->rx) * (MVS_RX_RING_SZ + 1));
mvi               257 drivers/scsi/mvsas/mv_init.c 	mvi->rx[0] = cpu_to_le32(0xfff);
mvi               258 drivers/scsi/mvsas/mv_init.c 	mvi->rx_cons = 0xfff;
mvi               260 drivers/scsi/mvsas/mv_init.c 	mvi->slot = dma_alloc_coherent(mvi->dev,
mvi               261 drivers/scsi/mvsas/mv_init.c 				       sizeof(*mvi->slot) * slot_nr,
mvi               262 drivers/scsi/mvsas/mv_init.c 				       &mvi->slot_dma, GFP_KERNEL);
mvi               263 drivers/scsi/mvsas/mv_init.c 	if (!mvi->slot)
mvi               265 drivers/scsi/mvsas/mv_init.c 	memset(mvi->slot, 0, sizeof(*mvi->slot) * slot_nr);
mvi               267 drivers/scsi/mvsas/mv_init.c 	mvi->bulk_buffer = dma_alloc_coherent(mvi->dev,
mvi               269 drivers/scsi/mvsas/mv_init.c 				       &mvi->bulk_buffer_dma, GFP_KERNEL);
mvi               270 drivers/scsi/mvsas/mv_init.c 	if (!mvi->bulk_buffer)
mvi               273 drivers/scsi/mvsas/mv_init.c 	mvi->bulk_buffer1 = dma_alloc_coherent(mvi->dev,
mvi               275 drivers/scsi/mvsas/mv_init.c 				       &mvi->bulk_buffer_dma1, GFP_KERNEL);
mvi               276 drivers/scsi/mvsas/mv_init.c 	if (!mvi->bulk_buffer1)
mvi               279 drivers/scsi/mvsas/mv_init.c 	sprintf(pool_name, "%s%d", "mvs_dma_pool", mvi->id);
mvi               280 drivers/scsi/mvsas/mv_init.c 	mvi->dma_pool = dma_pool_create(pool_name, &mvi->pdev->dev,
mvi               282 drivers/scsi/mvsas/mv_init.c 	if (!mvi->dma_pool) {
mvi               286 drivers/scsi/mvsas/mv_init.c 	mvi->tags_num = slot_nr;
mvi               289 drivers/scsi/mvsas/mv_init.c 	mvs_tag_init(mvi);
mvi               296 drivers/scsi/mvsas/mv_init.c int mvs_ioremap(struct mvs_info *mvi, int bar, int bar_ex)
mvi               299 drivers/scsi/mvsas/mv_init.c 	struct pci_dev *pdev = mvi->pdev;
mvi               311 drivers/scsi/mvsas/mv_init.c 			mvi->regs_ex = ioremap(res_start, res_len);
mvi               313 drivers/scsi/mvsas/mv_init.c 			mvi->regs_ex = (void *)res_start;
mvi               314 drivers/scsi/mvsas/mv_init.c 		if (!mvi->regs_ex)
mvi               321 drivers/scsi/mvsas/mv_init.c 		iounmap(mvi->regs_ex);
mvi               322 drivers/scsi/mvsas/mv_init.c 		mvi->regs_ex = NULL;
mvi               327 drivers/scsi/mvsas/mv_init.c 	mvi->regs = ioremap(res_start, res_len);
mvi               329 drivers/scsi/mvsas/mv_init.c 	if (!mvi->regs) {
mvi               330 drivers/scsi/mvsas/mv_init.c 		if (mvi->regs_ex && (res_flag_ex & IORESOURCE_MEM))
mvi               331 drivers/scsi/mvsas/mv_init.c 			iounmap(mvi->regs_ex);
mvi               332 drivers/scsi/mvsas/mv_init.c 		mvi->regs_ex = NULL;
mvi               350 drivers/scsi/mvsas/mv_init.c 	struct mvs_info *mvi = NULL;
mvi               353 drivers/scsi/mvsas/mv_init.c 	mvi = kzalloc(sizeof(*mvi) +
mvi               356 drivers/scsi/mvsas/mv_init.c 	if (!mvi)
mvi               359 drivers/scsi/mvsas/mv_init.c 	mvi->pdev = pdev;
mvi               360 drivers/scsi/mvsas/mv_init.c 	mvi->dev = &pdev->dev;
mvi               361 drivers/scsi/mvsas/mv_init.c 	mvi->chip_id = ent->driver_data;
mvi               362 drivers/scsi/mvsas/mv_init.c 	mvi->chip = &mvs_chips[mvi->chip_id];
mvi               363 drivers/scsi/mvsas/mv_init.c 	INIT_LIST_HEAD(&mvi->wq_list);
mvi               365 drivers/scsi/mvsas/mv_init.c 	((struct mvs_prv_info *)sha->lldd_ha)->mvi[id] = mvi;
mvi               366 drivers/scsi/mvsas/mv_init.c 	((struct mvs_prv_info *)sha->lldd_ha)->n_phy = mvi->chip->n_phy;
mvi               368 drivers/scsi/mvsas/mv_init.c 	mvi->id = id;
mvi               369 drivers/scsi/mvsas/mv_init.c 	mvi->sas = sha;
mvi               370 drivers/scsi/mvsas/mv_init.c 	mvi->shost = shost;
mvi               372 drivers/scsi/mvsas/mv_init.c 	mvi->tags = kzalloc(MVS_CHIP_SLOT_SZ>>3, GFP_KERNEL);
mvi               373 drivers/scsi/mvsas/mv_init.c 	if (!mvi->tags)
mvi               376 drivers/scsi/mvsas/mv_init.c 	if (MVS_CHIP_DISP->chip_ioremap(mvi))
mvi               378 drivers/scsi/mvsas/mv_init.c 	if (!mvs_alloc(mvi, shost))
mvi               379 drivers/scsi/mvsas/mv_init.c 		return mvi;
mvi               381 drivers/scsi/mvsas/mv_init.c 	mvs_free(mvi);
mvi               448 drivers/scsi/mvsas/mv_init.c 	struct mvs_info *mvi = NULL;
mvi               453 drivers/scsi/mvsas/mv_init.c 		mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[j];
mvi               456 drivers/scsi/mvsas/mv_init.c 				&mvi->phy[i].sas_phy;
mvi               458 drivers/scsi/mvsas/mv_init.c 				&mvi->port[i].sas_port;
mvi               463 drivers/scsi/mvsas/mv_init.c 	sha->dev = mvi->dev;
mvi               465 drivers/scsi/mvsas/mv_init.c 	sha->sas_addr = &mvi->sas_addr[0];
mvi               469 drivers/scsi/mvsas/mv_init.c 	if (mvi->flags & MVF_FLAG_SOC)
mvi               476 drivers/scsi/mvsas/mv_init.c 	mvi->shost->cmd_per_lun = MVS_QUEUE_SIZE;
mvi               477 drivers/scsi/mvsas/mv_init.c 	sha->core.shost = mvi->shost;
mvi               480 drivers/scsi/mvsas/mv_init.c static void mvs_init_sas_add(struct mvs_info *mvi)
mvi               483 drivers/scsi/mvsas/mv_init.c 	for (i = 0; i < mvi->chip->n_phy; i++) {
mvi               484 drivers/scsi/mvsas/mv_init.c 		mvi->phy[i].dev_sas_addr = 0x5005043011ab0000ULL;
mvi               485 drivers/scsi/mvsas/mv_init.c 		mvi->phy[i].dev_sas_addr =
mvi               486 drivers/scsi/mvsas/mv_init.c 			cpu_to_be64((u64)(*(u64 *)&mvi->phy[i].dev_sas_addr));
mvi               489 drivers/scsi/mvsas/mv_init.c 	memcpy(mvi->sas_addr, &mvi->phy[0].dev_sas_addr, SAS_ADDR_SIZE);
mvi               495 drivers/scsi/mvsas/mv_init.c 	struct mvs_info *mvi;
mvi               542 drivers/scsi/mvsas/mv_init.c 		mvi = mvs_pci_alloc(pdev, ent, shost, nhost);
mvi               543 drivers/scsi/mvsas/mv_init.c 		if (!mvi) {
mvi               548 drivers/scsi/mvsas/mv_init.c 		memset(&mvi->hba_info_param, 0xFF,
mvi               551 drivers/scsi/mvsas/mv_init.c 		mvs_init_sas_add(mvi);
mvi               553 drivers/scsi/mvsas/mv_init.c 		mvi->instance = nhost;
mvi               554 drivers/scsi/mvsas/mv_init.c 		rc = MVS_CHIP_DISP->chip_init(mvi);
mvi               556 drivers/scsi/mvsas/mv_init.c 			mvs_free(mvi);
mvi               581 drivers/scsi/mvsas/mv_init.c 	MVS_CHIP_DISP->interrupt_enable(mvi);
mvi               583 drivers/scsi/mvsas/mv_init.c 	scsi_scan_host(mvi->shost);
mvi               590 drivers/scsi/mvsas/mv_init.c 	scsi_remove_host(mvi->shost);
mvi               603 drivers/scsi/mvsas/mv_init.c 	struct mvs_info *mvi = NULL;
mvi               606 drivers/scsi/mvsas/mv_init.c 	mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[0];
mvi               613 drivers/scsi/mvsas/mv_init.c 	sas_remove_host(mvi->shost);
mvi               615 drivers/scsi/mvsas/mv_init.c 	MVS_CHIP_DISP->interrupt_disable(mvi);
mvi               616 drivers/scsi/mvsas/mv_init.c 	free_irq(mvi->pdev->irq, sha);
mvi               618 drivers/scsi/mvsas/mv_init.c 		mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[i];
mvi               619 drivers/scsi/mvsas/mv_init.c 		mvs_free(mvi);
mvi               713 drivers/scsi/mvsas/mv_init.c 	struct mvs_info *mvi = NULL;
mvi               732 drivers/scsi/mvsas/mv_init.c 	mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[0];
mvi               734 drivers/scsi/mvsas/mv_init.c 	if (unlikely(!mvi))
mvi               738 drivers/scsi/mvsas/mv_init.c 		mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[i];
mvi               740 drivers/scsi/mvsas/mv_init.c 			MVS_CHIP_DISP->tune_interrupt(mvi,
mvi                12 drivers/scsi/mvsas/mv_sas.c static int mvs_find_tag(struct mvs_info *mvi, struct sas_task *task, u32 *tag)
mvi                23 drivers/scsi/mvsas/mv_sas.c void mvs_tag_clear(struct mvs_info *mvi, u32 tag)
mvi                25 drivers/scsi/mvsas/mv_sas.c 	void *bitmap = mvi->tags;
mvi                29 drivers/scsi/mvsas/mv_sas.c void mvs_tag_free(struct mvs_info *mvi, u32 tag)
mvi                31 drivers/scsi/mvsas/mv_sas.c 	mvs_tag_clear(mvi, tag);
mvi                34 drivers/scsi/mvsas/mv_sas.c void mvs_tag_set(struct mvs_info *mvi, unsigned int tag)
mvi                36 drivers/scsi/mvsas/mv_sas.c 	void *bitmap = mvi->tags;
mvi                40 drivers/scsi/mvsas/mv_sas.c inline int mvs_tag_alloc(struct mvs_info *mvi, u32 *tag_out)
mvi                43 drivers/scsi/mvsas/mv_sas.c 	void *bitmap = mvi->tags;
mvi                45 drivers/scsi/mvsas/mv_sas.c 	index = find_first_zero_bit(bitmap, mvi->tags_num);
mvi                47 drivers/scsi/mvsas/mv_sas.c 	if (tag >= mvi->tags_num)
mvi                49 drivers/scsi/mvsas/mv_sas.c 	mvs_tag_set(mvi, tag);
mvi                54 drivers/scsi/mvsas/mv_sas.c void mvs_tag_init(struct mvs_info *mvi)
mvi                57 drivers/scsi/mvsas/mv_sas.c 	for (i = 0; i < mvi->tags_num; ++i)
mvi                58 drivers/scsi/mvsas/mv_sas.c 		mvs_tag_clear(mvi, i);
mvi                65 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = NULL;
mvi                83 drivers/scsi/mvsas/mv_sas.c 	mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[hi];
mvi                85 drivers/scsi/mvsas/mv_sas.c 	return mvi;
mvi                93 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = mvi_dev->mvi_info;
mvi               107 drivers/scsi/mvsas/mv_sas.c 				phyno[n] = (j >= mvi->chip->n_phy) ?
mvi               108 drivers/scsi/mvsas/mv_sas.c 					(j - mvi->chip->n_phy) : j;
mvi               119 drivers/scsi/mvsas/mv_sas.c struct mvs_device *mvs_find_dev_by_reg_set(struct mvs_info *mvi,
mvi               124 drivers/scsi/mvsas/mv_sas.c 		if (mvi->devices[dev_no].taskfileset == MVS_ID_NOT_MAPPED)
mvi               127 drivers/scsi/mvsas/mv_sas.c 		if (mvi->devices[dev_no].taskfileset == reg_set)
mvi               128 drivers/scsi/mvsas/mv_sas.c 			return &mvi->devices[dev_no];
mvi               133 drivers/scsi/mvsas/mv_sas.c static inline void mvs_free_reg_set(struct mvs_info *mvi,
mvi               142 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->free_reg_set(mvi, &dev->taskfileset);
mvi               145 drivers/scsi/mvsas/mv_sas.c static inline u8 mvs_assign_reg_set(struct mvs_info *mvi,
mvi               150 drivers/scsi/mvsas/mv_sas.c 	return MVS_CHIP_DISP->assign_reg_set(mvi, &dev->taskfileset);
mvi               153 drivers/scsi/mvsas/mv_sas.c void mvs_phys_reset(struct mvs_info *mvi, u32 phy_mask, int hard)
mvi               159 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->phy_reset(mvi, no, hard);
mvi               169 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = NULL;
mvi               177 drivers/scsi/mvsas/mv_sas.c 	mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[hi];
mvi               181 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->phy_set_link_rate(mvi, phy_id, funcdata);
mvi               185 drivers/scsi/mvsas/mv_sas.c 		tmp = MVS_CHIP_DISP->read_phy_ctl(mvi, phy_id);
mvi               188 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->phy_reset(mvi, phy_id, MVS_HARD_RESET);
mvi               192 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->phy_enable(mvi, phy_id);
mvi               193 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->phy_reset(mvi, phy_id, MVS_SOFT_RESET);
mvi               197 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->phy_disable(mvi, phy_id);
mvi               207 drivers/scsi/mvsas/mv_sas.c void mvs_set_sas_addr(struct mvs_info *mvi, int port_id, u32 off_lo,
mvi               213 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->write_port_cfg_addr(mvi, port_id, off_lo);
mvi               214 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->write_port_cfg_data(mvi, port_id, lo);
mvi               215 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->write_port_cfg_addr(mvi, port_id, off_hi);
mvi               216 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->write_port_cfg_data(mvi, port_id, hi);
mvi               219 drivers/scsi/mvsas/mv_sas.c static void mvs_bytes_dmaed(struct mvs_info *mvi, int i)
mvi               221 drivers/scsi/mvsas/mv_sas.c 	struct mvs_phy *phy = &mvi->phy[i];
mvi               232 drivers/scsi/mvsas/mv_sas.c 	sas_ha = mvi->sas;
mvi               255 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->write_port_cfg_addr(mvi, i, PHYR_PHY_STAT);
mvi               256 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->write_port_cfg_data(mvi, i, 0x00);
mvi               261 drivers/scsi/mvsas/mv_sas.c 	mv_dprintk("phy %d byte dmaded.\n", i + mvi->id * mvi->chip->n_phy);
mvi               265 drivers/scsi/mvsas/mv_sas.c 	mvi->sas->notify_port_event(sas_phy,
mvi               273 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi;
mvi               280 drivers/scsi/mvsas/mv_sas.c 		mvi = ((struct mvs_prv_info *)sha->lldd_ha)->mvi[j];
mvi               281 drivers/scsi/mvsas/mv_sas.c 		for (i = 0; i < mvi->chip->n_phy; ++i)
mvi               282 drivers/scsi/mvsas/mv_sas.c 			mvs_bytes_dmaed(mvi, i);
mvi               299 drivers/scsi/mvsas/mv_sas.c static int mvs_task_prep_smp(struct mvs_info *mvi,
mvi               303 drivers/scsi/mvsas/mv_sas.c 	struct sas_ha_struct *sha = mvi->sas;
mvi               316 drivers/scsi/mvsas/mv_sas.c 	struct mvs_slot_info *slot = &mvi->slot_info[tag];
mvi               323 drivers/scsi/mvsas/mv_sas.c 	elem = dma_map_sg(mvi->dev, sg_req, 1, DMA_TO_DEVICE);
mvi               329 drivers/scsi/mvsas/mv_sas.c 	elem = dma_map_sg(mvi->dev, sg_resp, 1, DMA_FROM_DEVICE);
mvi               373 drivers/scsi/mvsas/mv_sas.c 	if (mvi->flags & MVF_FLAG_SOC)
mvi               379 drivers/scsi/mvsas/mv_sas.c 	slot->tx = mvi->tx_prod;
mvi               380 drivers/scsi/mvsas/mv_sas.c 	mvi->tx[mvi->tx_prod] = cpu_to_le32((TXQ_CMD_SMP << TXQ_CMD_SHIFT) |
mvi               402 drivers/scsi/mvsas/mv_sas.c 	dma_unmap_sg(mvi->dev, &tei->task->smp_task.smp_resp, 1,
mvi               405 drivers/scsi/mvsas/mv_sas.c 	dma_unmap_sg(mvi->dev, &tei->task->smp_task.smp_req, 1,
mvi               428 drivers/scsi/mvsas/mv_sas.c static int mvs_task_prep_ata(struct mvs_info *mvi,
mvi               446 drivers/scsi/mvsas/mv_sas.c 	if (mvs_assign_reg_set(mvi, mvi_dev) == MVS_ID_NOT_MAPPED) {
mvi               451 drivers/scsi/mvsas/mv_sas.c 	slot = &mvi->slot_info[tag];
mvi               452 drivers/scsi/mvsas/mv_sas.c 	slot->tx = mvi->tx_prod;
mvi               457 drivers/scsi/mvsas/mv_sas.c 	mvi->tx[mvi->tx_prod] = cpu_to_le32(del_q);
mvi               518 drivers/scsi/mvsas/mv_sas.c 	if (mvi->flags & MVF_FLAG_SOC)
mvi               548 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->dma_fix(mvi, sas_port->phy_mask,
mvi               554 drivers/scsi/mvsas/mv_sas.c static int mvs_task_prep_ssp(struct mvs_info *mvi,
mvi               575 drivers/scsi/mvsas/mv_sas.c 	slot = &mvi->slot_info[tag];
mvi               580 drivers/scsi/mvsas/mv_sas.c 	slot->tx = mvi->tx_prod;
mvi               581 drivers/scsi/mvsas/mv_sas.c 	mvi->tx[mvi->tx_prod] = cpu_to_le32(TXQ_MODE_I | tag |
mvi               633 drivers/scsi/mvsas/mv_sas.c 	if (mvi->flags & MVF_FLAG_SOC)
mvi               695 drivers/scsi/mvsas/mv_sas.c static int mvs_task_prep(struct sas_task *task, struct mvs_info *mvi, int is_tmf,
mvi               754 drivers/scsi/mvsas/mv_sas.c 			n_elem = dma_map_sg(mvi->dev,
mvi               767 drivers/scsi/mvsas/mv_sas.c 	rc = mvs_tag_alloc(mvi, &tag);
mvi               771 drivers/scsi/mvsas/mv_sas.c 	slot = &mvi->slot_info[tag];
mvi               777 drivers/scsi/mvsas/mv_sas.c 	slot->buf = dma_pool_zalloc(mvi->dma_pool, GFP_ATOMIC, &slot->buf_dma);
mvi               784 drivers/scsi/mvsas/mv_sas.c 	tei.hdr = &mvi->slot[tag];
mvi               789 drivers/scsi/mvsas/mv_sas.c 		rc = mvs_task_prep_smp(mvi, &tei);
mvi               792 drivers/scsi/mvsas/mv_sas.c 		rc = mvs_task_prep_ssp(mvi, &tei, is_tmf, tmf);
mvi               797 drivers/scsi/mvsas/mv_sas.c 		rc = mvs_task_prep_ata(mvi, &tei);
mvi               800 drivers/scsi/mvsas/mv_sas.c 		dev_printk(KERN_ERR, mvi->dev,
mvi               821 drivers/scsi/mvsas/mv_sas.c 	mvi->tx_prod = (mvi->tx_prod + 1) & (MVS_CHIP_SLOT_SZ - 1);
mvi               826 drivers/scsi/mvsas/mv_sas.c 	dma_pool_free(mvi->dma_pool, slot->buf, slot->buf_dma);
mvi               828 drivers/scsi/mvsas/mv_sas.c 	mvs_tag_free(mvi, tag);
mvi               831 drivers/scsi/mvsas/mv_sas.c 	dev_printk(KERN_ERR, mvi->dev, "mvsas prep failed[%d]!\n", rc);
mvi               834 drivers/scsi/mvsas/mv_sas.c 			dma_unmap_sg(mvi->dev, task->scatter, n_elem,
mvi               844 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = NULL;
mvi               849 drivers/scsi/mvsas/mv_sas.c 	mvi = ((struct mvs_device *)task->dev->lldd_dev)->mvi_info;
mvi               851 drivers/scsi/mvsas/mv_sas.c 	spin_lock_irqsave(&mvi->lock, flags);
mvi               852 drivers/scsi/mvsas/mv_sas.c 	rc = mvs_task_prep(task, mvi, is_tmf, tmf, &pass);
mvi               854 drivers/scsi/mvsas/mv_sas.c 		dev_printk(KERN_ERR, mvi->dev, "mvsas exec failed[%d]!\n", rc);
mvi               857 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->start_delivery(mvi, (mvi->tx_prod - 1) &
mvi               859 drivers/scsi/mvsas/mv_sas.c 	spin_unlock_irqrestore(&mvi->lock, flags);
mvi               869 drivers/scsi/mvsas/mv_sas.c static void mvs_slot_free(struct mvs_info *mvi, u32 rx_desc)
mvi               872 drivers/scsi/mvsas/mv_sas.c 	mvs_tag_clear(mvi, slot_idx);
mvi               875 drivers/scsi/mvsas/mv_sas.c static void mvs_slot_task_free(struct mvs_info *mvi, struct sas_task *task,
mvi               884 drivers/scsi/mvsas/mv_sas.c 			dma_unmap_sg(mvi->dev, task->scatter,
mvi               889 drivers/scsi/mvsas/mv_sas.c 		dma_unmap_sg(mvi->dev, &task->smp_task.smp_resp, 1,
mvi               891 drivers/scsi/mvsas/mv_sas.c 		dma_unmap_sg(mvi->dev, &task->smp_task.smp_req, 1,
mvi               904 drivers/scsi/mvsas/mv_sas.c 		dma_pool_free(mvi->dma_pool, slot->buf, slot->buf_dma);
mvi               912 drivers/scsi/mvsas/mv_sas.c 	mvs_slot_free(mvi, slot_idx);
mvi               915 drivers/scsi/mvsas/mv_sas.c static void mvs_update_wideport(struct mvs_info *mvi, int phy_no)
mvi               917 drivers/scsi/mvsas/mv_sas.c 	struct mvs_phy *phy = &mvi->phy[phy_no];
mvi               923 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->write_port_cfg_addr(mvi, no,
mvi               925 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->write_port_cfg_data(mvi, no,
mvi               928 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->write_port_cfg_addr(mvi, no,
mvi               930 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->write_port_cfg_data(mvi, no,
mvi               936 drivers/scsi/mvsas/mv_sas.c static u32 mvs_is_phy_ready(struct mvs_info *mvi, int i)
mvi               939 drivers/scsi/mvsas/mv_sas.c 	struct mvs_phy *phy = &mvi->phy[i];
mvi               942 drivers/scsi/mvsas/mv_sas.c 	tmp = MVS_CHIP_DISP->read_phy_ctl(mvi, i);
mvi               954 drivers/scsi/mvsas/mv_sas.c 			mvs_update_wideport(mvi, i);
mvi               964 drivers/scsi/mvsas/mv_sas.c static void *mvs_get_d2h_reg(struct mvs_info *mvi, int i, void *buf)
mvi               971 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->write_port_cfg_addr(mvi, i, PHYR_SATA_SIG3);
mvi               972 drivers/scsi/mvsas/mv_sas.c 	s[3] = cpu_to_le32(MVS_CHIP_DISP->read_port_cfg_data(mvi, i));
mvi               974 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->write_port_cfg_addr(mvi, i, PHYR_SATA_SIG2);
mvi               975 drivers/scsi/mvsas/mv_sas.c 	s[2] = cpu_to_le32(MVS_CHIP_DISP->read_port_cfg_data(mvi, i));
mvi               977 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->write_port_cfg_addr(mvi, i, PHYR_SATA_SIG1);
mvi               978 drivers/scsi/mvsas/mv_sas.c 	s[1] = cpu_to_le32(MVS_CHIP_DISP->read_port_cfg_data(mvi, i));
mvi               980 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->write_port_cfg_addr(mvi, i, PHYR_SATA_SIG0);
mvi               981 drivers/scsi/mvsas/mv_sas.c 	s[0] = cpu_to_le32(MVS_CHIP_DISP->read_port_cfg_data(mvi, i));
mvi              1001 drivers/scsi/mvsas/mv_sas.c void mvs_update_phyinfo(struct mvs_info *mvi, int i, int get_st)
mvi              1003 drivers/scsi/mvsas/mv_sas.c 	struct mvs_phy *phy = &mvi->phy[i];
mvi              1009 drivers/scsi/mvsas/mv_sas.c 		phy->irq_status = MVS_CHIP_DISP->read_port_irq_stat(mvi, i);
mvi              1010 drivers/scsi/mvsas/mv_sas.c 		phy->phy_status = mvs_is_phy_ready(mvi, i);
mvi              1015 drivers/scsi/mvsas/mv_sas.c 		struct asd_sas_phy *sas_phy = &mvi->phy[i].sas_phy;
mvi              1017 drivers/scsi/mvsas/mv_sas.c 		oob_done = MVS_CHIP_DISP->oob_done(mvi, i);
mvi              1019 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->fix_phy_info(mvi, i, id);
mvi              1026 drivers/scsi/mvsas/mv_sas.c 					i + mvi->id * mvi->chip->n_phy;
mvi              1031 drivers/scsi/mvsas/mv_sas.c 				mvs_get_d2h_reg(mvi, i, id);
mvi              1034 drivers/scsi/mvsas/mv_sas.c 				dev_printk(KERN_DEBUG, mvi->dev,
mvi              1036 drivers/scsi/mvsas/mv_sas.c 				tmp = MVS_CHIP_DISP->read_port_irq_mask(mvi, i);
mvi              1037 drivers/scsi/mvsas/mv_sas.c 				MVS_CHIP_DISP->write_port_irq_mask(mvi, i,
mvi              1064 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->phy_work_around(mvi, i);
mvi              1067 drivers/scsi/mvsas/mv_sas.c 		i + mvi->id * mvi->chip->n_phy, phy->att_dev_info);
mvi              1069 drivers/scsi/mvsas/mv_sas.c 		i + mvi->id * mvi->chip->n_phy, phy->att_dev_sas_addr);
mvi              1072 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->write_port_irq_stat(mvi, i, phy->irq_status);
mvi              1078 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = NULL; int i = 0, hi;
mvi              1092 drivers/scsi/mvsas/mv_sas.c 	mvi = ((struct mvs_prv_info *)sas_ha->lldd_ha)->mvi[hi];
mvi              1093 drivers/scsi/mvsas/mv_sas.c 	if (i >= mvi->chip->n_phy)
mvi              1094 drivers/scsi/mvsas/mv_sas.c 		port = &mvi->port[i - mvi->chip->n_phy];
mvi              1096 drivers/scsi/mvsas/mv_sas.c 		port = &mvi->port[i];
mvi              1098 drivers/scsi/mvsas/mv_sas.c 		spin_lock_irqsave(&mvi->lock, flags);
mvi              1105 drivers/scsi/mvsas/mv_sas.c 		mvs_update_wideport(mvi, sas_phy->id);
mvi              1109 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->write_port_cfg_addr(mvi, i, PHYR_PHY_STAT);
mvi              1110 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->write_port_cfg_data(mvi, i, 0x04);
mvi              1114 drivers/scsi/mvsas/mv_sas.c 		spin_unlock_irqrestore(&mvi->lock, flags);
mvi              1121 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = phy->mvi;
mvi              1125 drivers/scsi/mvsas/mv_sas.c 	while (phy != &mvi->phy[phy_no]) {
mvi              1131 drivers/scsi/mvsas/mv_sas.c 		mvs_do_release_task(phy->mvi, phy_no, dev);
mvi              1146 drivers/scsi/mvsas/mv_sas.c static struct mvs_device *mvs_alloc_dev(struct mvs_info *mvi)
mvi              1150 drivers/scsi/mvsas/mv_sas.c 		if (mvi->devices[dev].dev_type == SAS_PHY_UNUSED) {
mvi              1151 drivers/scsi/mvsas/mv_sas.c 			mvi->devices[dev].device_id = dev;
mvi              1152 drivers/scsi/mvsas/mv_sas.c 			return &mvi->devices[dev];
mvi              1177 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = NULL;
mvi              1181 drivers/scsi/mvsas/mv_sas.c 	mvi = mvs_find_dev_mvi(dev);
mvi              1184 drivers/scsi/mvsas/mv_sas.c 		spin_lock_irqsave(&mvi->lock, flags);
mvi              1186 drivers/scsi/mvsas/mv_sas.c 	mvi_device = mvs_alloc_dev(mvi);
mvi              1194 drivers/scsi/mvsas/mv_sas.c 	mvi_device->mvi_info = mvi;
mvi              1220 drivers/scsi/mvsas/mv_sas.c 		spin_unlock_irqrestore(&mvi->lock, flags);
mvi              1233 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi;
mvi              1240 drivers/scsi/mvsas/mv_sas.c 	mvi = mvi_dev->mvi_info;
mvi              1242 drivers/scsi/mvsas/mv_sas.c 	spin_lock_irqsave(&mvi->lock, flags);
mvi              1246 drivers/scsi/mvsas/mv_sas.c 	mvs_release_task(mvi, dev);
mvi              1247 drivers/scsi/mvsas/mv_sas.c 	mvs_free_reg_set(mvi, mvi_dev);
mvi              1253 drivers/scsi/mvsas/mv_sas.c 	spin_unlock_irqrestore(&mvi->lock, flags);
mvi              1389 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = mvi_dev->mvi_info;
mvi              1395 drivers/scsi/mvsas/mv_sas.c 		spin_lock_irqsave(&mvi->lock, flags);
mvi              1396 drivers/scsi/mvsas/mv_sas.c 		mvs_release_task(mvi, dev);
mvi              1397 drivers/scsi/mvsas/mv_sas.c 		spin_unlock_irqrestore(&mvi->lock, flags);
mvi              1410 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = mvi_dev->mvi_info;
mvi              1420 drivers/scsi/mvsas/mv_sas.c 	spin_lock_irqsave(&mvi->lock, flags);
mvi              1421 drivers/scsi/mvsas/mv_sas.c 	mvs_release_task(mvi, dev);
mvi              1422 drivers/scsi/mvsas/mv_sas.c 	spin_unlock_irqrestore(&mvi->lock, flags);
mvi              1438 drivers/scsi/mvsas/mv_sas.c 		struct mvs_info *mvi = mvi_dev->mvi_info;
mvi              1441 drivers/scsi/mvsas/mv_sas.c 		rc = mvs_find_tag(mvi, task, &tag);
mvi              1471 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi;
mvi              1481 drivers/scsi/mvsas/mv_sas.c 	mvi = mvi_dev->mvi_info;
mvi              1495 drivers/scsi/mvsas/mv_sas.c 		rc = mvs_find_tag(mvi, task, &tag);
mvi              1514 drivers/scsi/mvsas/mv_sas.c 				slot_no = (u32) (slot - mvi->slot_info);
mvi              1515 drivers/scsi/mvsas/mv_sas.c 				spin_lock_irqsave(&mvi->lock, flags);
mvi              1516 drivers/scsi/mvsas/mv_sas.c 				mvs_slot_complete(mvi, slot_no, 1);
mvi              1517 drivers/scsi/mvsas/mv_sas.c 				spin_unlock_irqrestore(&mvi->lock, flags);
mvi              1525 drivers/scsi/mvsas/mv_sas.c 			u32 slot_idx = (u32)(slot - mvi->slot_info);
mvi              1528 drivers/scsi/mvsas/mv_sas.c 				   mvi, task, slot, slot_idx);
mvi              1530 drivers/scsi/mvsas/mv_sas.c 			mvs_slot_task_free(mvi, task, slot, slot_idx);
mvi              1575 drivers/scsi/mvsas/mv_sas.c static int mvs_sata_done(struct mvs_info *mvi, struct sas_task *task,
mvi              1649 drivers/scsi/mvsas/mv_sas.c static int mvs_slot_err(struct mvs_info *mvi, struct sas_task *task,
mvi              1652 drivers/scsi/mvsas/mv_sas.c 	struct mvs_slot_info *slot = &mvi->slot_info[slot_idx];
mvi              1660 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->issue_stop(mvi, type, tfs);
mvi              1662 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->command_active(mvi, slot_idx);
mvi              1673 drivers/scsi/mvsas/mv_sas.c 			sas_ssp_task_response(mvi->dev, task, iu);
mvi              1690 drivers/scsi/mvsas/mv_sas.c 		mvs_sata_done(mvi, task, slot_idx, err_dw0);
mvi              1700 drivers/scsi/mvsas/mv_sas.c int mvs_slot_complete(struct mvs_info *mvi, u32 rx_desc, u32 flags)
mvi              1703 drivers/scsi/mvsas/mv_sas.c 	struct mvs_slot_info *slot = &mvi->slot_info[slot_idx];
mvi              1736 drivers/scsi/mvsas/mv_sas.c 			mvs_free_reg_set(mvi, mvi_dev);
mvi              1738 drivers/scsi/mvsas/mv_sas.c 		mvs_slot_task_free(mvi, task, slot, slot_idx);
mvi              1760 drivers/scsi/mvsas/mv_sas.c 		tstat->stat = mvs_slot_err(mvi, task, slot_idx);
mvi              1776 drivers/scsi/mvsas/mv_sas.c 			sas_ssp_task_response(mvi->dev, task, iu);
mvi              1795 drivers/scsi/mvsas/mv_sas.c 			tstat->stat = mvs_sata_done(mvi, task, slot_idx, 0);
mvi              1813 drivers/scsi/mvsas/mv_sas.c 			mvs_free_reg_set(mvi, mvi_dev);
mvi              1815 drivers/scsi/mvsas/mv_sas.c 	mvs_slot_task_free(mvi, task, slot, slot_idx);
mvi              1818 drivers/scsi/mvsas/mv_sas.c 	spin_unlock(&mvi->lock);
mvi              1822 drivers/scsi/mvsas/mv_sas.c 	spin_lock(&mvi->lock);
mvi              1827 drivers/scsi/mvsas/mv_sas.c void mvs_do_release_task(struct mvs_info *mvi,
mvi              1835 drivers/scsi/mvsas/mv_sas.c 	phy = &mvi->phy[phy_no];
mvi              1840 drivers/scsi/mvsas/mv_sas.c 	mvs_int_rx(mvi, false);
mvi              1846 drivers/scsi/mvsas/mv_sas.c 		slot_idx = (u32) (slot - mvi->slot_info);
mvi              1854 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->command_active(mvi, slot_idx);
mvi              1856 drivers/scsi/mvsas/mv_sas.c 		mvs_slot_complete(mvi, slot_idx, 1);
mvi              1860 drivers/scsi/mvsas/mv_sas.c void mvs_release_task(struct mvs_info *mvi,
mvi              1866 drivers/scsi/mvsas/mv_sas.c 		mvs_do_release_task(mvi, phyno[i], dev);
mvi              1880 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = mwq->mvi;
mvi              1883 drivers/scsi/mvsas/mv_sas.c 	struct sas_ha_struct *sas_ha = mvi->sas;
mvi              1884 drivers/scsi/mvsas/mv_sas.c 	struct mvs_phy *phy = &mvi->phy[phy_no];
mvi              1887 drivers/scsi/mvsas/mv_sas.c 	spin_lock_irqsave(&mvi->lock, flags);
mvi              1893 drivers/scsi/mvsas/mv_sas.c 			tmp = MVS_CHIP_DISP->read_phy_ctl(mvi, phy_no);
mvi              1902 drivers/scsi/mvsas/mv_sas.c 				MVS_CHIP_DISP->detect_porttype(mvi, phy_no);
mvi              1903 drivers/scsi/mvsas/mv_sas.c 				mvs_update_phyinfo(mvi, phy_no, 1);
mvi              1904 drivers/scsi/mvsas/mv_sas.c 				mvs_bytes_dmaed(mvi, phy_no);
mvi              1916 drivers/scsi/mvsas/mv_sas.c 	spin_unlock_irqrestore(&mvi->lock, flags);
mvi              1920 drivers/scsi/mvsas/mv_sas.c static int mvs_handle_event(struct mvs_info *mvi, void *data, int handler)
mvi              1927 drivers/scsi/mvsas/mv_sas.c 		mwq->mvi = mvi;
mvi              1931 drivers/scsi/mvsas/mv_sas.c 		list_add_tail(&mwq->entry, &mvi->wq_list);
mvi              1942 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = phy->mvi;
mvi              1945 drivers/scsi/mvsas/mv_sas.c 	for (phy_no = 0; phy_no < mvi->chip->n_phy; phy_no++) {
mvi              1946 drivers/scsi/mvsas/mv_sas.c 		if (&mvi->phy[phy_no] == phy) {
mvi              1948 drivers/scsi/mvsas/mv_sas.c 				phy_no+mvi->id*mvi->chip->n_phy);
mvi              1949 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->phy_reset(mvi, phy_no, MVS_HARD_RESET);
mvi              1954 drivers/scsi/mvsas/mv_sas.c void mvs_int_port(struct mvs_info *mvi, int phy_no, u32 events)
mvi              1957 drivers/scsi/mvsas/mv_sas.c 	struct mvs_phy *phy = &mvi->phy[phy_no];
mvi              1959 drivers/scsi/mvsas/mv_sas.c 	phy->irq_status = MVS_CHIP_DISP->read_port_irq_stat(mvi, phy_no);
mvi              1960 drivers/scsi/mvsas/mv_sas.c 	MVS_CHIP_DISP->write_port_irq_stat(mvi, phy_no, phy->irq_status);
mvi              1961 drivers/scsi/mvsas/mv_sas.c 	mv_dprintk("phy %d ctrl sts=0x%08X.\n", phy_no+mvi->id*mvi->chip->n_phy,
mvi              1962 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->read_phy_ctl(mvi, phy_no));
mvi              1963 drivers/scsi/mvsas/mv_sas.c 	mv_dprintk("phy %d irq sts = 0x%08X\n", phy_no+mvi->id*mvi->chip->n_phy,
mvi              1973 drivers/scsi/mvsas/mv_sas.c 		phy_no + mvi->id*mvi->chip->n_phy);
mvi              1981 drivers/scsi/mvsas/mv_sas.c 			mvs_do_release_task(mvi, phy_no, NULL);
mvi              1983 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->clear_srs_irq(mvi, 0, 1);
mvi              1984 drivers/scsi/mvsas/mv_sas.c 			mvs_handle_event(mvi,
mvi              1987 drivers/scsi/mvsas/mv_sas.c 			ready = mvs_is_phy_ready(mvi, phy_no);
mvi              1990 drivers/scsi/mvsas/mv_sas.c 					MVS_CHIP_DISP->stp_reset(mvi,
mvi              1993 drivers/scsi/mvsas/mv_sas.c 					MVS_CHIP_DISP->phy_reset(mvi,
mvi              2001 drivers/scsi/mvsas/mv_sas.c 		tmp = MVS_CHIP_DISP->read_port_irq_mask(mvi, phy_no);
mvi              2002 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->write_port_irq_mask(mvi, phy_no,
mvi              2011 drivers/scsi/mvsas/mv_sas.c 		phy->phy_status = mvs_is_phy_ready(mvi, phy_no);
mvi              2015 drivers/scsi/mvsas/mv_sas.c 			MVS_CHIP_DISP->detect_porttype(mvi, phy_no);
mvi              2018 drivers/scsi/mvsas/mv_sas.c 						mvi, phy_no);
mvi              2020 drivers/scsi/mvsas/mv_sas.c 				MVS_CHIP_DISP->write_port_irq_mask(mvi,
mvi              2023 drivers/scsi/mvsas/mv_sas.c 			mvs_update_phyinfo(mvi, phy_no, 0);
mvi              2025 drivers/scsi/mvsas/mv_sas.c 				MVS_CHIP_DISP->phy_reset(mvi, phy_no, MVS_PHY_TUNE);
mvi              2029 drivers/scsi/mvsas/mv_sas.c 			mvs_bytes_dmaed(mvi, phy_no);
mvi              2037 drivers/scsi/mvsas/mv_sas.c 				phy_no + mvi->id*mvi->chip->n_phy);
mvi              2041 drivers/scsi/mvsas/mv_sas.c 			phy_no + mvi->id*mvi->chip->n_phy);
mvi              2042 drivers/scsi/mvsas/mv_sas.c 		mvs_handle_event(mvi, (void *)(unsigned long)phy_no,
mvi              2047 drivers/scsi/mvsas/mv_sas.c int mvs_int_rx(struct mvs_info *mvi, bool self_clear)
mvi              2057 drivers/scsi/mvsas/mv_sas.c 	rx_prod_idx = mvi->rx_cons;
mvi              2058 drivers/scsi/mvsas/mv_sas.c 	mvi->rx_cons = le32_to_cpu(mvi->rx[0]);
mvi              2059 drivers/scsi/mvsas/mv_sas.c 	if (mvi->rx_cons == 0xfff)	/* h/w hasn't touched RX ring yet */
mvi              2066 drivers/scsi/mvsas/mv_sas.c 	if (unlikely(mvi->rx_cons == rx_prod_idx))
mvi              2067 drivers/scsi/mvsas/mv_sas.c 		mvi->rx_cons = MVS_CHIP_DISP->rx_update(mvi) & RX_RING_SZ_MASK;
mvi              2069 drivers/scsi/mvsas/mv_sas.c 	if (mvi->rx_cons == rx_prod_idx)
mvi              2072 drivers/scsi/mvsas/mv_sas.c 	while (mvi->rx_cons != rx_prod_idx) {
mvi              2075 drivers/scsi/mvsas/mv_sas.c 		rx_desc = le32_to_cpu(mvi->rx[rx_prod_idx + 1]);
mvi              2078 drivers/scsi/mvsas/mv_sas.c 			mvs_slot_complete(mvi, rx_desc, 0);
mvi              2083 drivers/scsi/mvsas/mv_sas.c 				mvs_slot_complete(mvi, rx_desc, 0);
mvi              2085 drivers/scsi/mvsas/mv_sas.c 			mvs_slot_free(mvi, rx_desc);
mvi              2090 drivers/scsi/mvsas/mv_sas.c 		MVS_CHIP_DISP->int_full(mvi);
mvi              2098 drivers/scsi/mvsas/mv_sas.c 	struct mvs_info *mvi = mvs_prv->mvi[0];
mvi                63 drivers/scsi/mvsas/mv_sas.h 	((void *) mvi->rx_fis + 0x100 * id)
mvi                65 drivers/scsi/mvsas/mv_sas.h 	((void *) mvi->rx_fis + mvi->chip->fis_offs + 0x100 * reg_set)
mvi                91 drivers/scsi/mvsas/mv_sas.h 	int (*chip_init)(struct mvs_info *mvi);
mvi                92 drivers/scsi/mvsas/mv_sas.h 	int (*spi_init)(struct mvs_info *mvi);
mvi                93 drivers/scsi/mvsas/mv_sas.h 	int (*chip_ioremap)(struct mvs_info *mvi);
mvi                94 drivers/scsi/mvsas/mv_sas.h 	void (*chip_iounmap)(struct mvs_info *mvi);
mvi                95 drivers/scsi/mvsas/mv_sas.h 	irqreturn_t (*isr)(struct mvs_info *mvi, int irq, u32 stat);
mvi                96 drivers/scsi/mvsas/mv_sas.h 	u32 (*isr_status)(struct mvs_info *mvi, int irq);
mvi                97 drivers/scsi/mvsas/mv_sas.h 	void (*interrupt_enable)(struct mvs_info *mvi);
mvi                98 drivers/scsi/mvsas/mv_sas.h 	void (*interrupt_disable)(struct mvs_info *mvi);
mvi               100 drivers/scsi/mvsas/mv_sas.h 	u32 (*read_phy_ctl)(struct mvs_info *mvi, u32 port);
mvi               101 drivers/scsi/mvsas/mv_sas.h 	void (*write_phy_ctl)(struct mvs_info *mvi, u32 port, u32 val);
mvi               103 drivers/scsi/mvsas/mv_sas.h 	u32 (*read_port_cfg_data)(struct mvs_info *mvi, u32 port);
mvi               104 drivers/scsi/mvsas/mv_sas.h 	void (*write_port_cfg_data)(struct mvs_info *mvi, u32 port, u32 val);
mvi               105 drivers/scsi/mvsas/mv_sas.h 	void (*write_port_cfg_addr)(struct mvs_info *mvi, u32 port, u32 addr);
mvi               107 drivers/scsi/mvsas/mv_sas.h 	u32 (*read_port_vsr_data)(struct mvs_info *mvi, u32 port);
mvi               108 drivers/scsi/mvsas/mv_sas.h 	void (*write_port_vsr_data)(struct mvs_info *mvi, u32 port, u32 val);
mvi               109 drivers/scsi/mvsas/mv_sas.h 	void (*write_port_vsr_addr)(struct mvs_info *mvi, u32 port, u32 addr);
mvi               111 drivers/scsi/mvsas/mv_sas.h 	u32 (*read_port_irq_stat)(struct mvs_info *mvi, u32 port);
mvi               112 drivers/scsi/mvsas/mv_sas.h 	void (*write_port_irq_stat)(struct mvs_info *mvi, u32 port, u32 val);
mvi               114 drivers/scsi/mvsas/mv_sas.h 	u32 (*read_port_irq_mask)(struct mvs_info *mvi, u32 port);
mvi               115 drivers/scsi/mvsas/mv_sas.h 	void (*write_port_irq_mask)(struct mvs_info *mvi, u32 port, u32 val);
mvi               117 drivers/scsi/mvsas/mv_sas.h 	void (*command_active)(struct mvs_info *mvi, u32 slot_idx);
mvi               118 drivers/scsi/mvsas/mv_sas.h 	void (*clear_srs_irq)(struct mvs_info *mvi, u8 reg_set, u8 clear_all);
mvi               119 drivers/scsi/mvsas/mv_sas.h 	void (*issue_stop)(struct mvs_info *mvi, enum mvs_port_type type,
mvi               121 drivers/scsi/mvsas/mv_sas.h 	void (*start_delivery)(struct mvs_info *mvi, u32 tx);
mvi               122 drivers/scsi/mvsas/mv_sas.h 	u32 (*rx_update)(struct mvs_info *mvi);
mvi               123 drivers/scsi/mvsas/mv_sas.h 	void (*int_full)(struct mvs_info *mvi);
mvi               124 drivers/scsi/mvsas/mv_sas.h 	u8 (*assign_reg_set)(struct mvs_info *mvi, u8 *tfs);
mvi               125 drivers/scsi/mvsas/mv_sas.h 	void (*free_reg_set)(struct mvs_info *mvi, u8 *tfs);
mvi               129 drivers/scsi/mvsas/mv_sas.h 	void (*detect_porttype)(struct mvs_info *mvi, int i);
mvi               130 drivers/scsi/mvsas/mv_sas.h 	int (*oob_done)(struct mvs_info *mvi, int i);
mvi               131 drivers/scsi/mvsas/mv_sas.h 	void (*fix_phy_info)(struct mvs_info *mvi, int i,
mvi               133 drivers/scsi/mvsas/mv_sas.h 	void (*phy_work_around)(struct mvs_info *mvi, int i);
mvi               134 drivers/scsi/mvsas/mv_sas.h 	void (*phy_set_link_rate)(struct mvs_info *mvi, u32 phy_id,
mvi               137 drivers/scsi/mvsas/mv_sas.h 	void (*phy_disable)(struct mvs_info *mvi, u32 phy_id);
mvi               138 drivers/scsi/mvsas/mv_sas.h 	void (*phy_enable)(struct mvs_info *mvi, u32 phy_id);
mvi               139 drivers/scsi/mvsas/mv_sas.h 	void (*phy_reset)(struct mvs_info *mvi, u32 phy_id, int hard);
mvi               140 drivers/scsi/mvsas/mv_sas.h 	void (*stp_reset)(struct mvs_info *mvi, u32 phy_id);
mvi               141 drivers/scsi/mvsas/mv_sas.h 	void (*clear_active_cmds)(struct mvs_info *mvi);
mvi               142 drivers/scsi/mvsas/mv_sas.h 	u32 (*spi_read_data)(struct mvs_info *mvi);
mvi               143 drivers/scsi/mvsas/mv_sas.h 	void (*spi_write_data)(struct mvs_info *mvi, u32 data);
mvi               144 drivers/scsi/mvsas/mv_sas.h 	int (*spi_buildcmd)(struct mvs_info *mvi,
mvi               151 drivers/scsi/mvsas/mv_sas.h 	int (*spi_issuecmd)(struct mvs_info *mvi, u32 cmd);
mvi               152 drivers/scsi/mvsas/mv_sas.h 	int (*spi_waitdataready)(struct mvs_info *mvi, u32 timeout);
mvi               153 drivers/scsi/mvsas/mv_sas.h 	void (*dma_fix)(struct mvs_info *mvi, u32 phy_mask,
mvi               155 drivers/scsi/mvsas/mv_sas.h 	void (*tune_interrupt)(struct mvs_info *mvi, u32 time);
mvi               156 drivers/scsi/mvsas/mv_sas.h 	void (*non_spec_ncq_error)(struct mvs_info *mvi);
mvi               172 drivers/scsi/mvsas/mv_sas.h #define MVS_MAX_SG		(1U << mvi->chip->sg_width)
mvi               173 drivers/scsi/mvsas/mv_sas.h #define MVS_CHIP_SLOT_SZ	(1U << mvi->chip->slot_width)
mvi               175 drivers/scsi/mvsas/mv_sas.h 	(mvi->chip->fis_offs + (mvi->chip->fis_count * 0x100))
mvi               176 drivers/scsi/mvsas/mv_sas.h #define MVS_CHIP_DISP		(mvi->chip->dispatch)
mvi               203 drivers/scsi/mvsas/mv_sas.h 	struct mvs_info 		*mvi;
mvi               405 drivers/scsi/mvsas/mv_sas.h 	struct mvs_info *mvi[2];
mvi               411 drivers/scsi/mvsas/mv_sas.h 	struct mvs_info *mvi;
mvi               427 drivers/scsi/mvsas/mv_sas.h void mvs_tag_clear(struct mvs_info *mvi, u32 tag);
mvi               428 drivers/scsi/mvsas/mv_sas.h void mvs_tag_free(struct mvs_info *mvi, u32 tag);
mvi               429 drivers/scsi/mvsas/mv_sas.h void mvs_tag_set(struct mvs_info *mvi, unsigned int tag);
mvi               430 drivers/scsi/mvsas/mv_sas.h int mvs_tag_alloc(struct mvs_info *mvi, u32 *tag_out);
mvi               431 drivers/scsi/mvsas/mv_sas.h void mvs_tag_init(struct mvs_info *mvi);
mvi               433 drivers/scsi/mvsas/mv_sas.h int mvs_ioremap(struct mvs_info *mvi, int bar, int bar_ex);
mvi               434 drivers/scsi/mvsas/mv_sas.h void mvs_phys_reset(struct mvs_info *mvi, u32 phy_mask, int hard);
mvi               437 drivers/scsi/mvsas/mv_sas.h void mvs_set_sas_addr(struct mvs_info *mvi, int port_id, u32 off_lo,
mvi               451 drivers/scsi/mvsas/mv_sas.h int mvs_slot_complete(struct mvs_info *mvi, u32 rx_desc, u32 flags);
mvi               454 drivers/scsi/mvsas/mv_sas.h void mvs_release_task(struct mvs_info *mvi,
mvi               456 drivers/scsi/mvsas/mv_sas.h void mvs_do_release_task(struct mvs_info *mvi, int phy_no,
mvi               458 drivers/scsi/mvsas/mv_sas.h void mvs_int_port(struct mvs_info *mvi, int phy_no, u32 events);
mvi               459 drivers/scsi/mvsas/mv_sas.h void mvs_update_phyinfo(struct mvs_info *mvi, int i, int get_st);
mvi               460 drivers/scsi/mvsas/mv_sas.h int mvs_int_rx(struct mvs_info *mvi, bool self_clear);
mvi               461 drivers/scsi/mvsas/mv_sas.h struct mvs_device *mvs_find_dev_by_reg_set(struct mvs_info *mvi, u8 reg_set);