Lines Matching refs:ida

62 ida_v3_fifo_full(struct ida_softc *ida)  in ida_v3_fifo_full()  argument
64 return (ida_inl(ida, R_CMD_FIFO) == 0); in ida_v3_fifo_full()
68 ida_v3_submit(struct ida_softc *ida, struct ida_qcb *qcb) in ida_v3_submit() argument
70 ida_outl(ida, R_CMD_FIFO, qcb->hwqcb_busaddr); in ida_v3_submit()
74 ida_v3_done(struct ida_softc *ida) in ida_v3_done() argument
78 completed = ida_inl(ida, R_DONE_FIFO); in ida_v3_done()
86 ida_v3_int_pending(struct ida_softc *ida) in ida_v3_int_pending() argument
88 return (ida_inl(ida, R_INT_PENDING)); in ida_v3_int_pending()
92 ida_v3_int_enable(struct ida_softc *ida, int enable) in ida_v3_int_enable() argument
95 ida->flags |= IDA_INTERRUPTS; in ida_v3_int_enable()
97 ida->flags &= ~IDA_INTERRUPTS; in ida_v3_int_enable()
98 ida_outl(ida, R_INT_MASK, enable ? INT_ENABLE : INT_DISABLE); in ida_v3_int_enable()
102 ida_v4_fifo_full(struct ida_softc *ida) in ida_v4_fifo_full() argument
104 return (ida_inl(ida, R_42XX_REQUEST) != 0); in ida_v4_fifo_full()
108 ida_v4_submit(struct ida_softc *ida, struct ida_qcb *qcb) in ida_v4_submit() argument
110 ida_outl(ida, R_42XX_REQUEST, qcb->hwqcb_busaddr); in ida_v4_submit()
114 ida_v4_done(struct ida_softc *ida) in ida_v4_done() argument
118 completed = ida_inl(ida, R_42XX_REPLY); in ida_v4_done()
121 ida_outl(ida, R_42XX_REPLY, 0); /* confirm read */ in ida_v4_done()
126 ida_v4_int_pending(struct ida_softc *ida) in ida_v4_int_pending() argument
128 return (ida_inl(ida, R_42XX_STATUS) & STATUS_42XX_INT_PENDING); in ida_v4_int_pending()
132 ida_v4_int_enable(struct ida_softc *ida, int enable) in ida_v4_int_enable() argument
135 ida->flags |= IDA_INTERRUPTS; in ida_v4_int_enable()
137 ida->flags &= ~IDA_INTERRUPTS; in ida_v4_int_enable()
138 ida_outl(ida, R_42XX_INT_MASK, in ida_v4_int_enable()
237 struct ida_softc *ida; in ida_pci_attach() local
240 ida = (struct ida_softc *)device_get_softc(dev); in ida_pci_attach()
241 ida->dev = dev; in ida_pci_attach()
242 ida->cmd = *board->accessor; in ida_pci_attach()
243 ida->flags = board->flags; in ida_pci_attach()
244 mtx_init(&ida->lock, "ida", NULL, MTX_DEF); in ida_pci_attach()
245 callout_init_mtx(&ida->ch, &ida->lock, 0); in ida_pci_attach()
247 ida->regs_res_type = SYS_RES_MEMORY; in ida_pci_attach()
248 ida->regs_res_id = IDA_PCI_MEMADDR; in ida_pci_attach()
250 ida->regs_res_id = PCIR_BAR(0); in ida_pci_attach()
252 ida->regs = bus_alloc_resource_any(dev, ida->regs_res_type, in ida_pci_attach()
253 &ida->regs_res_id, RF_ACTIVE); in ida_pci_attach()
254 if (ida->regs == NULL) { in ida_pci_attach()
273 &ida->parent_dmat); in ida_pci_attach()
276 ida_free(ida); in ida_pci_attach()
281 ida->irq_res_type = SYS_RES_IRQ; in ida_pci_attach()
282 ida->irq = bus_alloc_resource_any(dev, ida->irq_res_type, &rid, in ida_pci_attach()
284 if (ida->irq == NULL) { in ida_pci_attach()
285 ida_free(ida); in ida_pci_attach()
288 error = bus_setup_intr(dev, ida->irq, INTR_TYPE_BIO | INTR_ENTROPY | INTR_MPSAFE, in ida_pci_attach()
289 NULL, ida_intr, ida, &ida->ih); in ida_pci_attach()
292 ida_free(ida); in ida_pci_attach()
296 error = ida_setup(ida); in ida_pci_attach()
298 ida_free(ida); in ida_pci_attach()
305 DRIVER_MODULE(ida, pci, ida_pci_driver, 0, 0);
306 MODULE_PNP_INFO("W32:vendor/device;D:#", pci, ida, board_id,