Lines Matching defs:host
39 QS_HCF_CNFG3 = 0x0003, /* host configuration offset */
40 QS_HID_HPHY = 0x0004, /* host physical interface info */
42 QS_HST_SFF = 0x0100, /* host status fifo offset */
53 QS_CFC_HUFT = 0x0800, /* host upstream fifo threshold */
54 QS_CFC_HDFT = 0x0804, /* host downstream fifo threshold */
102 static void qs_host_stop(struct ata_host *host);
161 static void __iomem *qs_mmio_base(struct ata_host *host)
163 return host->iomap[QS_MMIO_BAR];
173 u8 __iomem *chan = qs_mmio_base(ap->host) + (ap->port_no * 0x4000);
183 u8 __iomem *chan = qs_mmio_base(ap->host) + (ap->port_no * 0x4000);
192 u8 __iomem *mmio_base = qs_mmio_base(ap->host);
194 writeb(0, mmio_base + QS_HCT_CTRL); /* disable host interrupts */
200 u8 __iomem *mmio_base = qs_mmio_base(ap->host);
203 writeb(1, mmio_base + QS_HCT_CTRL); /* enable host interrupts */
284 /* host control block (HCB) */
305 u8 __iomem *chan = qs_mmio_base(ap->host) + (ap->port_no * 0x4000);
357 static inline unsigned int qs_intr_pkt(struct ata_host *host)
361 u8 __iomem *mmio_base = qs_mmio_base(host);
371 u8 sHST = sff1 & 0x3f; /* host status */
373 struct ata_port *ap = host->ports[port_no];
399 static inline unsigned int qs_intr_mmio(struct ata_host *host)
403 for (port_no = 0; port_no < host->n_ports; ++port_no) {
404 struct ata_port *ap = host->ports[port_no];
434 struct ata_host *host = dev_instance;
440 spin_lock_irqsave(&host->lock, flags);
441 handled = qs_intr_pkt(host) | qs_intr_mmio(host);
442 spin_unlock_irqrestore(&host->lock, flags);
469 struct device *dev = ap->host->dev;
471 void __iomem *mmio_base = qs_mmio_base(ap->host);
491 static void qs_host_stop(struct ata_host *host)
493 void __iomem *mmio_base = qs_mmio_base(host);
495 writeb(0, mmio_base + QS_HCT_CTRL); /* disable host interrupts */
499 static void qs_host_init(struct ata_host *host, unsigned int chip_id)
501 void __iomem *mmio_base = host->iomap[QS_MMIO_BAR];
504 writeb(0, mmio_base + QS_HCT_CTRL); /* disable host interrupts */
508 for (port_no = 0; port_no < host->n_ports; ++port_no) {
516 for (port_no = 0; port_no < host->n_ports; ++port_no) {
526 writeb(1, mmio_base + QS_HCT_CTRL); /* enable host interrupts */
556 struct ata_host *host;
561 /* alloc host */
562 host = ata_host_alloc_pinfo(&pdev->dev, ppi, QS_PORTS);
563 if (!host)
566 /* acquire resources and fill host */
577 host->iomap = pcim_iomap_table(pdev);
579 rc = qs_set_dma_masks(pdev, host->iomap[QS_MMIO_BAR]);
583 for (port_no = 0; port_no < host->n_ports; ++port_no) {
584 struct ata_port *ap = host->ports[port_no];
586 void __iomem *chan = host->iomap[QS_MMIO_BAR] + offset;
595 qs_host_init(host, board_idx);
598 return ata_host_activate(host, pdev->irq, qs_intr, IRQF_SHARED,