Lines Matching refs:chp
205 wdc_sataprobe(struct ata_channel *chp) in wdc_sataprobe() argument
207 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdc_sataprobe()
208 struct wdc_regs *wdr = CHAN_TO_WDC_REGS(chp); in wdc_sataprobe()
212 KASSERT(chp->ch_ndrives == 0 || chp->ch_drive != NULL); in wdc_sataprobe()
216 ata_channel_lock(chp); in wdc_sataprobe()
219 switch (sata_reset_interface(chp, wdr->sata_iot, wdr->sata_control, in wdc_sataprobe()
231 ata_delay(chp, 1, "sataprb", AT_WAIT); in wdc_sataprobe()
234 aprint_error_dev(chp->ch_atac->atac_dev, in wdc_sataprobe()
246 device_xname(chp->ch_atac->atac_dev), chp->ch_channel, in wdc_sataprobe()
248 if (atabus_alloc_drives(chp, wdc->wdc_maxdrives) != 0) { in wdc_sataprobe()
249 ata_channel_unlock(chp); in wdc_sataprobe()
257 chp->ch_drive[0].drive_type = ATA_DRIVET_ATAPI; in wdc_sataprobe()
259 chp->ch_drive[0].drive_type = ATA_DRIVET_ATA; in wdc_sataprobe()
265 if (wdcreset(chp, RESET_SLEEP) != 0) in wdc_sataprobe()
266 chp->ch_drive[0].drive_type = ATA_DRIVET_NONE; in wdc_sataprobe()
273 ata_channel_unlock(chp); in wdc_sataprobe()
293 wdc_drvprobe(struct ata_channel *chp) in wdc_drvprobe() argument
296 struct atac_softc *atac = chp->ch_atac; in wdc_drvprobe()
297 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdc_drvprobe()
298 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in wdc_drvprobe()
302 ata_channel_lock(chp); in wdc_drvprobe()
303 if (atabus_alloc_drives(chp, wdc->wdc_maxdrives) != 0) { in wdc_drvprobe()
304 ata_channel_unlock(chp); in wdc_drvprobe()
307 if (wdcprobe1(chp, 0) == 0) { in wdc_drvprobe()
309 atabus_free_drives(chp); in wdc_drvprobe()
310 ata_channel_unlock(chp); in wdc_drvprobe()
320 if (chp->ch_ndrives > 1 && in wdc_drvprobe()
321 chp->ch_drive[1].drive_type == ATA_DRIVET_ATA) { in wdc_drvprobe()
323 wdc->select(chp,1); in wdc_drvprobe()
330 if (chp->ch_drive[0].drive_type == ATA_DRIVET_ATA) { in wdc_drvprobe()
332 wdc->select(chp,0); in wdc_drvprobe()
341 if ((chp->ch_drive[0].drive_type != ATA_DRIVET_ATA || in wdc_drvprobe()
343 (chp->ch_ndrives < 2 || in wdc_drvprobe()
344 chp->ch_drive[1].drive_type != ATA_DRIVET_ATA || in wdc_drvprobe()
353 ata_delay(chp, 1, "atadrdy", AT_WAIT); in wdc_drvprobe()
357 chp->ch_drive[0].drive_type != ATA_DRIVET_ATAPI) in wdc_drvprobe()
358 chp->ch_drive[0].drive_type = ATA_DRIVET_NONE; in wdc_drvprobe()
359 if (chp->ch_ndrives > 1 && (st1 & WDCS_DRDY) == 0 && in wdc_drvprobe()
360 chp->ch_drive[1].drive_type != ATA_DRIVET_ATAPI) in wdc_drvprobe()
361 chp->ch_drive[1].drive_type = ATA_DRIVET_NONE; in wdc_drvprobe()
362 ata_channel_unlock(chp); in wdc_drvprobe()
366 chp->ch_channel, st0, st1), DEBUG_PROBE); in wdc_drvprobe()
371 for (i = 0; i < chp->ch_ndrives; i++) { in wdc_drvprobe()
377 chp->ch_drive[i].n_dmaerrs = NERRS_MAX - 1; in wdc_drvprobe()
383 ata_channel_lock(chp); in wdc_drvprobe()
384 chp->ch_drive[i].drive_flags |= ATA_DRIVE_CAP32; in wdc_drvprobe()
385 ata_channel_unlock(chp); in wdc_drvprobe()
387 if (chp->ch_drive[i].drive_type == ATA_DRIVET_NONE) in wdc_drvprobe()
391 if (chp->ch_flags & ATACH_SHUTDOWN) in wdc_drvprobe()
400 error = ata_get_params(&chp->ch_drive[i], in wdc_drvprobe()
403 ata_channel_lock(chp); in wdc_drvprobe()
404 ata_delay(chp, 1000, "atacnf", AT_WAIT); in wdc_drvprobe()
405 ata_channel_unlock(chp); in wdc_drvprobe()
408 if (chp->ch_flags & ATACH_SHUTDOWN) in wdc_drvprobe()
411 error = ata_get_params(&chp->ch_drive[i], in wdc_drvprobe()
417 chp->ch_channel, i, error), DEBUG_PROBE); in wdc_drvprobe()
418 ata_channel_lock(chp); in wdc_drvprobe()
419 if (chp->ch_drive[i].drive_type != ATA_DRIVET_ATA || in wdc_drvprobe()
421 chp->ch_drive[i].drive_type = ATA_DRIVET_NONE; in wdc_drvprobe()
422 ata_channel_unlock(chp); in wdc_drvprobe()
431 wdc->select(chp,i); in wdc_drvprobe()
446 chp->ch_channel, i), DEBUG_PROBE); in wdc_drvprobe()
447 chp->ch_drive[i].drive_type = ATA_DRIVET_NONE; in wdc_drvprobe()
448 ata_channel_unlock(chp); in wdc_drvprobe()
451 if (wdc_wait_for_ready(chp, 10000, 0, &tfd) == in wdc_drvprobe()
455 chp->ch_channel, i), DEBUG_PROBE); in wdc_drvprobe()
456 chp->ch_drive[i].drive_type = ATA_DRIVET_NONE; in wdc_drvprobe()
457 ata_channel_unlock(chp); in wdc_drvprobe()
463 if (wdc_wait_for_ready(chp, 10000, 0, &tfd) == in wdc_drvprobe()
467 chp->ch_channel, i), DEBUG_PROBE); in wdc_drvprobe()
468 chp->ch_drive[i].drive_type = ATA_DRIVET_NONE; in wdc_drvprobe()
469 ata_channel_unlock(chp); in wdc_drvprobe()
471 for (j = 0; j < chp->ch_ndrives; j++) { in wdc_drvprobe()
472 if (chp->ch_drive[i].drive_type != in wdc_drvprobe()
474 chp->ch_drive[j].drive_type = in wdc_drvprobe()
478 ata_channel_unlock(chp); in wdc_drvprobe()
522 wdcprobe1(struct ata_channel *chp, int poll) in wdcprobe1() argument
524 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdcprobe1()
525 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in wdcprobe1()
541 wdc->select(chp,0); in wdcprobe1()
550 wdc->select(chp,1); in wdcprobe1()
562 __func__, chp->ch_channel, st0, st1), DEBUG_PROBE); in wdcprobe1()
571 wdc->select(chp,0); in wdcprobe1()
581 __func__, chp->ch_channel, cl), in wdcprobe1()
592 __func__, chp->ch_channel, cl), in wdcprobe1()
603 __func__, chp->ch_channel, cl), in wdcprobe1()
614 __func__, chp->ch_channel, cl), in wdcprobe1()
623 __func__, chp->ch_channel, cl), in wdcprobe1()
631 wdc->select(chp,1); in wdcprobe1()
641 __func__, chp->ch_channel, cl), in wdcprobe1()
652 __func__, chp->ch_channel, cl), in wdcprobe1()
663 __func__, chp->ch_channel, cl), in wdcprobe1()
674 __func__, chp->ch_channel, cl), in wdcprobe1()
683 __func__, chp->ch_channel, cl), in wdcprobe1()
701 wdc->select(chp,0); in wdcprobe1()
709 wdc->select(chp,0); in wdcprobe1()
719 wdc->reset(chp, RESET_POLL); in wdcprobe1()
728 ret_value = __wdcwait_reset(chp, ret_value, RESET_POLL); in wdcprobe1()
730 ret_value = __wdcwait_reset(chp, ret_value, poll); in wdcprobe1()
733 __func__, chp->ch_channel, ret_value), DEBUG_PROBE); in wdcprobe1()
750 wdc->select(chp,drive); in wdcprobe1()
765 "cl=0x%x ch=0x%x\n", __func__, chp->ch_channel, drive, sc, in wdcprobe1()
771 if (chp->ch_drive != NULL) { in wdcprobe1()
773 chp->ch_drive[drive].drive_type = ATA_DRIVET_ATAPI; in wdcprobe1()
775 chp->ch_drive[drive].drive_type = ATA_DRIVET_ATA; in wdcprobe1()
793 wdcattach(struct ata_channel *chp) in wdcattach() argument
795 struct atac_softc *atac = chp->ch_atac; in wdcattach()
796 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdcattach()
819 ata_channel_attach(chp); in wdcattach()
826 struct ata_channel *chp; in wdc_childdetached() local
830 chp = atac->atac_channels[i]; in wdc_childdetached()
831 if (child == chp->atabus) { in wdc_childdetached()
832 chp->atabus = NULL; in wdc_childdetached()
842 struct ata_channel *chp; in wdcdetach() local
847 chp = atac->atac_channels[i]; in wdcdetach()
848 if (chp->atabus == NULL) in wdcdetach()
851 device_xname(atac->atac_dev), device_xname(chp->atabus)), in wdcdetach()
853 if ((error = config_detach(chp->atabus, flags)) != 0) in wdcdetach()
855 ata_channel_detach(chp); in wdcdetach()
866 struct ata_channel *chp = v; in wdcrestart() local
870 atastart(chp); in wdcrestart()
884 struct ata_channel *chp = arg; in wdcintr() local
885 struct atac_softc *atac = chp->ch_atac; in wdcintr()
886 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdcintr()
887 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in wdcintr()
897 if ((chp->ch_flags & ATACH_IRQ_WAIT) == 0) in wdcintr()
900 xfer = ata_queue_get_active_xfer(chp); in wdcintr()
925 if (chp->ch_flags & ATACH_DMA_WAIT) { in wdcintr()
927 (*wdc->dma_finish)(wdc->dma_arg, chp->ch_channel, in wdcintr()
933 chp->ch_flags &= ~ATACH_DMA_WAIT; in wdcintr()
936 chp->ch_flags &= ~ATACH_IRQ_WAIT; in wdcintr()
938 ret = xfer->ops->c_intr(chp, xfer, 1); in wdcintr()
940 chp->ch_flags |= ATACH_IRQ_WAIT; in wdcintr()
948 struct ata_channel *chp = drvp->chnl_softc; in wdc_reset_drive() local
950 ata_channel_lock_owned(chp); in wdc_reset_drive()
955 device_xname(chp->ch_atac->atac_dev), chp->ch_channel, in wdc_reset_drive()
958 ata_thread_run(chp, flags, ATACH_TH_RESET, ATACH_NODRIVE); in wdc_reset_drive()
962 wdc_reset_channel(struct ata_channel *chp, int flags) in wdc_reset_channel() argument
966 ata_channel_lock_owned(chp); in wdc_reset_channel()
969 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdc_reset_channel()
972 chp->ch_flags &= ~ATACH_IRQ_WAIT; in wdc_reset_channel()
978 xfer = ata_queue_get_active_xfer_locked(chp); in wdc_reset_channel()
980 if (xfer && xfer->c_chp == chp && (xfer->c_flags & C_ATAPI)) { in wdc_reset_channel()
981 wdccommandshort(chp, xfer->c_drive, ATAPI_SOFT_RESET); in wdc_reset_channel()
982 ata_delay(chp, 1000, "atardl", flags); in wdc_reset_channel()
987 (void) wdcreset(chp, RESET_SLEEP); in wdc_reset_channel()
989 (void) wdcreset(chp, RESET_POLL); in wdc_reset_channel()
995 ata_delay(chp, 1000, "atardl", flags); in wdc_reset_channel()
1004 if (xfer->c_chp != chp) { in wdc_reset_channel()
1013 if (chp->ch_flags & ATACH_DMA_WAIT) { in wdc_reset_channel()
1015 chp->ch_channel, xfer->c_drive, in wdc_reset_channel()
1017 chp->ch_flags &= ~ATACH_DMA_WAIT; in wdc_reset_channel()
1023 ata_kill_active(chp, KILL_RESET, flags); in wdc_reset_channel()
1027 wdcreset(struct ata_channel *chp, int poll) in wdcreset() argument
1029 struct atac_softc *atac = chp->ch_atac; in wdcreset()
1030 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdcreset()
1031 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in wdcreset()
1034 ata_channel_lock_owned(chp); in wdcreset()
1039 wdc->reset(chp, poll); in wdcreset()
1041 drv_mask1 = (chp->ch_drive[0].drive_type != ATA_DRIVET_NONE) in wdcreset()
1043 if (chp->ch_ndrives > 1) in wdcreset()
1044 drv_mask1 |= (chp->ch_drive[1].drive_type != ATA_DRIVET_NONE) in wdcreset()
1046 drv_mask2 = __wdcwait_reset(chp, drv_mask1, in wdcreset()
1050 device_xname(atac->atac_dev), chp->ch_channel); in wdcreset()
1065 wdc_do_reset(struct ata_channel *chp, int poll) in wdc_do_reset() argument
1067 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdc_do_reset()
1068 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in wdc_do_reset()
1074 wdc->select(chp,0); in wdc_do_reset()
1092 wdc->irqack(chp); in wdc_do_reset()
1098 __wdcwait_reset(struct ata_channel *chp, int drv_mask, int poll) in __wdcwait_reset() argument
1100 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in __wdcwait_reset()
1101 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in __wdcwait_reset()
1117 wdc->select(chp,0); in __wdcwait_reset()
1136 wdc->select(chp,1); in __wdcwait_reset()
1176 ata_delay(chp, WDCDELAY, "atarst", wflags); in __wdcwait_reset()
1186 device_xname(chp->ch_atac->atac_dev), in __wdcwait_reset()
1187 chp->ch_channel, sc0, sn0, cl0, ch0), DEBUG_PROBE); in __wdcwait_reset()
1190 device_xname(chp->ch_atac->atac_dev), in __wdcwait_reset()
1191 chp->ch_channel, sc1, sn1, cl1, ch1), DEBUG_PROBE); in __wdcwait_reset()
1194 device_xname(chp->ch_atac->atac_dev), chp->ch_channel, in __wdcwait_reset()
1205 __wdcwait(struct ata_channel *chp, int mask, int bits, int timeout, int *tfd) in __wdcwait() argument
1207 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in __wdcwait()
1208 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in __wdcwait()
1214 device_xname(chp->ch_atac->atac_dev), in __wdcwait()
1215 chp->ch_channel), DEBUG_STATUS); in __wdcwait()
1249 xfer = ata_queue_get_active_xfer_locked(chp); in __wdcwait()
1252 device_xname(chp->ch_atac->atac_dev), in __wdcwait()
1253 chp->ch_channel, WDCDELAY * xtime); in __wdcwait()
1256 device_xname(chp->ch_atac->atac_dev), in __wdcwait()
1257 chp->ch_channel, xfer->c_drive, in __wdcwait()
1273 wdcwait(struct ata_channel *chp, int mask, int bits, int timeout, int flags, in wdcwait() argument
1278 ata_channel_lock_owned(chp); in wdcwait()
1282 error = __wdcwait(chp, mask, bits, timeout, tfd); in wdcwait()
1284 error = __wdcwait(chp, mask, bits, WDCDELAY_POLL, tfd); in wdcwait()
1286 if (ata_is_thread_run(chp) || (flags & AT_WAIT)) { in wdcwait()
1292 if (__wdcwait(chp, mask, bits, in wdcwait()
1298 &chp->ch_lock); in wdcwait()
1318 wdc_dmawait(struct ata_channel *chp, struct ata_xfer *xfer, int timeout) in wdc_dmawait() argument
1320 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdc_dmawait()
1326 chp->ch_channel, xfer->c_drive, WDC_DMAEND_END); in wdc_dmawait()
1333 chp->ch_channel, xfer->c_drive, WDC_DMAEND_ABRT); in wdc_dmawait()
1342 struct ata_channel *chp = arg; in wdctimeout() local
1344 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdctimeout()
1352 callout_ack(&chp->c_timo_callout); in wdctimeout()
1354 if ((chp->ch_flags & ATACH_IRQ_WAIT) == 0) { in wdctimeout()
1355 __wdcerror(chp, "timeout not expected without pending irq"); in wdctimeout()
1359 xfer = ata_queue_get_active_xfer(chp); in wdctimeout()
1367 __wdcerror(chp, "lost interrupt"); in wdctimeout()
1372 if (chp->ch_flags & ATACH_DMA_WAIT) { in wdctimeout()
1374 (*wdc->dma_finish)(wdc->dma_arg, chp->ch_channel, in wdctimeout()
1376 chp->ch_flags &= ~ATACH_DMA_WAIT; in wdctimeout()
1385 chp->ch_flags &= ~ATACH_IRQ_WAIT; in wdctimeout()
1387 xfer->ops->c_intr(chp, xfer, 1); in wdctimeout()
1404 struct ata_channel *chp = drvp->chnl_softc; in wdc_exec_command() local
1408 device_xname(chp->ch_atac->atac_dev), chp->ch_channel, in wdc_exec_command()
1412 if (chp->ch_atac->atac_cap & ATAC_CAP_NOIRQ) in wdc_exec_command()
1423 ata_exec_xfer(chp, xfer); in wdc_exec_command()
1427 __wdccommand_start(struct ata_channel *chp, struct ata_xfer *xfer) in __wdccommand_start() argument
1429 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in __wdccommand_start()
1430 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in __wdccommand_start()
1437 device_xname(chp->ch_atac->atac_dev), chp->ch_channel, in __wdccommand_start()
1441 wdc->select(chp,drive); in __wdccommand_start()
1444 switch(wdcwait(chp, ata_c->r_st_bmask | WDCS_DRQ, in __wdccommand_start()
1461 wdccommandext(chp, drive, ata_c->r_command, in __wdccommand_start()
1465 wdccommand(chp, drive, ata_c->r_command, in __wdccommand_start()
1476 chp->ch_flags |= ATACH_IRQ_WAIT; /* wait for interrupt */ in __wdccommand_start()
1477 callout_reset(&chp->c_timo_callout, ata_c->timeout / 1000 * hz, in __wdccommand_start()
1478 wdctimeout, chp); in __wdccommand_start()
1491 __wdccommand_poll(struct ata_channel *chp, struct ata_xfer *xfer) in __wdccommand_poll() argument
1493 __wdccommand_intr(chp, xfer, 0); in __wdccommand_poll()
1498 __wdccommand_intr(struct ata_channel *chp, struct ata_xfer *xfer, int irq) in __wdccommand_intr() argument
1500 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in __wdccommand_intr()
1501 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in __wdccommand_intr()
1517 chp->ch_drive[xfer->c_drive].drive_flags; in __wdccommand_intr()
1523 drive_flags = chp->ch_drive[xfer->c_drive].drive_flags; in __wdccommand_intr()
1537 ata_channel_lock(chp); in __wdccommand_intr()
1541 device_xname(chp->ch_atac->atac_dev), chp->ch_channel, in __wdccommand_intr()
1558 if (wdcwait(chp, ata_c->r_st_bmask | WDCS_DRQ, in __wdccommand_intr()
1562 ata_channel_unlock(chp); in __wdccommand_intr()
1569 if (wdcwait(chp, ata_c->r_st_pmask, ata_c->r_st_pmask, in __wdccommand_intr()
1572 ata_channel_unlock(chp); in __wdccommand_intr()
1579 wdc->irqack(chp); in __wdccommand_intr()
1585 wdc->datain_pio(chp, drive_flags, data, bcount); in __wdccommand_intr()
1597 wdc->dataout_pio(chp, drive_flags, data, bcount); in __wdccommand_intr()
1600 chp->ch_flags |= ATACH_IRQ_WAIT; /* wait for interrupt */ in __wdccommand_intr()
1601 callout_reset(&chp->c_timo_callout, in __wdccommand_intr()
1602 mstohz(ata_c->timeout), wdctimeout, chp); in __wdccommand_intr()
1603 ata_channel_unlock(chp); in __wdccommand_intr()
1617 ata_channel_unlock(chp); in __wdccommand_intr()
1619 __wdccommand_done(chp, xfer); in __wdccommand_intr()
1624 __wdccommand_done(struct ata_channel *chp, struct ata_xfer *xfer) in __wdccommand_done() argument
1626 struct atac_softc *atac = chp->ch_atac; in __wdccommand_done()
1627 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in __wdccommand_done()
1628 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in __wdccommand_done()
1633 device_xname(atac->atac_dev), chp->ch_channel, xfer->c_drive, in __wdccommand_done()
1636 if (ata_waitdrain_xfer_check(chp, xfer)) { in __wdccommand_done()
1695 __wdccommand_done_end(chp, xfer); in __wdccommand_done()
1697 ata_deactivate_xfer(chp, xfer); in __wdccommand_done()
1709 atastart(chp); in __wdccommand_done()
1713 __wdccommand_done_end(struct ata_channel *chp, struct ata_xfer *xfer) in __wdccommand_done_end() argument
1721 __wdccommand_kill_xfer(struct ata_channel *chp, struct ata_xfer *xfer, in __wdccommand_kill_xfer() argument
1743 __wdccommand_done_end(chp, xfer); in __wdccommand_kill_xfer()
1746 ata_deactivate_xfer(chp, xfer); in __wdccommand_kill_xfer()
1754 wdccommand(struct ata_channel *chp, u_int8_t drive, u_int8_t command, in wdccommand() argument
1758 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdccommand()
1759 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in wdccommand()
1763 device_xname(chp->ch_atac->atac_dev), chp->ch_channel, drive, in wdccommand()
1767 wdc->select(chp,drive); in wdccommand()
1791 wdccommandext(struct ata_channel *chp, u_int8_t drive, u_int8_t command, in wdccommandext() argument
1794 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdccommandext()
1795 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in wdccommandext()
1799 "device=0x%02x\n", device_xname(chp->ch_atac->atac_dev), in wdccommandext()
1800 chp->ch_channel, drive, command, blkno, count, features, device), in wdccommandext()
1806 wdc->select(chp,drive); in wdccommandext()
1859 wdccommandshort(struct ata_channel *chp, int drive, int command) in wdccommandshort() argument
1861 struct wdc_softc *wdc = CHAN_TO_WDC(chp); in wdccommandshort()
1862 struct wdc_regs *wdr = &wdc->regs[chp->ch_channel]; in wdccommandshort()
1865 device_xname(chp->ch_atac->atac_dev), chp->ch_channel, drive, in wdccommandshort()
1869 wdc->select(chp,drive); in wdccommandshort()
1879 __wdcerror(struct ata_channel *chp, const char *msg) in __wdcerror() argument
1881 struct atac_softc *atac = chp->ch_atac; in __wdcerror()
1882 struct ata_xfer *xfer = ata_queue_get_active_xfer(chp); in __wdcerror()
1886 chp->ch_channel, msg); in __wdcerror()
1889 chp->ch_channel, xfer->c_drive, msg); in __wdcerror()
1896 wdcbit_bucket(struct ata_channel *chp, int size) in wdcbit_bucket() argument
1898 struct wdc_regs *wdr = CHAN_TO_WDC_REGS(chp); in wdcbit_bucket()
1907 wdc_datain_pio(struct ata_channel *chp, int flags, void *bf, size_t len) in wdc_datain_pio() argument
1909 struct wdc_regs *wdr = CHAN_TO_WDC_REGS(chp); in wdc_datain_pio()
1999 wdc_dataout_pio(struct ata_channel *chp, int flags, void *bf, size_t len) in wdc_dataout_pio() argument
2001 struct wdc_regs *wdr = CHAN_TO_WDC_REGS(chp); in wdc_dataout_pio()