![]() | |||||||||||||
Messages in this thread |
Tejun Heo wrote:
> Hello, Mikael.
>
> Thanks for doing this.
>
> Mikael Pettersson wrote:
> [--snip--]
>> +static void pdc_freeze(struct ata_port *ap)
>> +{
>> + void __iomem *mmio = (void __iomem *) ap->ioaddr.cmd_addr;
>> + u32 tmp;
>> +
>> + tmp = readl(mmio + PDC_CTLSTAT);
>> + tmp |= PDC_IRQ_DISABLE;
>> + tmp &= ~PDC_DMA_ENABLE;
>> + writel(tmp, mmio + PDC_CTLSTAT);
>> + readl(mmio + PDC_CTLSTAT); /* flush *//* XXX: needed? sata_sil does this */
>
> Just drop the above line.
>
>> +}
>> +
>> +static void pdc_thaw(struct ata_port *ap)
>> +{
>> + void __iomem *mmio = (void __iomem *) ap->ioaddr.cmd_addr;
>> + u32 tmp;
>> +
>> + /* clear IRQ */
>> + readl(mmio + PDC_INT_SEQMASK);
>> +
>> + /* turn IRQ back on */
>> + tmp = readl(mmio + PDC_CTLSTAT);
>> + tmp &= ~PDC_IRQ_DISABLE;
>> + writel(tmp, mmio + PDC_CTLSTAT);
>> + readl(mmio + PDC_CTLSTAT); /* flush *//* XXX: needed? */
>
> Ditto.
Why do you think these flushes are not needed?
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
| ||||||||||||
| Last update: 2006-12-03 13:07 [from the cache] ©2003-2008 | |||||||||||||