Hello.
Atsushi Nemoto wrote:
+static int tx4939ide_dma_test_irq(ide_drive_t *drive)
+{
+ ide_hwif_t *hwif = HWIF(drive);
+ void __iomem *base = TX4939IDE_BASE(hwif);
+ u16 ctl = tx4939ide_readw(base, TX4939IDE_int_ctl);
+ u8 dma_stat, stat;
+ u16 ide_int;
+ int found = 0;
+
+ tx4939ide_check_error_ints(hwif, ctl);
+ ide_int = ctl & (TX4939IDE_INT_XFEREND | TX4939IDE_INT_HOST);
Well, since you're effectively ignoring the BUSERR interrupt, there's
no point in enabling it...
The BUSERR is not ignored. tx4939ide_check_error_ints() will print a
message. It would be better than just ignoring.
I mean you're not accounting it as an interrupt. It will be reported
anyway when the dma_timeout() method will call this method on timeout... ah,
it wouldn't be called in this case since dma_time_expiry() will most probably
return -1 seeing bit 1 of DMA status register set. You're right then...
---
Atsushi Nemoto
MBR, Sergei
|