drvp 64 dev/ata/ata.c ata_get_params(struct ata_drive_datas *drvp, u_int8_t flags,
drvp 78 dev/ata/ata.c if (drvp->drive_flags & DRIVE_ATA) {
drvp 83 dev/ata/ata.c } else if (drvp->drive_flags & DRIVE_ATAPI) {
drvp 97 dev/ata/ata.c if ((ret = wdc_exec_command(drvp, &wdc_c)) != WDC_COMPLETE) {
drvp 156 dev/ata/ata.c ata_set_mode(struct ata_drive_datas *drvp, u_int8_t mode, u_int8_t flags)
drvp 172 dev/ata/ata.c if (wdc_exec_command(drvp, &wdc_c) != WDC_COMPLETE)
drvp 185 dev/ata/ata.c ata_dmaerr(struct ata_drive_datas *drvp)
drvp 194 dev/ata/ata.c drvp->n_dmaerrs++;
drvp 195 dev/ata/ata.c if (drvp->n_dmaerrs >= NERRS_MAX && drvp->n_xfers <= NXFER) {
drvp 196 dev/ata/ata.c wdc_downgrade_mode(drvp);
drvp 197 dev/ata/ata.c drvp->n_dmaerrs = NERRS_MAX-1;
drvp 198 dev/ata/ata.c drvp->n_xfers = 0;
drvp 201 dev/ata/ata.c if (drvp->n_xfers > NXFER) {
drvp 202 dev/ata/ata.c drvp->n_dmaerrs = 1; /* just got an error */
drvp 203 dev/ata/ata.c drvp->n_xfers = 1; /* restart counting from this error */
drvp 208 dev/ata/ata.c ata_perror(struct ata_drive_datas *drvp, int errno, char *buf, size_t buf_len)
drvp 223 dev/ata/ata.c if (drvp->ata_vers >= 4)
drvp 133 dev/ata/ata_wdc.c wdc_ata_bio(struct ata_drive_datas *drvp, struct ata_bio *ata_bio)
drvp 136 dev/ata/ata_wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 144 dev/ata/ata_wdc.c (drvp->drive_flags & (DRIVE_DMA | DRIVE_UDMA)) &&
drvp 149 dev/ata/ata_wdc.c xfer->drive = drvp->drive;
drvp 178 dev/ata/ata_wdc.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 189 dev/ata/ata_wdc.c if (drvp->state < READY) {
drvp 196 dev/ata/ata_wdc.c if (drvp->state != RECAL) {
drvp 199 dev/ata/ata_wdc.c xfer->drive, drvp->state);
drvp 207 dev/ata/ata_wdc.c drvp->state = RECAL_WAIT;
drvp 219 dev/ata/ata_wdc.c if (drvp->n_xfers <= NXFER)
drvp 220 dev/ata/ata_wdc.c drvp->n_xfers++;
drvp 338 dev/ata/ata_wdc.c if (wdc_ata_err(drvp, ata_bio) != WDC_ATA_ERR)
drvp 343 dev/ata/ata_wdc.c if (wdc_ata_err(drvp, ata_bio) == WDC_ATA_ERR) {
drvp 347 dev/ata/ata_wdc.c wdc_output_bytes(drvp, (char *)xfer->databuf + xfer->c_skip,
drvp 370 dev/ata/ata_wdc.c if (wdc_ata_err(drvp, ata_bio) != WDC_ATA_ERR)
drvp 380 dev/ata/ata_wdc.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 389 dev/ata/ata_wdc.c if (drvp->state < READY) {
drvp 392 dev/ata/ata_wdc.c drvp->state);
drvp 417 dev/ata/ata_wdc.c drv_err = wdc_ata_err(drvp, ata_bio);
drvp 437 dev/ata/ata_wdc.c ata_dmaerr(drvp);
drvp 456 dev/ata/ata_wdc.c wdc_input_bytes(drvp, (char *)xfer->databuf + xfer->c_skip,
drvp 481 dev/ata/ata_wdc.c ata_dmaerr(drvp);
drvp 541 dev/ata/ata_wdc.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 545 dev/ata/ata_wdc.c WDCDEBUG_PRINT(("wdc_ata_ctrl_intr: state %d\n", drvp->state),
drvp 549 dev/ata/ata_wdc.c switch (drvp->state) {
drvp 569 dev/ata/ata_wdc.c if ((drvp->drive_flags & DRIVE_MODE) == 0)
drvp 572 dev/ata/ata_wdc.c if (drvp->PIO_mode <= 2)
drvp 574 dev/ata/ata_wdc.c wdccommand(chp, drvp->drive, SET_FEATURES, 0, 0, 0,
drvp 575 dev/ata/ata_wdc.c 0x08 | drvp->PIO_mode, WDSF_SET_MODE);
drvp 576 dev/ata/ata_wdc.c drvp->state = PIOMODE_WAIT;
drvp 590 dev/ata/ata_wdc.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 591 dev/ata/ata_wdc.c wdccommand(chp, drvp->drive, SET_FEATURES, 0, 0, 0,
drvp 592 dev/ata/ata_wdc.c 0x40 | drvp->UDMA_mode, WDSF_SET_MODE);
drvp 593 dev/ata/ata_wdc.c } else if (drvp->drive_flags & DRIVE_DMA) {
drvp 594 dev/ata/ata_wdc.c wdccommand(chp, drvp->drive, SET_FEATURES, 0, 0, 0,
drvp 595 dev/ata/ata_wdc.c 0x20 | drvp->DMA_mode, WDSF_SET_MODE);
drvp 599 dev/ata/ata_wdc.c drvp->state = DMAMODE_WAIT;
drvp 620 dev/ata/ata_wdc.c drvp->state = GEOMETRY_WAIT;
drvp 639 dev/ata/ata_wdc.c drvp->state = MULTIMODE_WAIT;
drvp 654 dev/ata/ata_wdc.c drvp->state = READY;
drvp 677 dev/ata/ata_wdc.c drvp->state = 0;
drvp 692 dev/ata/ata_wdc.c drvp->state = 0;
drvp 698 dev/ata/ata_wdc.c wdc_ata_err(struct ata_drive_datas *drvp, struct ata_bio *ata_bio)
drvp 700 dev/ata/ata_wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 715 dev/ata/ata_wdc.c if (drvp->drive_flags & DRIVE_UDMA &&
drvp 721 dev/ata/ata_wdc.c drvp->drive_flags |= DRIVE_DMAERR;
drvp 736 dev/ata/ata_wdc.c wdc_ata_addref(drvp)
drvp 737 dev/ata/ata_wdc.c struct ata_drive_datas *drvp;
drvp 739 dev/ata/ata_wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 745 dev/ata/ata_wdc.c wdc_ata_delref(drvp)
drvp 746 dev/ata/ata_wdc.c struct ata_drive_datas *drvp;
drvp 748 dev/ata/ata_wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 133 dev/ata/wd.c struct ata_drive_datas *drvp; /* Our controller's infos */
drvp 232 dev/ata/wd.c wd->drvp = aa_link->aa_drv_data;
drvp 234 dev/ata/wd.c strlcpy(wd->drvp->drive_name, wd->sc_dev.dv_xname,
drvp 235 dev/ata/wd.c sizeof(wd->drvp->drive_name));
drvp 236 dev/ata/wd.c wd->drvp->cf_flags = wd->sc_dev.dv_cfdata->cf_flags;
drvp 239 dev/ata/wd.c wd->drvp->n_dmaerrs = NERRS_MAX - 2;
drvp 241 dev/ata/wd.c wd->drvp->n_dmaerrs = 0;
drvp 267 dev/ata/wd.c wdc_probe_caps(wd->drvp, &wd->sc_params);
drvp 268 dev/ata/wd.c wdc_print_caps(wd->drvp);
drvp 337 dev/ata/wd.c if (wdc_exec_command(wd->drvp, &wdc_c) != WDC_COMPLETE) {
drvp 538 dev/ata/wd.c switch (wdc_ata_bio(wd->drvp, &wd->sc_wdc_bio)) {
drvp 589 dev/ata/wd.c ata_perror(wd->drvp, wd->sc_wdc_bio.r_error, errbuf,
drvp 593 dev/ata/wd.c wdc_reset_channel(wd->drvp);
drvp 777 dev/ata/wd.c if (wd->drvp->ata_vers == -1) {
drvp 809 dev/ata/wd.c if (wd->drvp->state > RECAL)
drvp 810 dev/ata/wd.c wd->drvp->drive_flags |= DRIVE_RESET;
drvp 813 dev/ata/wd.c if (wd->drvp->state > RECAL)
drvp 814 dev/ata/wd.c wd->drvp->drive_flags |= DRIVE_RESET;
drvp 874 dev/ata/wd.c if (wd->drvp->state > RECAL)
drvp 875 dev/ata/wd.c wd->drvp->drive_flags |= DRIVE_RESET;
drvp 926 dev/ata/wd.c error = wdc_ioctl(wd->drvp, xfer, addr, flag, p);
drvp 1011 dev/ata/wd.c if (wd->drvp->state < READY)
drvp 1032 dev/ata/wd.c wd->drvp->state = RECAL;
drvp 1050 dev/ata/wd.c switch (wdc_ata_bio(wd->drvp, &wd->sc_wdc_bio)) {
drvp 1075 dev/ata/wd.c ata_perror(wd->drvp, wd->sc_wdc_bio.r_error, errbuf,
drvp 1115 dev/ata/wd.c switch (ata_get_params(wd->drvp, flags, params)) {
drvp 1140 dev/ata/wd.c wd->drvp->ata_vers = -1; /* Mark it as pre-ATA */
drvp 1155 dev/ata/wd.c if (wd->drvp->ata_vers < 4) /* WDCC_FLUSHCACHE is here since ATA-4 */
drvp 1168 dev/ata/wd.c if (wdc_exec_command(wd->drvp, &wdc_c) != WDC_COMPLETE) {
drvp 232 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = aa_link->aa_drv_data;
drvp 233 dev/atapiscsi/atapiscsi.c struct channel_softc *chp = drvp->chnl_softc;
drvp 234 dev/atapiscsi/atapiscsi.c struct ataparams *id = &drvp->id;
drvp 248 dev/atapiscsi/atapiscsi.c as->drive = drvp->drive;
drvp 258 dev/atapiscsi/atapiscsi.c strlcpy(drvp->drive_name, as->sc_dev.dv_xname,
drvp 259 dev/atapiscsi/atapiscsi.c sizeof(drvp->drive_name));
drvp 260 dev/atapiscsi/atapiscsi.c drvp->cf_flags = as->sc_dev.dv_cfdata->cf_flags;
drvp 262 dev/atapiscsi/atapiscsi.c wdc_probe_caps(drvp, id);
drvp 270 dev/atapiscsi/atapiscsi.c drvp->n_dmaerrs = NERRS_MAX - 2;
drvp 272 dev/atapiscsi/atapiscsi.c drvp->n_dmaerrs = 0;
drvp 273 dev/atapiscsi/atapiscsi.c drvp->drive_flags |= DRIVE_DEVICE_RESET;
drvp 278 dev/atapiscsi/atapiscsi.c drvp->atapi_cap |= ACAP_DSC;
drvp 282 dev/atapiscsi/atapiscsi.c drvp->atapi_cap |= ACAP_LEN;
drvp 284 dev/atapiscsi/atapiscsi.c drvp->atapi_cap |=
drvp 287 dev/atapiscsi/atapiscsi.c WDCDEBUG_PRINT(("driver caps %04x\n", drvp->atapi_cap),
drvp 300 dev/atapiscsi/atapiscsi.c strlcpy(drvp->drive_name,
drvp 302 dev/atapiscsi/atapiscsi.c sizeof(drvp->drive_name));
drvp 304 dev/atapiscsi/atapiscsi.c wdc_print_caps(drvp);
drvp 328 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[as->drive];
drvp 371 dev/atapiscsi/atapiscsi.c if (drvp->atapi_cap & ACAP_DSC) {
drvp 383 dev/atapiscsi/atapiscsi.c if (!(drvp->drive_flags & DRIVE_DSCBA)) {
drvp 453 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[as->drive];
drvp 458 dev/atapiscsi/atapiscsi.c return (wdc_ioctl(drvp, cmd, addr, flag, p));
drvp 740 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 750 dev/atapiscsi/atapiscsi.c (drvp->drive_flags & (DRIVE_DMA | DRIVE_UDMA)) &&
drvp 766 dev/atapiscsi/atapiscsi.c chp->wdc->sc_dev.dv_xname, chp->channel, drvp->drive,
drvp 782 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 799 dev/atapiscsi/atapiscsi.c if (drvp->state < ATAPI_READY_STATE) {
drvp 817 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 834 dev/atapiscsi/atapiscsi.c drvp->n_xfers++;
drvp 841 dev/atapiscsi/atapiscsi.c if ((drvp->atapi_cap & ATAPI_CFG_DRQ_MASK) == ATAPI_CFG_IRQ_DRQ) {
drvp 847 dev/atapiscsi/atapiscsi.c chp->wdc->sc_dev.dv_xname, chp->channel, drvp->drive
drvp 860 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 865 dev/atapiscsi/atapiscsi.c int cmdlen = (drvp->atapi_cap & ACAP_LEN) ? 16 : 12;
drvp 909 dev/atapiscsi/atapiscsi.c wdc_output_bytes(drvp, cmd, cmdlen);
drvp 929 dev/atapiscsi/atapiscsi.c if (drvp->atapi_cap & ACAP_DSC) {
drvp 932 dev/atapiscsi/atapiscsi.c drvp->drive_flags |= DRIVE_DSCBA;
drvp 935 dev/atapiscsi/atapiscsi.c (drvp->drive_flags & DRIVE_DSCBA)) {
drvp 941 dev/atapiscsi/atapiscsi.c drvp->drive_flags &= ~DRIVE_DSCBA;
drvp 1017 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 1057 dev/atapiscsi/atapiscsi.c wdc_output_bytes(drvp, (u_int8_t *)xfer->databuf +
drvp 1060 dev/atapiscsi/atapiscsi.c wdc_input_bytes(drvp, (u_int8_t *)xfer->databuf +
drvp 1074 dev/atapiscsi/atapiscsi.c wdc_output_bytes(drvp, (u_int8_t *)xfer->databuf +
drvp 1083 dev/atapiscsi/atapiscsi.c wdc_input_bytes(drvp,
drvp 1107 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 1117 dev/atapiscsi/atapiscsi.c ata_dmaerr(drvp);
drvp 1195 dev/atapiscsi/atapiscsi.c ata_dmaerr(drvp);
drvp 1330 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 1336 dev/atapiscsi/atapiscsi.c switch (drvp->state) {
drvp 1357 dev/atapiscsi/atapiscsi.c switch (drvp->state) {
drvp 1360 dev/atapiscsi/atapiscsi.c drvp->drive_flags &= ~DRIVE_DEVICE_RESET;
drvp 1380 dev/atapiscsi/atapiscsi.c drvp->drive_flags &= ~DRIVE_MODE;
drvp 1387 dev/atapiscsi/atapiscsi.c drvp->drive_flags &= ~(DRIVE_DMA | DRIVE_UDMA);
drvp 1402 dev/atapiscsi/atapiscsi.c chp->wdc->sc_dev.dv_xname, chp->channel, drvp->drive, drvp->state),
drvp 1405 dev/atapiscsi/atapiscsi.c switch (drvp->state) {
drvp 1420 dev/atapiscsi/atapiscsi.c if ((drvp->drive_flags & DRIVE_DEVICE_RESET) == 0) {
drvp 1421 dev/atapiscsi/atapiscsi.c drvp->state = ATAPI_IDENTIFY_STATE;
drvp 1425 dev/atapiscsi/atapiscsi.c wdccommandshort(chp, drvp->drive, ATAPI_DEVICE_RESET);
drvp 1426 dev/atapiscsi/atapiscsi.c drvp->state = ATAPI_DEVICE_RESET_WAIT_STATE;
drvp 1435 dev/atapiscsi/atapiscsi.c wdccommandshort(chp, drvp->drive, ATAPI_IDENTIFY_DEVICE);
drvp 1436 dev/atapiscsi/atapiscsi.c drvp->state = ATAPI_IDENTIFY_WAIT_STATE;
drvp 1452 dev/atapiscsi/atapiscsi.c drvp->state = ATAPI_PIOMODE_STATE;
drvp 1466 dev/atapiscsi/atapiscsi.c if ((drvp->drive_flags & DRIVE_MODE) == 0)
drvp 1469 dev/atapiscsi/atapiscsi.c if (drvp->PIO_mode <= 2)
drvp 1471 dev/atapiscsi/atapiscsi.c wdccommand(chp, drvp->drive, SET_FEATURES, 0, 0, 0,
drvp 1472 dev/atapiscsi/atapiscsi.c 0x08 | drvp->PIO_mode, WDSF_SET_MODE);
drvp 1473 dev/atapiscsi/atapiscsi.c drvp->state = ATAPI_PIOMODE_WAIT_STATE;
drvp 1482 dev/atapiscsi/atapiscsi.c drvp->PIO_mode = 3;
drvp 1488 dev/atapiscsi/atapiscsi.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 1489 dev/atapiscsi/atapiscsi.c wdccommand(chp, drvp->drive, SET_FEATURES, 0, 0, 0,
drvp 1490 dev/atapiscsi/atapiscsi.c 0x40 | drvp->UDMA_mode, WDSF_SET_MODE);
drvp 1491 dev/atapiscsi/atapiscsi.c } else if (drvp->drive_flags & DRIVE_DMA) {
drvp 1492 dev/atapiscsi/atapiscsi.c wdccommand(chp, drvp->drive, SET_FEATURES, 0, 0, 0,
drvp 1493 dev/atapiscsi/atapiscsi.c 0x20 | drvp->DMA_mode, WDSF_SET_MODE);
drvp 1497 dev/atapiscsi/atapiscsi.c drvp->state = ATAPI_DMAMODE_WAIT_STATE;
drvp 1507 dev/atapiscsi/atapiscsi.c drvp->drive_flags &= ~(DRIVE_DMA | DRIVE_UDMA);
drvp 1512 dev/atapiscsi/atapiscsi.c drvp->state = ATAPI_READY_STATE;
drvp 1589 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 1591 dev/atapiscsi/atapiscsi.c if (drvp->state == 0) {
drvp 1598 dev/atapiscsi/atapiscsi.c drvp->state = ATAPI_IDENTIFY_STATE;
drvp 1600 dev/atapiscsi/atapiscsi.c drvp->n_resets++;
drvp 1617 dev/atapiscsi/atapiscsi.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 1625 dev/atapiscsi/atapiscsi.c wdc_reset_channel(drvp);
drvp 830 dev/ic/wdc.c struct ata_drive_datas *drvp = &chp->ch_drive[i];
drvp 832 dev/ic/wdc.c drvp->chnl_softc = chp;
drvp 833 dev/ic/wdc.c drvp->drive = i;
drvp 838 dev/ic/wdc.c drvp->drive_flags |= DRIVE_CAP32;
drvp 840 dev/ic/wdc.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 850 dev/ic/wdc.c if (ata_get_params(&chp->ch_drive[i], at_poll, &drvp->id) ==
drvp 853 dev/ic/wdc.c drvp->drive_flags &= ~DRIVE_OLD;
drvp 855 dev/ic/wdc.c bzero(&drvp->id, sizeof(struct ataparams));
drvp 856 dev/ic/wdc.c drvp->drive_flags &=
drvp 862 dev/ic/wdc.c if ((drvp->drive_flags & DRIVE_OLD) &&
drvp 864 dev/ic/wdc.c drvp->drive_flags &= ~DRIVE_OLD;
drvp 1019 dev/ic/wdc.c void wdc_reset_channel(drvp)
drvp 1020 dev/ic/wdc.c struct ata_drive_datas *drvp;
drvp 1022 dev/ic/wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 1025 dev/ic/wdc.c chp->wdc->sc_dev.dv_xname, chp->channel, drvp->drive),
drvp 1265 dev/ic/wdc.c wdc_probe_caps(drvp, params)
drvp 1266 dev/ic/wdc.c struct ata_drive_datas *drvp;
drvp 1269 dev/ic/wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 1272 dev/ic/wdc.c int cf_flags = drvp->cf_flags;
drvp 1281 dev/ic/wdc.c drvp->PIO_mode = drvp->PIO_cap = 4;
drvp 1282 dev/ic/wdc.c drvp->DMA_mode = drvp->DMA_cap = 2;
drvp 1283 dev/ic/wdc.c drvp->UDMA_mode = drvp->UDMA_cap = 5;
drvp 1284 dev/ic/wdc.c drvp->drive_flags |= DRIVE_SATA | DRIVE_MODE | DRIVE_UDMA;
drvp 1285 dev/ic/wdc.c drvp->ata_vers = 4;
drvp 1298 dev/ic/wdc.c drvp->drive_flags |= DRIVE_CAP32;
drvp 1299 dev/ic/wdc.c ata_get_params(drvp, at_poll, ¶ms2);
drvp 1302 dev/ic/wdc.c drvp->drive_flags &= ~DRIVE_CAP32;
drvp 1311 dev/ic/wdc.c drvp->ata_vers = i;
drvp 1318 dev/ic/wdc.c if (drvp->drive_flags & DRIVE_ATAPI)
drvp 1319 dev/ic/wdc.c drvp->PIO_mode = 3;
drvp 1333 dev/ic/wdc.c drvp->PIO_cap = params->atap_oldpiotiming;
drvp 1335 dev/ic/wdc.c drvp->drive_flags |= DRIVE_MODE;
drvp 1346 dev/ic/wdc.c drvp->PIO_cap = 2;
drvp 1348 dev/ic/wdc.c drvp->PIO_cap = 1;
drvp 1351 dev/ic/wdc.c drvp->drive_flags |= DRIVE_MODE;
drvp 1354 dev/ic/wdc.c drvp->PIO_mode = drvp->PIO_cap;
drvp 1383 dev/ic/wdc.c drvp->PIO_cap = i + 3;
drvp 1392 dev/ic/wdc.c if (ata_set_mode(drvp, 0x08 | (i + 3),
drvp 1401 dev/ic/wdc.c drvp->PIO_mode = i + 3;
drvp 1402 dev/ic/wdc.c drvp->PIO_cap = i + 3;
drvp 1413 dev/ic/wdc.c drvp->drive_flags |= DRIVE_MODE;
drvp 1416 dev/ic/wdc.c if ((drvp->drive_flags & DRIVE_ATAPI) &&
drvp 1426 dev/ic/wdc.c if (ata_set_mode(drvp, 0x20 | i, at_poll)
drvp 1436 dev/ic/wdc.c drvp->DMA_mode = i;
drvp 1437 dev/ic/wdc.c drvp->DMA_cap = i;
drvp 1438 dev/ic/wdc.c drvp->drive_flags |= DRIVE_DMA;
drvp 1449 dev/ic/wdc.c if (ata_set_mode(drvp, 0x40 | i,
drvp 1456 dev/ic/wdc.c drvp->UDMA_mode = i;
drvp 1457 dev/ic/wdc.c drvp->UDMA_cap = i;
drvp 1458 dev/ic/wdc.c drvp->drive_flags |= DRIVE_UDMA;
drvp 1466 dev/ic/wdc.c if (drvp->ata_vers == 0) {
drvp 1467 dev/ic/wdc.c if (drvp->drive_flags & DRIVE_UDMA)
drvp 1468 dev/ic/wdc.c drvp->ata_vers = 4; /* should be at last ATA-4 */
drvp 1469 dev/ic/wdc.c else if (drvp->PIO_cap > 2)
drvp 1470 dev/ic/wdc.c drvp->ata_vers = 2; /* should be at last ATA-2 */
drvp 1473 dev/ic/wdc.c drvp->PIO_mode =
drvp 1475 dev/ic/wdc.c drvp->drive_flags |= DRIVE_MODE;
drvp 1484 dev/ic/wdc.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 1486 dev/ic/wdc.c drvp->DMA_mode = (cf_flags & ATA_CONFIG_DMA_MODES) >>
drvp 1488 dev/ic/wdc.c drvp->drive_flags |= DRIVE_DMA | DRIVE_MODE;
drvp 1498 dev/ic/wdc.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 1500 dev/ic/wdc.c drvp->UDMA_mode = (cf_flags & ATA_CONFIG_UDMA_MODES) >>
drvp 1502 dev/ic/wdc.c drvp->drive_flags |= DRIVE_UDMA | DRIVE_MODE;
drvp 1508 dev/ic/wdc.c wdc_output_bytes(drvp, bytes, buflen)
drvp 1509 dev/ic/wdc.c struct ata_drive_datas *drvp;
drvp 1513 dev/ic/wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 1517 dev/ic/wdc.c if (drvp->drive_flags & DRIVE_CAP32) {
drvp 1536 dev/ic/wdc.c wdc_input_bytes(drvp, bytes, buflen)
drvp 1537 dev/ic/wdc.c struct ata_drive_datas *drvp;
drvp 1541 dev/ic/wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 1545 dev/ic/wdc.c if (drvp->drive_flags & DRIVE_CAP32) {
drvp 1564 dev/ic/wdc.c wdc_print_caps(drvp)
drvp 1565 dev/ic/wdc.c struct ata_drive_datas *drvp;
drvp 1570 dev/ic/wdc.c printf("%s: can use ", drvp->drive_name);
drvp 1572 dev/ic/wdc.c if (drvp->drive_flags & DRIVE_CAP32) {
drvp 1577 dev/ic/wdc.c printf(", PIO mode %d", drvp->PIO_cap);
drvp 1579 dev/ic/wdc.c if (drvp->drive_flags & DRIVE_DMA) {
drvp 1580 dev/ic/wdc.c printf(", DMA mode %d", drvp->DMA_cap);
drvp 1583 dev/ic/wdc.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 1584 dev/ic/wdc.c printf(", Ultra-DMA mode %d", drvp->UDMA_cap);
drvp 1596 dev/ic/wdc.c struct ata_drive_datas *drvp;
drvp 1599 dev/ic/wdc.c drvp = &chp->ch_drive[drive];
drvp 1600 dev/ic/wdc.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 1604 dev/ic/wdc.c drvp->drive_name,
drvp 1608 dev/ic/wdc.c !(drvp->cf_flags & ATA_CONFIG_PIO_SET))
drvp 1611 dev/ic/wdc.c printf(" using PIO mode %d", drvp->PIO_mode);
drvp 1612 dev/ic/wdc.c if (drvp->drive_flags & DRIVE_DMA)
drvp 1613 dev/ic/wdc.c printf(", DMA mode %d", drvp->DMA_mode);
drvp 1614 dev/ic/wdc.c if (drvp->drive_flags & DRIVE_UDMA)
drvp 1615 dev/ic/wdc.c printf(", Ultra-DMA mode %d", drvp->UDMA_mode);
drvp 1625 dev/ic/wdc.c wdc_downgrade_mode(drvp)
drvp 1626 dev/ic/wdc.c struct ata_drive_datas *drvp;
drvp 1628 dev/ic/wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 1630 dev/ic/wdc.c int cf_flags = drvp->cf_flags;
drvp 1633 dev/ic/wdc.c if ((drvp->drive_flags & DRIVE_MODE) == 0 ||
drvp 1647 dev/ic/wdc.c if ((drvp->drive_flags & DRIVE_UDMA) && drvp->UDMA_mode > 0) {
drvp 1648 dev/ic/wdc.c drvp->UDMA_mode = drvp->UDMA_mode - 1;
drvp 1650 dev/ic/wdc.c drvp->drive_name, drvp->UDMA_mode);
drvp 1651 dev/ic/wdc.c } else if ((drvp->drive_flags & DRIVE_UDMA) &&
drvp 1652 dev/ic/wdc.c (drvp->drive_flags & DRIVE_DMAERR) == 0) {
drvp 1660 dev/ic/wdc.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 1661 dev/ic/wdc.c drvp->drive_flags |= DRIVE_DMA;
drvp 1662 dev/ic/wdc.c drvp->DMA_mode = drvp->DMA_cap;
drvp 1664 dev/ic/wdc.c drvp->drive_name, drvp->DMA_mode);
drvp 1665 dev/ic/wdc.c } else if (drvp->drive_flags & (DRIVE_DMA | DRIVE_UDMA)) {
drvp 1666 dev/ic/wdc.c drvp->drive_flags &= ~(DRIVE_DMA | DRIVE_UDMA);
drvp 1667 dev/ic/wdc.c drvp->PIO_mode = drvp->PIO_cap;
drvp 1669 dev/ic/wdc.c drvp->drive_name, drvp->PIO_mode);
drvp 1675 dev/ic/wdc.c wdc_reset_channel(drvp);
drvp 1680 dev/ic/wdc.c wdc_exec_command(drvp, wdc_c)
drvp 1681 dev/ic/wdc.c struct ata_drive_datas *drvp;
drvp 1684 dev/ic/wdc.c struct channel_softc *chp = drvp->chnl_softc;
drvp 1689 dev/ic/wdc.c chp->wdc->sc_dev.dv_xname, chp->channel, drvp->drive),
drvp 1701 dev/ic/wdc.c xfer->drive = drvp->drive;
drvp 1815 dev/ic/wdc.c struct ata_drive_datas *drvp = &chp->ch_drive[xfer->drive];
drvp 1836 dev/ic/wdc.c wdc_input_bytes(drvp, data, bcount);
drvp 2292 dev/ic/wdc.c wdc_ioctl(drvp, xfer, addr, flag, p)
drvp 2293 dev/ic/wdc.c struct ata_drive_datas *drvp;
drvp 2337 dev/ic/wdc.c wi->wi_drvp = drvp;
drvp 313 dev/ic/wdcvar.h void wdc_output_bytes(struct ata_drive_datas *drvp, void *, unsigned int);
drvp 314 dev/ic/wdcvar.h void wdc_input_bytes(struct ata_drive_datas *drvp, void *, unsigned int);
drvp 1579 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 1582 dev/pci/pciide.c drvp = &cp->wdc_channel.ch_drive[drive];
drvp 1584 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 1587 dev/pci/pciide.c if (((drvp->drive_flags & DRIVE_DMA) == 0 &&
drvp 1588 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) == 0) ||
drvp 1590 dev/pci/pciide.c drvp->drive_flags &= ~(DRIVE_DMA | DRIVE_UDMA);
drvp 1596 dev/pci/pciide.c drvp->drive_flags &= ~(DRIVE_DMA | DRIVE_UDMA);
drvp 1967 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 2070 dev/pci/pciide.c drvp = &cp->wdc_channel.ch_drive[drive];
drvp 2072 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 2074 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE_DMA) == 0)
drvp 2082 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 2143 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 2155 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 2157 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 2159 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 2161 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 2163 dev/pci/pciide.c } else if (drvp->drive_flags & DRIVE_DMA) {
drvp 2456 dev/pci/pciide.c struct ata_drive_datas *drvp = cp->wdc_channel.ch_drive;
drvp 2476 dev/pci/pciide.c if ((drvp[0].drive_flags & DRIVE_DMA) &&
drvp 2477 dev/pci/pciide.c (drvp[1].drive_flags & DRIVE_DMA)) {
drvp 2479 dev/pci/pciide.c min(drvp[0].DMA_mode, drvp[1].DMA_mode);
drvp 2480 dev/pci/pciide.c drvp[0].DMA_mode = mode[0];
drvp 2481 dev/pci/pciide.c drvp[1].DMA_mode = mode[1];
drvp 2488 dev/pci/pciide.c if (drvp[0].drive_flags & DRIVE_DMA) {
drvp 2489 dev/pci/pciide.c mode[0] = drvp[0].DMA_mode;
drvp 2490 dev/pci/pciide.c mode[1] = drvp[1].PIO_mode;
drvp 2493 dev/pci/pciide.c mode[1] = drvp[1].PIO_mode = 0;
drvp 2496 dev/pci/pciide.c if (drvp[1].drive_flags & DRIVE_DMA) {
drvp 2497 dev/pci/pciide.c mode[1] = drvp[1].DMA_mode;
drvp 2498 dev/pci/pciide.c mode[0] = drvp[0].PIO_mode;
drvp 2501 dev/pci/pciide.c mode[0] = drvp[0].PIO_mode = 0;
drvp 2508 dev/pci/pciide.c if (drvp[0].PIO_mode < 2) {
drvp 2509 dev/pci/pciide.c mode[0] = drvp[0].PIO_mode = 0;
drvp 2510 dev/pci/pciide.c mode[1] = drvp[1].PIO_mode;
drvp 2511 dev/pci/pciide.c } else if (drvp[1].PIO_mode < 2) {
drvp 2512 dev/pci/pciide.c mode[1] = drvp[1].PIO_mode = 0;
drvp 2513 dev/pci/pciide.c mode[0] = drvp[0].PIO_mode;
drvp 2516 dev/pci/pciide.c min(drvp[1].PIO_mode, drvp[0].PIO_mode);
drvp 2517 dev/pci/pciide.c drvp[0].PIO_mode = mode[0];
drvp 2518 dev/pci/pciide.c drvp[1].PIO_mode = mode[1];
drvp 2522 dev/pci/pciide.c if (drvp[drive].drive_flags & DRIVE_DMA) {
drvp 2541 dev/pci/pciide.c if ((drvp[drive].drive_flags & DRIVE) == 0)
drvp 2543 dev/pci/pciide.c idetim |= piix_setup_idetim_drvs(&drvp[drive]);
drvp 2544 dev/pci/pciide.c if (drvp[drive].drive_flags & DRIVE_DMA)
drvp 2560 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 2588 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 2590 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 2592 dev/pci/pciide.c if (((drvp->drive_flags & DRIVE_DMA) == 0 &&
drvp 2593 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) == 0))
drvp 2628 dev/pci/pciide.c if (drvp->UDMA_mode > 2 &&
drvp 2630 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 2631 dev/pci/pciide.c if (drvp->UDMA_mode > 4) {
drvp 2635 dev/pci/pciide.c if (drvp->UDMA_mode > 2) {
drvp 2647 dev/pci/pciide.c if (drvp->UDMA_mode > 2 &&
drvp 2649 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 2650 dev/pci/pciide.c if (drvp->UDMA_mode > 2)
drvp 2657 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA)) {
drvp 2659 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 2662 dev/pci/pciide.c piix4_sct_udma[drvp->UDMA_mode], channel, drive);
drvp 2665 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 2668 dev/pci/pciide.c drvp->DMA_mode, 1, channel);
drvp 2671 dev/pci/pciide.c drvp->DMA_mode, 1, channel);
drvp 2679 dev/pci/pciide.c idetim |= piix_setup_idetim_drvs(drvp);
drvp 2682 dev/pci/pciide.c drvp->PIO_mode, 0, channel);
drvp 2685 dev/pci/pciide.c drvp->PIO_mode, 0, channel);
drvp 2723 dev/pci/pciide.c piix_setup_idetim_drvs(struct ata_drive_datas *drvp)
drvp 2726 dev/pci/pciide.c struct channel_softc *chp = drvp->chnl_softc;
drvp 2728 dev/pci/pciide.c u_int8_t drive = drvp->drive;
drvp 2734 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_DMA) {
drvp 2736 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE_DMA) &&
drvp 2737 dev/pci/pciide.c drvp->DMA_mode == 0) {
drvp 2738 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 2746 dev/pci/pciide.c if ((piix_isp_pio[drvp->PIO_mode] !=
drvp 2747 dev/pci/pciide.c piix_isp_dma[drvp->DMA_mode]) ||
drvp 2748 dev/pci/pciide.c (piix_rtc_pio[drvp->PIO_mode] !=
drvp 2749 dev/pci/pciide.c piix_rtc_dma[drvp->DMA_mode]))
drvp 2750 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 2752 dev/pci/pciide.c if (drvp->PIO_mode <= 2) {
drvp 2765 dev/pci/pciide.c if (drvp->PIO_mode < 2)
drvp 2769 dev/pci/pciide.c if (drvp->PIO_mode >= 3) {
drvp 2865 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 2886 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 2888 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 2891 dev/pci/pciide.c if (((drvp->drive_flags & DRIVE_DMA) == 0 &&
drvp 2892 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) == 0)) {
drvp 2893 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 2897 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA)) {
drvp 2899 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 2903 dev/pci/pciide.c drive)) == 0 && drvp->UDMA_mode > 2) {
drvp 2905 dev/pci/pciide.c "cable not detected\n", drvp->drive_name,
drvp 2908 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 2914 dev/pci/pciide.c amd756_udma_tim[drvp->UDMA_mode]);
drvp 2916 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 2919 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 2932 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 2933 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 2938 dev/pci/pciide.c if (drvp->PIO_mode <= (drvp->DMA_mode +2))
drvp 2939 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 2941 dev/pci/pciide.c mode = drvp->DMA_mode + 2;
drvp 2947 dev/pci/pciide.c drvp->DMA_mode = 0;
drvp 2948 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 2951 dev/pci/pciide.c drvp->PIO_mode = mode;
drvp 2952 dev/pci/pciide.c drvp->DMA_mode = mode - 2;
drvp 3132 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 3164 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 3166 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 3169 dev/pci/pciide.c if (((drvp->drive_flags & DRIVE_DMA) == 0 &&
drvp 3170 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) == 0)) {
drvp 3171 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 3175 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA)) {
drvp 3177 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 3182 dev/pci/pciide.c drive, apollo_udma133_tim[drvp->UDMA_mode]);
drvp 3186 dev/pci/pciide.c drive, apollo_udma100_tim[drvp->UDMA_mode]);
drvp 3191 dev/pci/pciide.c drive, apollo_udma66_tim[drvp->UDMA_mode]);
drvp 3195 dev/pci/pciide.c drive, apollo_udma33_tim[drvp->UDMA_mode]);
drvp 3198 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 3201 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 3203 dev/pci/pciide.c if (drvp->PIO_mode <= (drvp->DMA_mode +2))
drvp 3204 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 3206 dev/pci/pciide.c mode = drvp->DMA_mode + 2;
drvp 3212 dev/pci/pciide.c drvp->DMA_mode = 0;
drvp 3213 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 3216 dev/pci/pciide.c drvp->PIO_mode = mode;
drvp 3217 dev/pci/pciide.c drvp->DMA_mode = mode - 2;
drvp 3474 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 3486 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 3488 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 3491 dev/pci/pciide.c tim = cmd0643_9_data_tim_pio[drvp->PIO_mode];
drvp 3492 dev/pci/pciide.c if (drvp->drive_flags & (DRIVE_DMA | DRIVE_UDMA)) {
drvp 3493 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 3495 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 3498 dev/pci/pciide.c if (drvp->UDMA_mode > 2 &&
drvp 3504 dev/pci/pciide.c drvp->drive_name,
drvp 3507 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 3509 dev/pci/pciide.c if (drvp->UDMA_mode > 2)
drvp 3517 dev/pci/pciide.c (cmd0646_9_tim_udma[drvp->UDMA_mode] <<
drvp 3537 dev/pci/pciide.c if (drvp->PIO_mode >= 3 &&
drvp 3538 dev/pci/pciide.c (drvp->DMA_mode + 2) > drvp->PIO_mode) {
drvp 3539 dev/pci/pciide.c drvp->DMA_mode = drvp->PIO_mode - 2;
drvp 3541 dev/pci/pciide.c tim = cmd0643_9_data_tim_dma[drvp->DMA_mode];
drvp 3677 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 3700 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 3702 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 3705 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 3706 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 3708 dev/pci/pciide.c if (drvp->UDMA_mode > 2 &&
drvp 3710 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 3712 dev/pci/pciide.c if (drvp->UDMA_mode == 6 && (scsc & 0x30) == 0) {
drvp 3716 dev/pci/pciide.c drvp->UDMA_mode = 5;
drvp 3722 dev/pci/pciide.c val |= udma2_tbl[drvp->UDMA_mode];
drvp 3724 dev/pci/pciide.c val |= udma_tbl[drvp->UDMA_mode];
drvp 3727 dev/pci/pciide.c } else if (drvp->drive_flags & DRIVE_DMA) {
drvp 3730 dev/pci/pciide.c val = dma_tbl[drvp->DMA_mode];
drvp 3737 dev/pci/pciide.c val = pio_tbl[drvp->PIO_mode];
drvp 3897 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 3910 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 3912 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 3914 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 3916 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 3919 dev/pci/pciide.c } else if (drvp->drive_flags & DRIVE_DMA) {
drvp 4506 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 4521 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 4523 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 4526 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_DMA) {
drvp 4529 dev/pci/pciide.c if (dma_mode == -1 || dma_mode > drvp->DMA_mode)
drvp 4530 dev/pci/pciide.c dma_mode = drvp->DMA_mode;
drvp 4532 dev/pci/pciide.c cy_cmd_ctrl |= (cy_pio_pulse[drvp->PIO_mode] <<
drvp 4534 dev/pci/pciide.c cy_cmd_ctrl |= (cy_pio_rec[drvp->PIO_mode] <<
drvp 4536 dev/pci/pciide.c cy_cmd_ctrl |= (cy_pio_pulse[drvp->PIO_mode] <<
drvp 4538 dev/pci/pciide.c cy_cmd_ctrl |= (cy_pio_rec[drvp->PIO_mode] <<
drvp 4808 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 4825 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 4827 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 4830 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 4832 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 4835 dev/pci/pciide.c if (drvp->UDMA_mode > 2)
drvp 4836 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 4838 dev/pci/pciide.c sis_tim |= sis_udma133new_tim[drvp->UDMA_mode];
drvp 4839 dev/pci/pciide.c sis_tim |= sis_pio133new_tim[drvp->PIO_mode];
drvp 4841 dev/pci/pciide.c } else if (drvp->drive_flags & DRIVE_DMA) {
drvp 4847 dev/pci/pciide.c if (drvp->PIO_mode > (drvp->DMA_mode + 2))
drvp 4848 dev/pci/pciide.c drvp->PIO_mode = drvp->DMA_mode + 2;
drvp 4849 dev/pci/pciide.c if (drvp->DMA_mode + 2 > (drvp->PIO_mode))
drvp 4850 dev/pci/pciide.c drvp->DMA_mode = (drvp->PIO_mode > 2) ?
drvp 4851 dev/pci/pciide.c drvp->PIO_mode - 2 : 0;
drvp 4852 dev/pci/pciide.c sis_tim |= sis_dma133new_tim[drvp->DMA_mode];
drvp 4855 dev/pci/pciide.c sis_tim |= sis_pio133new_tim[drvp->PIO_mode];
drvp 4873 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 4891 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 4893 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 4896 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE_DMA) == 0 &&
drvp 4897 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) == 0)
drvp 4900 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 4902 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 4905 dev/pci/pciide.c if (drvp->UDMA_mode > 2)
drvp 4906 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 4911 dev/pci/pciide.c sis_tim |= sis_udma66_tim[drvp->UDMA_mode] <<
drvp 4916 dev/pci/pciide.c sis_udma100new_tim[drvp->UDMA_mode] <<
drvp 4921 dev/pci/pciide.c sis_udma133old_tim[drvp->UDMA_mode] <<
drvp 4934 dev/pci/pciide.c if (drvp->PIO_mode > (drvp->DMA_mode + 2))
drvp 4935 dev/pci/pciide.c drvp->PIO_mode = drvp->DMA_mode + 2;
drvp 4936 dev/pci/pciide.c if (drvp->DMA_mode + 2 > (drvp->PIO_mode))
drvp 4937 dev/pci/pciide.c drvp->DMA_mode = (drvp->PIO_mode > 2) ?
drvp 4938 dev/pci/pciide.c drvp->PIO_mode - 2 : 0;
drvp 4939 dev/pci/pciide.c if (drvp->DMA_mode == 0)
drvp 4940 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 4947 dev/pci/pciide.c sis_tim |= sis_pio_act[drvp->PIO_mode] <<
drvp 4949 dev/pci/pciide.c sis_tim |= sis_pio_rec[drvp->PIO_mode] <<
drvp 4954 dev/pci/pciide.c sis_tim |= sis_pio_act[drvp->PIO_mode] <<
drvp 4956 dev/pci/pciide.c sis_tim |= sis_pio_rec[drvp->PIO_mode] <<
drvp 5043 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 5054 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 5056 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 5061 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE_DMA) == 0) {
drvp 5062 dev/pci/pciide.c tim = natsemi_pio_pulse[drvp->PIO_mode] |
drvp 5063 dev/pci/pciide.c (natsemi_pio_recover[drvp->PIO_mode] << 4);
drvp 5070 dev/pci/pciide.c if (drvp->PIO_mode >= 3 &&
drvp 5071 dev/pci/pciide.c (drvp->DMA_mode + 2) > drvp->PIO_mode) {
drvp 5072 dev/pci/pciide.c drvp->DMA_mode = drvp->PIO_mode - 2;
drvp 5075 dev/pci/pciide.c tim = natsemi_dma_pulse[drvp->DMA_mode] |
drvp 5076 dev/pci/pciide.c (natsemi_dma_recover[drvp->DMA_mode] << 4);
drvp 5228 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 5249 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 5252 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 5264 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) != 0) {
drvp 5266 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 5268 dev/pci/pciide.c dmatim = scx200_udma33[drvp->UDMA_mode];
drvp 5269 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 5271 dev/pci/pciide.c (drvp->drive_flags & DRIVE_DMA) != 0) {
drvp 5273 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 5275 dev/pci/pciide.c dmatim = scx200_dma33[drvp->DMA_mode];
drvp 5278 dev/pci/pciide.c if (drvp->PIO_mode <= (drvp->DMA_mode + 2))
drvp 5279 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 5281 dev/pci/pciide.c mode = drvp->DMA_mode + 2;
drvp 5283 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 5287 dev/pci/pciide.c drvp->PIO_mode = mode;
drvp 5289 dev/pci/pciide.c drvp->DMA_mode = 0;
drvp 5291 dev/pci/pciide.c drvp->DMA_mode = mode - 2;
drvp 5293 dev/pci/pciide.c piotim = scx200_pio33[pioformat][drvp->PIO_mode];
drvp 5411 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 5440 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 5442 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 5454 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE_DMA) == 0 &&
drvp 5455 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) == 0) {
drvp 5462 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 5464 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 5468 dev/pci/pciide.c acer_udma[drvp->UDMA_mode]);
drvp 5470 dev/pci/pciide.c if (drvp->UDMA_mode >= 3) {
drvp 5482 dev/pci/pciide.c if (drvp->PIO_mode > (drvp->DMA_mode + 2))
drvp 5483 dev/pci/pciide.c drvp->PIO_mode = drvp->DMA_mode + 2;
drvp 5484 dev/pci/pciide.c if (drvp->DMA_mode + 2 > (drvp->PIO_mode))
drvp 5485 dev/pci/pciide.c drvp->DMA_mode = (drvp->PIO_mode > 2) ?
drvp 5486 dev/pci/pciide.c drvp->PIO_mode - 2 : 0;
drvp 5487 dev/pci/pciide.c if (drvp->DMA_mode == 0)
drvp 5488 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 5493 dev/pci/pciide.c acer_pio[drvp->PIO_mode]);
drvp 5680 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 5734 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 5736 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 5742 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 5744 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 5746 dev/pci/pciide.c drvp->UDMA_mode > 2) {
drvp 5748 dev/pci/pciide.c "cable not detected\n", drvp->drive_name,
drvp 5751 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 5753 dev/pci/pciide.c after = tim_udma[drvp->UDMA_mode];
drvp 5755 dev/pci/pciide.c } else if (drvp->drive_flags & DRIVE_DMA) {
drvp 5761 dev/pci/pciide.c if (drvp->PIO_mode >= 3 &&
drvp 5762 dev/pci/pciide.c (drvp->DMA_mode + 2) > drvp->PIO_mode) {
drvp 5763 dev/pci/pciide.c drvp->DMA_mode = drvp->PIO_mode - 2;
drvp 5765 dev/pci/pciide.c after = tim_dma[drvp->DMA_mode];
drvp 5769 dev/pci/pciide.c after = tim_pio[drvp->PIO_mode];
drvp 6033 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 6109 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 6111 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 6114 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 6116 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 6118 dev/pci/pciide.c pdc2xx_udma_mb[drvp->UDMA_mode]);
drvp 6120 dev/pci/pciide.c pdc2xx_udma_mc[drvp->UDMA_mode]);
drvp 6122 dev/pci/pciide.c } else if (drvp->drive_flags & DRIVE_DMA) {
drvp 6124 dev/pci/pciide.c pdc2xx_dma_mb[drvp->DMA_mode]);
drvp 6126 dev/pci/pciide.c pdc2xx_dma_mc[drvp->DMA_mode]);
drvp 6134 dev/pci/pciide.c mode = PDC2xx_TIM_SET_PA(mode, pdc2xx_pa[drvp->PIO_mode]);
drvp 6135 dev/pci/pciide.c mode = PDC2xx_TIM_SET_PB(mode, pdc2xx_pb[drvp->PIO_mode]);
drvp 6136 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_ATA)
drvp 6139 dev/pci/pciide.c if (drvp->PIO_mode >= 3) {
drvp 6162 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 6178 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 6180 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 6182 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 6184 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 6186 dev/pci/pciide.c if (cable && drvp->UDMA_mode > 2) {
drvp 6188 dev/pci/pciide.c "cable not detected\n", drvp->drive_name,
drvp 6191 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 6193 dev/pci/pciide.c } else if (drvp->drive_flags & DRIVE_DMA) {
drvp 6567 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 6574 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 6575 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 6577 dev/pci/pciide.c if (drvp->drive_flags & DRIVE_UDMA) {
drvp 6579 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 6984 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 7011 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 7013 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0) {
drvp 7018 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE_DMA)) {
drvp 7023 dev/pci/pciide.c if (drvp->PIO_mode > (drvp->DMA_mode + 2))
drvp 7024 dev/pci/pciide.c drvp->PIO_mode = drvp->DMA_mode + 2;
drvp 7025 dev/pci/pciide.c if (drvp->DMA_mode + 2 > (drvp->PIO_mode))
drvp 7026 dev/pci/pciide.c drvp->DMA_mode = (drvp->PIO_mode > 2) ?
drvp 7027 dev/pci/pciide.c drvp->PIO_mode - 2 : 0;
drvp 7028 dev/pci/pciide.c if (drvp->DMA_mode == 0)
drvp 7029 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 7031 dev/pci/pciide.c mode[drive] = drvp->DMA_mode + 5;
drvp 7033 dev/pci/pciide.c mode[drive] = drvp->PIO_mode;
drvp 7149 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 7177 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 7179 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 7183 dev/pci/pciide.c pio_time |= pio_modes[drvp->PIO_mode] << (8 * (unit^1));
drvp 7184 dev/pci/pciide.c pio_mode |= drvp->PIO_mode << (4 * unit + 16);
drvp 7186 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA)) {
drvp 7188 dev/pci/pciide.c if (sc->sc_rev <= 0x92 && drvp->UDMA_mode > 2 &&
drvp 7193 dev/pci/pciide.c "cable not detected\n", drvp->drive_name,
drvp 7196 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 7198 dev/pci/pciide.c dma_time |= dma_modes[drvp->DMA_mode] << (8 * (unit^1));
drvp 7199 dev/pci/pciide.c udma_mode |= drvp->UDMA_mode << (4 * unit + 16);
drvp 7203 dev/pci/pciide.c (drvp->drive_flags & DRIVE_DMA)) {
drvp 7205 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 7206 dev/pci/pciide.c dma_time |= dma_modes[drvp->DMA_mode] << (8 * (unit^1));
drvp 7210 dev/pci/pciide.c drvp->drive_flags &= ~(DRIVE_UDMA | DRIVE_DMA);
drvp 7671 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 7697 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 7699 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 7703 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA)) {
drvp 7707 dev/pci/pciide.c acard_act_udma[drvp->UDMA_mode],
drvp 7708 dev/pci/pciide.c acard_rec_udma[drvp->UDMA_mode]);
drvp 7710 dev/pci/pciide.c acard_udma_conf[drvp->UDMA_mode]);
drvp 7713 dev/pci/pciide.c acard_act_udma[drvp->UDMA_mode],
drvp 7714 dev/pci/pciide.c acard_rec_udma[drvp->UDMA_mode]);
drvp 7716 dev/pci/pciide.c acard_udma_conf[drvp->UDMA_mode]);
drvp 7720 dev/pci/pciide.c (drvp->drive_flags & DRIVE_DMA)) {
drvp 7722 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 7725 dev/pci/pciide.c acard_act_dma[drvp->DMA_mode],
drvp 7726 dev/pci/pciide.c acard_rec_dma[drvp->DMA_mode]);
drvp 7729 dev/pci/pciide.c acard_act_dma[drvp->DMA_mode],
drvp 7730 dev/pci/pciide.c acard_rec_dma[drvp->DMA_mode]);
drvp 7735 dev/pci/pciide.c drvp->drive_flags &= ~(DRIVE_UDMA | DRIVE_DMA);
drvp 7738 dev/pci/pciide.c acard_act_pio[drvp->PIO_mode],
drvp 7739 dev/pci/pciide.c acard_rec_pio[drvp->PIO_mode]);
drvp 7742 dev/pci/pciide.c acard_act_pio[drvp->PIO_mode],
drvp 7743 dev/pci/pciide.c acard_rec_pio[drvp->PIO_mode]);
drvp 7844 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 7870 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 7873 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 7877 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) != 0) {
drvp 7879 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 7882 dev/pci/pciide.c nforce_udma[drvp->UDMA_mode]) |
drvp 7886 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 7888 dev/pci/pciide.c (drvp->drive_flags & DRIVE_DMA) != 0) {
drvp 7890 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 7893 dev/pci/pciide.c if (drvp->PIO_mode <= (drvp->DMA_mode + 2))
drvp 7894 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 7896 dev/pci/pciide.c mode = drvp->DMA_mode + 2;
drvp 7898 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 7906 dev/pci/pciide.c drvp->DMA_mode = 0;
drvp 7907 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 7910 dev/pci/pciide.c drvp->PIO_mode = mode;
drvp 7911 dev/pci/pciide.c drvp->DMA_mode = mode - 2;
drvp 8086 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 8109 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 8112 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 8116 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) != 0) {
drvp 8118 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 8123 dev/pci/pciide.c if (drvp->UDMA_mode > 2 &&
drvp 8127 dev/pci/pciide.c drvp->drive_name,
drvp 8130 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 8134 dev/pci/pciide.c if (drvp->UDMA_mode >= 5)
drvp 8139 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 8141 dev/pci/pciide.c (drvp->drive_flags & DRIVE_DMA) != 0) {
drvp 8143 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 8147 dev/pci/pciide.c if (drvp->PIO_mode <= (drvp->DMA_mode + 2))
drvp 8148 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 8150 dev/pci/pciide.c mode = drvp->DMA_mode + 2;
drvp 8159 dev/pci/pciide.c drvp->DMA_mode = 0;
drvp 8160 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 8163 dev/pci/pciide.c drvp->PIO_mode = mode;
drvp 8164 dev/pci/pciide.c drvp->DMA_mode = mode - 2;
drvp 8168 dev/pci/pciide.c if (drvp->PIO_mode >= 3)
drvp 8236 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 8256 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 8259 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 8262 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) != 0) {
drvp 8267 dev/pci/pciide.c drvp->UDMA_mode);
drvp 8268 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 8270 dev/pci/pciide.c (drvp->drive_flags & DRIVE_DMA) != 0) {
drvp 8272 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 8276 dev/pci/pciide.c ixp_mdma_timings[drvp->DMA_mode]);
drvp 8279 dev/pci/pciide.c if (drvp->PIO_mode <= (drvp->DMA_mode + 2))
drvp 8280 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 8282 dev/pci/pciide.c mode = drvp->DMA_mode + 2;
drvp 8284 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 8288 dev/pci/pciide.c drvp->PIO_mode = mode;
drvp 8290 dev/pci/pciide.c drvp->DMA_mode = 0;
drvp 8292 dev/pci/pciide.c drvp->DMA_mode = mode - 2;
drvp 8297 dev/pci/pciide.c if (drvp->PIO_mode == 1)
drvp 8298 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 8300 dev/pci/pciide.c IXP_SET_MODE(pio, chp->channel, drive, drvp->PIO_mode);
drvp 8302 dev/pci/pciide.c ixp_pio_timings[drvp->PIO_mode]);
drvp 8391 dev/pci/pciide.c struct ata_drive_datas *drvp;
drvp 8409 dev/pci/pciide.c drvp = &chp->ch_drive[drive];
drvp 8412 dev/pci/pciide.c if ((drvp->drive_flags & DRIVE) == 0)
drvp 8416 dev/pci/pciide.c (drvp->drive_flags & DRIVE_UDMA) != 0) {
drvp 8418 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_DMA;
drvp 8422 dev/pci/pciide.c (drvp->UDMA_mode > 2))
drvp 8423 dev/pci/pciide.c drvp->UDMA_mode = 2;
drvp 8425 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 8427 dev/pci/pciide.c (drvp->drive_flags & DRIVE_DMA) != 0) {
drvp 8429 dev/pci/pciide.c drvp->drive_flags &= ~DRIVE_UDMA;
drvp 8432 dev/pci/pciide.c if (drvp->PIO_mode <= (drvp->DMA_mode + 2))
drvp 8433 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 8435 dev/pci/pciide.c mode = drvp->DMA_mode + 2;
drvp 8437 dev/pci/pciide.c mode = drvp->PIO_mode;
drvp 8445 dev/pci/pciide.c drvp->DMA_mode = 0;
drvp 8446 dev/pci/pciide.c drvp->PIO_mode = 0;
drvp 8449 dev/pci/pciide.c drvp->PIO_mode = mode;
drvp 8450 dev/pci/pciide.c drvp->DMA_mode = mode - 2;