wd 47 arch/i386/i386/conf.c bdev_decl(wd);
wd 64 arch/i386/i386/conf.c bdev_disk_init(NWD,wd), /* 0: ST506/ESDI/IDE disk */
wd 118 arch/i386/i386/conf.c cdev_decl(wd);
wd 204 arch/i386/i386/conf.c cdev_disk_init(NWD,wd), /* 3: ST506/ESDI/IDE disk */
wd 502 dev/ata/ata_wdc.c wddone(ata_bio->wd);
wd 527 dev/ata/ata_wdc.c wddone(ata_bio->wd);
wd 191 dev/ata/wd.c cdev_decl(wd);
wd 192 dev/ata/wd.c bdev_decl(wd);
wd 194 dev/ata/wd.c #define wdlock(wd) disk_lock(&(wd)->sc_dk)
wd 195 dev/ata/wd.c #define wdunlock(wd) disk_unlock(&(wd)->sc_dk)
wd 224 dev/ata/wd.c struct wd_softc *wd = (void *)self;
wd 231 dev/ata/wd.c wd->openings = aa_link->aa_openings;
wd 232 dev/ata/wd.c wd->drvp = aa_link->aa_drv_data;
wd 234 dev/ata/wd.c strlcpy(wd->drvp->drive_name, wd->sc_dev.dv_xname,
wd 235 dev/ata/wd.c sizeof(wd->drvp->drive_name));
wd 236 dev/ata/wd.c wd->drvp->cf_flags = wd->sc_dev.dv_cfdata->cf_flags;
wd 239 dev/ata/wd.c wd->drvp->n_dmaerrs = NERRS_MAX - 2;
wd 241 dev/ata/wd.c wd->drvp->n_dmaerrs = 0;
wd 244 dev/ata/wd.c if (wd_get_params(wd, at_poll, &wd->sc_params) != 0) {
wd 245 dev/ata/wd.c printf("%s: IDENTIFY failed\n", wd->sc_dev.dv_xname);
wd 249 dev/ata/wd.c for (blank = 0, p = wd->sc_params.atap_model, q = buf, i = 0;
wd 250 dev/ata/wd.c i < sizeof(wd->sc_params.atap_model); i++) {
wd 267 dev/ata/wd.c wdc_probe_caps(wd->drvp, &wd->sc_params);
wd 268 dev/ata/wd.c wdc_print_caps(wd->drvp);
wd 270 dev/ata/wd.c if ((wd->sc_params.atap_multi & 0xff) > 1) {
wd 271 dev/ata/wd.c wd->sc_multi = wd->sc_params.atap_multi & 0xff;
wd 273 dev/ata/wd.c wd->sc_multi = 1;
wd 276 dev/ata/wd.c printf("%s: %d-sector PIO,", wd->sc_dev.dv_xname, wd->sc_multi);
wd 280 dev/ata/wd.c if ((wd->sc_params.atap_cmd2_en & ATAPI_CMD2_48AD) != 0)
wd 281 dev/ata/wd.c wd->sc_flags |= WDF_LBA48;
wd 284 dev/ata/wd.c if ((wd->sc_params.atap_capabilities1 & WDC_CAP_LBA) != 0)
wd 285 dev/ata/wd.c wd->sc_flags |= WDF_LBA;
wd 288 dev/ata/wd.c if (wd->sc_params.atap_ataversion != 0xffff &&
wd 289 dev/ata/wd.c wd->sc_params.atap_ataversion >= WDC_VER_ATA4)
wd 290 dev/ata/wd.c wd->sc_flags |= WDF_LBA;
wd 293 dev/ata/wd.c if ((wd->sc_flags & WDF_LBA48) != 0) {
wd 294 dev/ata/wd.c wd->sc_capacity =
wd 295 dev/ata/wd.c (((u_int64_t)wd->sc_params.atap_max_lba[3] << 48) |
wd 296 dev/ata/wd.c ((u_int64_t)wd->sc_params.atap_max_lba[2] << 32) |
wd 297 dev/ata/wd.c ((u_int64_t)wd->sc_params.atap_max_lba[1] << 16) |
wd 298 dev/ata/wd.c (u_int64_t)wd->sc_params.atap_max_lba[0]);
wd 300 dev/ata/wd.c wd->sc_capacity / (1048576 / DEV_BSIZE),
wd 301 dev/ata/wd.c wd->sc_capacity);
wd 302 dev/ata/wd.c } else if ((wd->sc_flags & WDF_LBA) != 0) {
wd 303 dev/ata/wd.c wd->sc_capacity =
wd 304 dev/ata/wd.c (wd->sc_params.atap_capacity[1] << 16) |
wd 305 dev/ata/wd.c wd->sc_params.atap_capacity[0];
wd 307 dev/ata/wd.c wd->sc_capacity / (1048576 / DEV_BSIZE),
wd 308 dev/ata/wd.c wd->sc_capacity);
wd 310 dev/ata/wd.c wd->sc_capacity =
wd 311 dev/ata/wd.c wd->sc_params.atap_cylinders *
wd 312 dev/ata/wd.c wd->sc_params.atap_heads *
wd 313 dev/ata/wd.c wd->sc_params.atap_sectors;
wd 315 dev/ata/wd.c wd->sc_capacity / (1048576 / DEV_BSIZE),
wd 316 dev/ata/wd.c wd->sc_params.atap_cylinders,
wd 317 dev/ata/wd.c wd->sc_params.atap_heads,
wd 318 dev/ata/wd.c wd->sc_params.atap_sectors,
wd 319 dev/ata/wd.c wd->sc_capacity);
wd 322 dev/ata/wd.c self->dv_xname, wd->sc_params.atap_dmatiming_mimi,
wd 323 dev/ata/wd.c wd->sc_params.atap_dmatiming_recom), DEBUG_PROBE);
wd 337 dev/ata/wd.c if (wdc_exec_command(wd->drvp, &wdc_c) != WDC_COMPLETE) {
wd 339 dev/ata/wd.c wd->sc_dev.dv_xname);
wd 345 dev/ata/wd.c wd->sc_dk.dk_driver = &wddkdriver;
wd 346 dev/ata/wd.c wd->sc_dk.dk_name = wd->sc_dev.dv_xname;
wd 347 dev/ata/wd.c disk_attach(&wd->sc_dk);
wd 348 dev/ata/wd.c wd->sc_wdc_bio.lp = wd->sc_dk.dk_label;
wd 349 dev/ata/wd.c wd->sc_sdhook = shutdownhook_establish(wd_shutdown, wd);
wd 350 dev/ata/wd.c if (wd->sc_sdhook == NULL)
wd 352 dev/ata/wd.c wd->sc_dev.dv_xname);
wd 353 dev/ata/wd.c timeout_set(&wd->sc_restart_timeout, wdrestart, wd);
wd 418 dev/ata/wd.c struct wd_softc *wd;
wd 421 dev/ata/wd.c wd = wdlookup(DISKUNIT(bp->b_dev));
wd 422 dev/ata/wd.c if (wd == NULL) {
wd 427 dev/ata/wd.c WDCDEBUG_PRINT(("wdstrategy (%s)\n", wd->sc_dev.dv_xname),
wd 432 dev/ata/wd.c (bp->b_bcount % wd->sc_dk.dk_label->d_secsize) != 0 ||
wd 433 dev/ata/wd.c (bp->b_bcount / wd->sc_dk.dk_label->d_secsize) >= (1 << NBBY)) {
wd 439 dev/ata/wd.c if ((wd->sc_flags & WDF_LOADED) == 0) {
wd 453 dev/ata/wd.c bounds_check_with_label(bp, wd->sc_dk.dk_label,
wd 454 dev/ata/wd.c (wd->sc_flags & (WDF_WLABEL|WDF_LABELLING)) != 0) <= 0)
wd 458 dev/ata/wd.c disksort(&wd->sc_q, bp);
wd 459 dev/ata/wd.c wdstart(wd);
wd 461 dev/ata/wd.c device_unref(&wd->sc_dev);
wd 471 dev/ata/wd.c if (wd != NULL)
wd 472 dev/ata/wd.c device_unref(&wd->sc_dev);
wd 481 dev/ata/wd.c struct wd_softc *wd = arg;
wd 484 dev/ata/wd.c WDCDEBUG_PRINT(("wdstart %s\n", wd->sc_dev.dv_xname),
wd 486 dev/ata/wd.c while (wd->openings > 0) {
wd 489 dev/ata/wd.c dp = &wd->sc_q;
wd 497 dev/ata/wd.c wd->openings--;
wd 499 dev/ata/wd.c wd->retries = 0;
wd 500 dev/ata/wd.c __wdstart(wd, bp);
wd 505 dev/ata/wd.c __wdstart(struct wd_softc *wd, struct buf *bp)
wd 509 dev/ata/wd.c wd->sc_wdc_bio.blkno = bp->b_blkno +
wd 510 dev/ata/wd.c DL_GETPOFFSET(&wd->sc_dk.dk_label->d_partitions[DISKPART(bp->b_dev)]);
wd 511 dev/ata/wd.c wd->sc_wdc_bio.blkno /= (wd->sc_dk.dk_label->d_secsize / DEV_BSIZE);
wd 512 dev/ata/wd.c wd->sc_wdc_bio.blkdone =0;
wd 513 dev/ata/wd.c wd->sc_bp = bp;
wd 519 dev/ata/wd.c if (wd->sc_multi == 1 || wd->retries >= WDIORETRIES_SINGLE)
wd 520 dev/ata/wd.c wd->sc_wdc_bio.flags = ATA_SINGLE;
wd 522 dev/ata/wd.c wd->sc_wdc_bio.flags = 0;
wd 523 dev/ata/wd.c nblks = bp->b_bcount / wd->sc_dk.dk_label->d_secsize;
wd 524 dev/ata/wd.c if ((wd->sc_flags & WDF_LBA48) &&
wd 526 dev/ata/wd.c ((wd->sc_wdc_bio.blkno + nblks - 1 > LBA48_THRESHOLD) ||
wd 528 dev/ata/wd.c wd->sc_wdc_bio.flags |= ATA_LBA48;
wd 529 dev/ata/wd.c if (wd->sc_flags & WDF_LBA)
wd 530 dev/ata/wd.c wd->sc_wdc_bio.flags |= ATA_LBA;
wd 532 dev/ata/wd.c wd->sc_wdc_bio.flags |= ATA_READ;
wd 533 dev/ata/wd.c wd->sc_wdc_bio.bcount = bp->b_bcount;
wd 534 dev/ata/wd.c wd->sc_wdc_bio.databuf = bp->b_data;
wd 535 dev/ata/wd.c wd->sc_wdc_bio.wd = wd;
wd 537 dev/ata/wd.c disk_busy(&wd->sc_dk);
wd 538 dev/ata/wd.c switch (wdc_ata_bio(wd->drvp, &wd->sc_wdc_bio)) {
wd 540 dev/ata/wd.c timeout_add(&wd->sc_restart_timeout, hz);
wd 550 dev/ata/wd.c if (wd->sc_wdc_bio.flags & ATA_POLL)
wd 551 dev/ata/wd.c wddone(wd);
wd 562 dev/ata/wd.c struct wd_softc *wd = v;
wd 563 dev/ata/wd.c struct buf *bp = wd->sc_bp;
wd 565 dev/ata/wd.c WDCDEBUG_PRINT(("wddone %s\n", wd->sc_dev.dv_xname),
wd 568 dev/ata/wd.c bp->b_resid = wd->sc_wdc_bio.bcount;
wd 570 dev/ata/wd.c switch (wd->sc_wdc_bio.error) {
wd 586 dev/ata/wd.c if (wd->sc_wdc_bio.r_error != 0 &&
wd 587 dev/ata/wd.c (wd->sc_wdc_bio.r_error & ~(WDCE_MC | WDCE_MCR)) == 0)
wd 589 dev/ata/wd.c ata_perror(wd->drvp, wd->sc_wdc_bio.r_error, errbuf,
wd 593 dev/ata/wd.c wdc_reset_channel(wd->drvp);
wd 595 dev/ata/wd.c wd->sc_wdc_bio.blkdone, wd->sc_dk.dk_label);
wd 596 dev/ata/wd.c if (wd->retries++ < WDIORETRIES) {
wd 598 dev/ata/wd.c timeout_add(&wd->sc_restart_timeout, RECOVERYTIME);
wd 606 dev/ata/wd.c noerror: if ((wd->sc_wdc_bio.flags & ATA_CORR) || wd->retries > 0)
wd 608 dev/ata/wd.c wd->sc_dev.dv_xname);
wd 610 dev/ata/wd.c disk_unbusy(&wd->sc_dk, (bp->b_bcount - bp->b_resid),
wd 613 dev/ata/wd.c wd->openings++;
wd 614 dev/ata/wd.c wdstart(wd);
wd 620 dev/ata/wd.c struct wd_softc *wd = v;
wd 621 dev/ata/wd.c struct buf *bp = wd->sc_bp;
wd 623 dev/ata/wd.c WDCDEBUG_PRINT(("wdrestart %s\n", wd->sc_dev.dv_xname),
wd 627 dev/ata/wd.c disk_unbusy(&wd->sc_dk, 0, (bp->b_flags & B_READ));
wd 651 dev/ata/wd.c struct wd_softc *wd;
wd 658 dev/ata/wd.c wd = wdlookup(unit);
wd 659 dev/ata/wd.c if (wd == NULL)
wd 666 dev/ata/wd.c if ((error = wdlock(wd)) != 0)
wd 669 dev/ata/wd.c if (wd->sc_dk.dk_openmask != 0) {
wd 674 dev/ata/wd.c if ((wd->sc_flags & WDF_LOADED) == 0) {
wd 679 dev/ata/wd.c if ((wd->sc_flags & WDF_LOADED) == 0) {
wd 680 dev/ata/wd.c wd->sc_flags |= WDF_LOADED;
wd 683 dev/ata/wd.c wd_get_params(wd, AT_WAIT, &wd->sc_params);
wd 686 dev/ata/wd.c wdgetdisklabel(dev, wd, wd->sc_dk.dk_label, 0);
wd 694 dev/ata/wd.c (part >= wd->sc_dk.dk_label->d_npartitions ||
wd 695 dev/ata/wd.c wd->sc_dk.dk_label->d_partitions[part].p_fstype == FS_UNUSED)) {
wd 703 dev/ata/wd.c wd->sc_dk.dk_copenmask |= (1 << part);
wd 706 dev/ata/wd.c wd->sc_dk.dk_bopenmask |= (1 << part);
wd 709 dev/ata/wd.c wd->sc_dk.dk_openmask =
wd 710 dev/ata/wd.c wd->sc_dk.dk_copenmask | wd->sc_dk.dk_bopenmask;
wd 712 dev/ata/wd.c wdunlock(wd);
wd 713 dev/ata/wd.c device_unref(&wd->sc_dev);
wd 717 dev/ata/wd.c if (wd->sc_dk.dk_openmask == 0) {
wd 721 dev/ata/wd.c wdunlock(wd);
wd 723 dev/ata/wd.c device_unref(&wd->sc_dev);
wd 730 dev/ata/wd.c struct wd_softc *wd;
wd 734 dev/ata/wd.c wd = wdlookup(DISKUNIT(dev));
wd 735 dev/ata/wd.c if (wd == NULL)
wd 739 dev/ata/wd.c if ((error = wdlock(wd)) != 0)
wd 744 dev/ata/wd.c wd->sc_dk.dk_copenmask &= ~(1 << part);
wd 747 dev/ata/wd.c wd->sc_dk.dk_bopenmask &= ~(1 << part);
wd 750 dev/ata/wd.c wd->sc_dk.dk_openmask =
wd 751 dev/ata/wd.c wd->sc_dk.dk_copenmask | wd->sc_dk.dk_bopenmask;
wd 753 dev/ata/wd.c if (wd->sc_dk.dk_openmask == 0) {
wd 754 dev/ata/wd.c wd_flushcache(wd, 0);
wd 758 dev/ata/wd.c wdunlock(wd);
wd 761 dev/ata/wd.c device_unref(&wd->sc_dev);
wd 766 dev/ata/wd.c wdgetdefaultlabel(struct wd_softc *wd, struct disklabel *lp)
wd 772 dev/ata/wd.c DL_SETDSIZE(lp, wd->sc_capacity);
wd 773 dev/ata/wd.c lp->d_ntracks = wd->sc_params.atap_heads;
wd 774 dev/ata/wd.c lp->d_nsectors = wd->sc_params.atap_sectors;
wd 777 dev/ata/wd.c if (wd->drvp->ata_vers == -1) {
wd 785 dev/ata/wd.c strncpy(lp->d_packname, wd->sc_params.atap_model, sizeof lp->d_packname);
wd 800 dev/ata/wd.c wdgetdisklabel(dev_t dev, struct wd_softc *wd, struct disklabel *lp,
wd 807 dev/ata/wd.c wdgetdefaultlabel(wd, lp);
wd 809 dev/ata/wd.c if (wd->drvp->state > RECAL)
wd 810 dev/ata/wd.c wd->drvp->drive_flags |= DRIVE_RESET;
wd 813 dev/ata/wd.c if (wd->drvp->state > RECAL)
wd 814 dev/ata/wd.c wd->drvp->drive_flags |= DRIVE_RESET;
wd 823 dev/ata/wd.c struct wd_softc *wd;
wd 829 dev/ata/wd.c wd = wdlookup(DISKUNIT(dev));
wd 830 dev/ata/wd.c if (wd == NULL)
wd 833 dev/ata/wd.c if ((wd->sc_flags & WDF_LOADED) == 0) {
wd 841 dev/ata/wd.c wdgetdisklabel(dev, wd, lp, 0);
wd 842 dev/ata/wd.c bcopy(lp, wd->sc_dk.dk_label, sizeof(*lp));
wd 847 dev/ata/wd.c wdgetdisklabel(dev, wd, (struct disklabel *)addr, 1);
wd 851 dev/ata/wd.c *(struct disklabel *)addr = *(wd->sc_dk.dk_label);
wd 855 dev/ata/wd.c ((struct partinfo *)addr)->disklab = wd->sc_dk.dk_label;
wd 857 dev/ata/wd.c &wd->sc_dk.dk_label->d_partitions[DISKPART(dev)];
wd 867 dev/ata/wd.c if ((error = wdlock(wd)) != 0)
wd 869 dev/ata/wd.c wd->sc_flags |= WDF_LABELLING;
wd 871 dev/ata/wd.c error = setdisklabel(wd->sc_dk.dk_label,
wd 874 dev/ata/wd.c if (wd->drvp->state > RECAL)
wd 875 dev/ata/wd.c wd->drvp->drive_flags |= DRIVE_RESET;
wd 878 dev/ata/wd.c wdstrategy, wd->sc_dk.dk_label);
wd 881 dev/ata/wd.c wd->sc_flags &= ~WDF_LABELLING;
wd 882 dev/ata/wd.c wdunlock(wd);
wd 892 dev/ata/wd.c wd->sc_flags |= WDF_WLABEL;
wd 894 dev/ata/wd.c wd->sc_flags &= ~WDF_WLABEL;
wd 914 dev/ata/wd.c fop->df_startblk * wd->sc_dk.dk_label->d_secsize;
wd 926 dev/ata/wd.c error = wdc_ioctl(wd->drvp, xfer, addr, flag, p);
wd 935 dev/ata/wd.c device_unref(&wd->sc_dev);
wd 952 dev/ata/wd.c struct wd_softc *wd;
wd 958 dev/ata/wd.c wd = wdlookup(DISKUNIT(dev));
wd 959 dev/ata/wd.c if (wd == NULL)
wd 963 dev/ata/wd.c omask = wd->sc_dk.dk_openmask & (1 << part);
wd 970 dev/ata/wd.c size = DL_GETPSIZE(&wd->sc_dk.dk_label->d_partitions[part]) *
wd 971 dev/ata/wd.c (wd->sc_dk.dk_label->d_secsize / DEV_BSIZE);
wd 976 dev/ata/wd.c device_unref(&wd->sc_dev);
wd 991 dev/ata/wd.c struct wd_softc *wd; /* disk unit to do the I/O */
wd 1004 dev/ata/wd.c wd = wdlookup(unit);
wd 1005 dev/ata/wd.c if (wd == NULL)
wd 1011 dev/ata/wd.c if (wd->drvp->state < READY)
wd 1015 dev/ata/wd.c lp = wd->sc_dk.dk_label;
wd 1030 dev/ata/wd.c wddumpmulti = wd->sc_multi;
wd 1032 dev/ata/wd.c wd->drvp->state = RECAL;
wd 1037 dev/ata/wd.c wd->sc_wdc_bio.blkno = blkno;
wd 1038 dev/ata/wd.c wd->sc_wdc_bio.flags = ATA_POLL;
wd 1040 dev/ata/wd.c wd->sc_wdc_bio.flags |= ATA_SINGLE;
wd 1041 dev/ata/wd.c if (wd->sc_flags & WDF_LBA48)
wd 1042 dev/ata/wd.c wd->sc_wdc_bio.flags |= ATA_LBA48;
wd 1043 dev/ata/wd.c if (wd->sc_flags & WDF_LBA)
wd 1044 dev/ata/wd.c wd->sc_wdc_bio.flags |= ATA_LBA;
wd 1045 dev/ata/wd.c wd->sc_wdc_bio.bcount =
wd 1047 dev/ata/wd.c wd->sc_wdc_bio.databuf = va;
wd 1048 dev/ata/wd.c wd->sc_wdc_bio.wd = wd;
wd 1050 dev/ata/wd.c switch (wdc_ata_bio(wd->drvp, &wd->sc_wdc_bio)) {
wd 1060 dev/ata/wd.c switch(wd->sc_wdc_bio.error) {
wd 1075 dev/ata/wd.c ata_perror(wd->drvp, wd->sc_wdc_bio.r_error, errbuf,
wd 1113 dev/ata/wd.c wd_get_params(struct wd_softc *wd, u_int8_t flags, struct ataparams *params)
wd 1115 dev/ata/wd.c switch (ata_get_params(wd->drvp, flags, params)) {
wd 1120 dev/ata/wd.c if (wd->sc_params.atap_cylinders != 0) {
wd 1121 dev/ata/wd.c if (params != &wd->sc_params)
wd 1122 dev/ata/wd.c bcopy(&wd->sc_params, params,
wd 1140 dev/ata/wd.c wd->drvp->ata_vers = -1; /* Mark it as pre-ATA */
wd 1151 dev/ata/wd.c wd_flushcache(struct wd_softc *wd, int flags)
wd 1155 dev/ata/wd.c if (wd->drvp->ata_vers < 4) /* WDCC_FLUSHCACHE is here since ATA-4 */
wd 1158 dev/ata/wd.c wdc_c.r_command = (wd->sc_flags & WDF_LBA48 ? WDCC_FLUSHCACHE_EXT :
wd 1168 dev/ata/wd.c if (wdc_exec_command(wd->drvp, &wdc_c) != WDC_COMPLETE) {
wd 1170 dev/ata/wd.c wd->sc_dev.dv_xname);
wd 1174 dev/ata/wd.c wd->sc_dev.dv_xname);
wd 1178 dev/ata/wd.c wd->sc_dev.dv_xname);
wd 1190 dev/ata/wd.c struct wd_softc *wd = arg;
wd 1191 dev/ata/wd.c wd_flushcache(wd, AT_POLL);
wd 66 dev/ata/wdvar.h struct wd_softc *wd;
wd 325 dev/pci/eap.c eap1371_ready_codec(struct eap_softc *sc, u_int8_t a, u_int32_t wd)
wd 363 dev/pci/eap.c EWRITE4(sc, E1371_CODEC, wd);
wd 756 scsi/ss.c } wd;
wd 757 scsi/ss.c #define window_data wd.window_data
wd 758 scsi/ss.c #define vendor_unique wd.vendor_unique
wd 858 scsi/ss.c &window_cmd, (void *)&wd));
wd 863 scsi/ss.c sizeof(window_cmd), (u_char *) &wd.window_data,