Lines Matching refs:hwif

70  *	is_sata			-	check if hwif is SATA
71 * @hwif: interface to check
76 static inline int is_sata(ide_hwif_t *hwif)
78 return pdev_is_sata(to_pci_dev(hwif->dev));
83 * @hwif: interface
92 static unsigned long siimage_selreg(ide_hwif_t *hwif, int r)
94 unsigned long base = (unsigned long)hwif->hwif_data;
97 if (hwif->host_flags & IDE_HFLAG_MMIO)
98 base += hwif->channel << 6;
100 base += hwif->channel << 4;
106 * @hwif: interface
116 ide_hwif_t *hwif = drive->hwif;
117 unsigned long base = (unsigned long)hwif->hwif_data;
121 if (hwif->host_flags & IDE_HFLAG_MMIO)
122 base += hwif->channel << 6;
124 base += hwif->channel << 4;
197 ide_hwif_t *hwif = drive->hwif;
198 struct pci_dev *dev = to_pci_dev(hwif->dev);
199 unsigned long base = (unsigned long)hwif->hwif_data;
202 base += (hwif->host_flags & IDE_HFLAG_MMIO) ? 0x4A : 0x8A;
232 * @hwif: port
239 static void sil_set_pio_mode(ide_hwif_t *hwif, ide_drive_t *drive)
244 struct pci_dev *dev = to_pci_dev(hwif->dev);
249 unsigned long tfaddr = siimage_selreg(hwif, 0x02);
250 unsigned long base = (unsigned long)hwif->hwif_data;
253 u8 mmio = (hwif->host_flags & IDE_HFLAG_MMIO) ? 1 : 0;
254 u8 addr_mask = hwif->channel ? (mmio ? 0xF4 : 0x84)
292 * @hwif: port
298 static void sil_set_dma_mode(ide_hwif_t *hwif, ide_drive_t *drive)
304 struct pci_dev *dev = to_pci_dev(hwif->dev);
305 unsigned long base = (unsigned long)hwif->hwif_data;
308 u8 mmio = (hwif->host_flags & IDE_HFLAG_MMIO) ? 1 : 0;
309 u8 scsc = 0, addr_mask = hwif->channel ? (mmio ? 0xF4 : 0x84)
324 scsc = is_sata(hwif) ? 1 : scsc;
341 static int sil_test_irq(ide_hwif_t *hwif)
343 struct pci_dev *dev = to_pci_dev(hwif->dev);
344 unsigned long addr = siimage_selreg(hwif, 1);
361 ide_hwif_t *hwif = drive->hwif;
363 = (void __iomem *)hwif->sata_scr[SATA_ERROR_OFFSET];
366 unsigned long base = (unsigned long)hwif->hwif_data;
370 if (ext_stat & ((hwif->channel) ? 0x40 : 0x10)) {
387 if (readb((void __iomem *)(hwif->dma_base + ATA_DMA_STATUS)) & 4)
395 if (drive->hwif->host_flags & IDE_HFLAG_MMIO)
411 ide_hwif_t *hwif = drive->hwif;
413 = (void __iomem *)hwif->sata_scr[SATA_STATUS_OFFSET];
421 hwif->name, sata_stat);
539 * @hwif: interface to set up
549 static void init_mmio_iops_siimage(ide_hwif_t *hwif)
551 struct pci_dev *dev = to_pci_dev(hwif->dev);
554 u8 ch = hwif->channel;
555 struct ide_io_ports *io_ports = &hwif->io_ports;
559 * Fill in the basic hwif bits
561 hwif->host_flags |= IDE_HFLAG_MMIO;
563 hwif->hwif_data = addr;
595 hwif->sata_scr[SATA_STATUS_OFFSET] = base + 0x104;
596 hwif->sata_scr[SATA_ERROR_OFFSET] = base + 0x108;
597 hwif->sata_scr[SATA_CONTROL_OFFSET] = base + 0x100;
600 hwif->irq = dev->irq;
602 hwif->dma_base = (unsigned long)addr + (ch ? 0x08 : 0x00);
632 ide_hwif_t *hwif = drive->hwif;
635 if (!is_sata(hwif) || !is_dev_seagate_sata(drive))
636 hwif->rqsize = 128;
641 * @hwif: interface to set up
645 * look in we get for setting up the hwif so that we
649 static void init_iops_siimage(ide_hwif_t *hwif)
651 struct pci_dev *dev = to_pci_dev(hwif->dev);
654 hwif->hwif_data = NULL;
657 hwif->rqsize = 15;
660 init_mmio_iops_siimage(hwif);
665 * @hwif: interface to check
670 static u8 sil_cable_detect(ide_hwif_t *hwif)
672 struct pci_dev *dev = to_pci_dev(hwif->dev);
673 unsigned long addr = siimage_selreg(hwif, 0);