/* Apply the timings of the proper unit (master/slave) to the shared timing register when selecting that unit. This version is for ASICs with a dual timing register (Kauai)  */
static void pmac_ide_kauai_apply_timings(ide_drive_t *drive)
/* Apply the timings of the proper unit (master/slave) to the shared timing register when selecting that unit. This version is for ASICs with a dual timing register (Kauai)  */
static void pmac_ide_kauai_apply_timings(ide_drive_t *drive)
{
	ide_hwif_t *hwif = drive->hwif;
	pmac_ide_hwif_t *pmif =
		(pmac_ide_hwif_t *)dev_get_drvdata(hwif->gendev.parent);
	if (drive->dn & 1) {
		writel(pmif->timings[1], PMAC_IDE_REG(IDE_KAUAI_PIO_CONFIG));
		writel(pmif->timings[3], PMAC_IDE_REG(IDE_KAUAI_ULTRA_CONFIG));
	} else {
		writel(pmif->timings[0], PMAC_IDE_REG(IDE_KAUAI_PIO_CONFIG));
		writel(pmif->timings[2], PMAC_IDE_REG(IDE_KAUAI_ULTRA_CONFIG));
	}
	(void)readl(PMAC_IDE_REG(IDE_KAUAI_PIO_CONFIG));
}