Пример #1
0
static void hpt3x3_freeze(struct ata_port *ap)
{
	void __iomem *mmio = ap->ioaddr.bmdma_addr;

	iowrite8(ioread8(mmio + ATA_DMA_CMD) & ~ ATA_DMA_START,
			mmio + ATA_DMA_CMD);
	ata_sff_dma_pause(ap);
	ata_sff_freeze(ap);
}
Пример #2
0
static inline void rb532_pata_finish_io(struct ata_port *ap)
{
	struct ata_host *ah = ap->host;
	struct rb532_cf_info *info = ah->private_data;

	/* FIXME: Keep previous delay. If this is merely a fence then
	   ata_sff_sync might be sufficient. */
	ata_sff_dma_pause(ap);
	ndelay(RB500_CF_IO_DELAY);
}
Пример #3
0
static inline void rb153_pata_finish_io(struct ata_port *ap)
{
	struct rb153_cf_info *info = ap->host->private_data;

	/* FIXME: Keep previous delay. If this is merely a fence then
	 * ata_sff_sync might be sufficient. */
	ata_sff_dma_pause(ap);
	ndelay(RB153_CF_IO_DELAY);

	set_irq_type(info->irq, IRQ_TYPE_LEVEL_HIGH);
}