> > iowrite8(tf->command, ap->ioaddr.command_addr); > > if (tf->flags & ATA_TFLAG_DEVICE) > > iowrite8(tf->device & ~ATA_DEV1, ap->ioaddr.device_addr); > > > > Note that this possibly violates ATA specs that forbid writing to any > register with BSY set -- which might well be after wroiting a command, > despite 400 ns couldn't have passed yet. IOW, I don't advice such > trickery -- your write may well be ignored. As far as I can make out from the discussion of the device that write goes to the magic hardware and puts it back into normal ATA mode not to the device. I guess it may be going to both though. Wacky hacks for wacky hardware -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html