Lines Matching refs:drvp

600 	struct ata_drive_datas *drvp = cp->ata_channel.ch_drive;  in piix_setup_channel()  local
620 if ((drvp[0].drive_flags & ATA_DRIVE_DMA) && in piix_setup_channel()
621 (drvp[1].drive_flags & ATA_DRIVE_DMA)) { in piix_setup_channel()
623 uimin(drvp[0].DMA_mode, drvp[1].DMA_mode); in piix_setup_channel()
624 drvp[0].DMA_mode = mode[0]; in piix_setup_channel()
625 drvp[1].DMA_mode = mode[1]; in piix_setup_channel()
632 if (drvp[0].drive_flags & ATA_DRIVE_DMA) { in piix_setup_channel()
633 mode[0] = drvp[0].DMA_mode; in piix_setup_channel()
634 mode[1] = drvp[1].PIO_mode; in piix_setup_channel()
637 mode[1] = drvp[1].PIO_mode = 0; in piix_setup_channel()
640 if (drvp[1].drive_flags & ATA_DRIVE_DMA) { in piix_setup_channel()
641 mode[1] = drvp[1].DMA_mode; in piix_setup_channel()
642 mode[0] = drvp[0].PIO_mode; in piix_setup_channel()
645 mode[0] = drvp[0].PIO_mode = 0; in piix_setup_channel()
652 if (drvp[0].PIO_mode < 2) { in piix_setup_channel()
653 mode[0] = drvp[0].PIO_mode = 0; in piix_setup_channel()
654 mode[1] = drvp[1].PIO_mode; in piix_setup_channel()
655 } else if (drvp[1].PIO_mode < 2) { in piix_setup_channel()
656 mode[1] = drvp[1].PIO_mode = 0; in piix_setup_channel()
657 mode[0] = drvp[0].PIO_mode; in piix_setup_channel()
660 uimin(drvp[1].PIO_mode, drvp[0].PIO_mode); in piix_setup_channel()
661 drvp[0].PIO_mode = mode[0]; in piix_setup_channel()
662 drvp[1].PIO_mode = mode[1]; in piix_setup_channel()
666 if (drvp[drive].drive_flags & ATA_DRIVE_DMA) { in piix_setup_channel()
685 if (drvp[drive].drive_type == ATA_DRIVET_NONE) in piix_setup_channel()
687 idetim |= piix_setup_idetim_drvs(&drvp[drive]); in piix_setup_channel()
688 if (drvp[drive].drive_flags & ATA_DRIVE_DMA) in piix_setup_channel()
702 struct ata_drive_datas *drvp; in piix3_4_setup_channel() local
728 drvp = &chp->ch_drive[drive]; in piix3_4_setup_channel()
730 if (drvp->drive_type == ATA_DRIVET_NONE) in piix3_4_setup_channel()
732 if (((drvp->drive_flags & ATA_DRIVE_DMA) == 0 && in piix3_4_setup_channel()
733 (drvp->drive_flags & ATA_DRIVE_UDMA) == 0)) in piix3_4_setup_channel()
763 if (drvp->UDMA_mode > 2 && in piix3_4_setup_channel()
765 drvp->UDMA_mode = 2; in piix3_4_setup_channel()
766 if (drvp->UDMA_mode > 4) { in piix3_4_setup_channel()
770 if (drvp->UDMA_mode > 2) { in piix3_4_setup_channel()
781 if (drvp->UDMA_mode > 2 && in piix3_4_setup_channel()
783 drvp->UDMA_mode = 2; in piix3_4_setup_channel()
784 if (drvp->UDMA_mode > 2) in piix3_4_setup_channel()
790 (drvp->drive_flags & ATA_DRIVE_UDMA)) { in piix3_4_setup_channel()
793 drvp->drive_flags &= ~ATA_DRIVE_DMA; in piix3_4_setup_channel()
797 piix4_sct_udma[drvp->UDMA_mode], channel, drive); in piix3_4_setup_channel()
801 drvp->drive_flags &= ~ATA_DRIVE_UDMA; in piix3_4_setup_channel()
805 drvp->DMA_mode, 1, channel); in piix3_4_setup_channel()
808 drvp->DMA_mode, 1, channel); in piix3_4_setup_channel()
816 idetim |= piix_setup_idetim_drvs(drvp); in piix3_4_setup_channel()
819 drvp->PIO_mode, 0, channel); in piix3_4_setup_channel()
822 drvp->PIO_mode, 0, channel); in piix3_4_setup_channel()
858 piix_setup_idetim_drvs(struct ata_drive_datas *drvp) in piix_setup_idetim_drvs() argument
861 struct ata_channel *chp = drvp->chnl_softc; in piix_setup_idetim_drvs()
863 u_int8_t drive = drvp->drive; in piix_setup_idetim_drvs()
869 if (drvp->drive_flags & ATA_DRIVE_DMA) { in piix_setup_idetim_drvs()
871 if ((drvp->drive_flags & ATA_DRIVE_DMA) && in piix_setup_idetim_drvs()
872 drvp->DMA_mode == 0) { in piix_setup_idetim_drvs()
873 drvp->PIO_mode = 0; in piix_setup_idetim_drvs()
881 if ((piix_isp_pio[drvp->PIO_mode] != in piix_setup_idetim_drvs()
882 piix_isp_dma[drvp->DMA_mode]) || in piix_setup_idetim_drvs()
883 (piix_rtc_pio[drvp->PIO_mode] != in piix_setup_idetim_drvs()
884 piix_rtc_dma[drvp->DMA_mode])) in piix_setup_idetim_drvs()
885 drvp->PIO_mode = 0; in piix_setup_idetim_drvs()
887 if (drvp->PIO_mode <= 2) { in piix_setup_idetim_drvs()
900 if (drvp->PIO_mode < 2) in piix_setup_idetim_drvs()
904 if (drvp->PIO_mode >= 3) { in piix_setup_idetim_drvs()