Lines Matching refs:adev
93 static void cmd64x_set_timing(struct ata_port *ap, struct ata_device *adev, u8 mode) in cmd64x_set_timing() argument
112 int arttim = arttim_port[ap->port_no][adev->devno]; in cmd64x_set_timing()
113 int drwtim = drwtim_port[ap->port_no][adev->devno]; in cmd64x_set_timing()
117 if (ata_timing_compute(adev, mode, &t, T, 0) < 0) { in cmd64x_set_timing()
123 struct ata_device *pair = ata_dev_pair(adev); in cmd64x_set_timing()
177 static void cmd64x_set_piomode(struct ata_port *ap, struct ata_device *adev) in cmd64x_set_piomode() argument
179 cmd64x_set_timing(ap, adev, adev->pio_mode); in cmd64x_set_piomode()
190 static void cmd64x_set_dmamode(struct ata_port *ap, struct ata_device *adev) in cmd64x_set_dmamode() argument
201 int shift = 2 * adev->devno; in cmd64x_set_dmamode()
207 regD &= ~(0x20 << adev->devno); in cmd64x_set_dmamode()
211 regU &= ~(0x05 << adev->devno); in cmd64x_set_dmamode()
213 if (adev->dma_mode >= XFER_UDMA_0) { in cmd64x_set_dmamode()
215 regU |= udma_data[adev->dma_mode - XFER_UDMA_0] << shift; in cmd64x_set_dmamode()
217 regU |= 1 << adev->devno; /* UDMA on */ in cmd64x_set_dmamode()
218 if (adev->dma_mode > XFER_UDMA_2) /* 15nS timing */ in cmd64x_set_dmamode()
219 regU |= 4 << adev->devno; in cmd64x_set_dmamode()
221 regU &= ~ (1 << adev->devno); /* UDMA off */ in cmd64x_set_dmamode()
222 cmd64x_set_timing(ap, adev, adev->dma_mode); in cmd64x_set_dmamode()
225 regD |= 0x20 << adev->devno; in cmd64x_set_dmamode()