Lines Matching refs:aha

109 	struct	aha_softc *aha = device_get_softc(dev);  in aha_isa_probe()  local
117 aha->dev = dev; in aha_isa_probe()
123 aha->port = bus_alloc_resource(dev, SYS_RES_IOPORT, &port_rid, in aha_isa_probe()
126 if (aha->port == NULL) in aha_isa_probe()
129 port_start = rman_get_start(aha->port); in aha_isa_probe()
130 aha_alloc(aha); in aha_isa_probe()
133 if (aha_probe(aha) || aha_fetch_adapter_info(aha)) { in aha_isa_probe()
134 aha_free(aha); in aha_isa_probe()
135 bus_release_resource(dev, SYS_RES_IOPORT, port_rid, aha->port); in aha_isa_probe()
143 error = aha_cmd(aha, AOP_INQUIRE_CONFIG, NULL, /*parmlen*/0, in aha_isa_probe()
150 aha_free(aha); in aha_isa_probe()
152 aha->port); in aha_isa_probe()
156 bus_release_resource(dev, SYS_RES_IOPORT, port_rid, aha->port); in aha_isa_probe()
157 aha->port = NULL; in aha_isa_probe()
189 struct aha_softc *aha = device_get_softc(dev); in aha_isa_attach() local
192 aha->dev = dev; in aha_isa_attach()
193 aha->portrid = 0; in aha_isa_attach()
194 aha->port = bus_alloc_resource(dev, SYS_RES_IOPORT, &aha->portrid, in aha_isa_attach()
196 if (!aha->port) { in aha_isa_attach()
201 aha->irqrid = 0; in aha_isa_attach()
202 aha->irq = bus_alloc_resource_any(dev, SYS_RES_IRQ, &aha->irqrid, in aha_isa_attach()
204 if (!aha->irq) { in aha_isa_attach()
209 aha->drqrid = 0; in aha_isa_attach()
210 aha->drq = bus_alloc_resource_any(dev, SYS_RES_DRQ, &aha->drqrid, in aha_isa_attach()
212 if (!aha->drq) { in aha_isa_attach()
221 isa_dmacascade(rman_get_start(aha->drq)); in aha_isa_attach()
237 &aha->parent_dmat) != 0) { in aha_isa_attach()
242 if (aha_init(aha)) { in aha_isa_attach()
251 if (aha->boardid <= BOARD_1542 && aha->fw_major == 0) { in aha_isa_attach()
253 aha->ccb_sg_opcode = INITIATOR_SG_CCB; in aha_isa_attach()
254 aha->ccb_ccb_opcode = INITIATOR_CCB; in aha_isa_attach()
257 error = aha_attach(aha); in aha_isa_attach()
263 error = bus_setup_intr(dev, aha->irq, INTR_TYPE_CAM|INTR_ENTROPY| in aha_isa_attach()
264 INTR_MPSAFE, NULL, aha_intr, aha, &aha->ih); in aha_isa_attach()
267 aha_detach(aha); in aha_isa_attach()
273 aha_free(aha); in aha_isa_attach()
274 bus_free_resource(dev, SYS_RES_IOPORT, aha->port); in aha_isa_attach()
275 bus_free_resource(dev, SYS_RES_IRQ, aha->irq); in aha_isa_attach()
276 bus_free_resource(dev, SYS_RES_DRQ, aha->drq); in aha_isa_attach()
283 struct aha_softc *aha = (struct aha_softc *)device_get_softc(dev); in aha_isa_detach() local
286 error = bus_teardown_intr(dev, aha->irq, aha->ih); in aha_isa_detach()
290 error = aha_detach(aha); in aha_isa_detach()
295 aha_free(aha); in aha_isa_detach()
296 bus_free_resource(dev, SYS_RES_IOPORT, aha->port); in aha_isa_detach()
297 bus_free_resource(dev, SYS_RES_IRQ, aha->irq); in aha_isa_detach()
298 bus_free_resource(dev, SYS_RES_DRQ, aha->drq); in aha_isa_detach()
308 struct aha_softc aha; in aha_isa_identify() local
315 bzero(&aha, sizeof(aha)); in aha_isa_identify()
324 aha.port = bus_alloc_resource(parent, SYS_RES_IOPORT, &rid, in aha_isa_identify()
326 if (aha.port == NULL) in aha_isa_identify()
328 aha_alloc(&aha); in aha_isa_identify()
330 if (aha_probe(&aha) || aha_fetch_adapter_info(&aha)) in aha_isa_identify()
339 bus_release_resource(parent, SYS_RES_IOPORT, rid, aha.port); in aha_isa_identify()
340 aha_free(&aha); in aha_isa_identify()
362 DRIVER_MODULE(aha, isa, aha_isa_driver, aha_devclass, 0, 0);
363 MODULE_DEPEND(aha, isa, 1, 1, 1);