[lkml]   [2003]   [Jul]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Problems related to DMA or DDR memory on Intel 845 chipset?
"Kathy Frazier" <> writes:

> Sorry for the confusion! My driver sets up our device for a DMA (address
> and length) and then gives the command
> for the DMA to start. Once the device has completed the transfer, it
> asserts its interrupt, the driver clears it and proceeds to set up the next
> data transfer. It runs for awhile, but then eventually hangs (I don't get
> interrupts and neither does anything else - keyboard, ethernet, etc). I
> simply added debug to do_IRQ in the kernel to track the desired IRQ. I also
> added a routine to read the 8259 Interrupt Controller Registers when
> requested. Then I had a user app and driver which simply called this new
> new routine in the kernel to return the status of the 8259 and the debug
> counters I added to do_IRQ. Once the system failed, this debug information
> showed that not only was Linux NOT receiving the interrupt, but neither was
> the 8259. When I changed my driver to poll the device for DMA completion
> instead of rely on an interrupt, it still locked up.

I understand this is your device doing DMA (= access) - i.e. your
PCI card is transfering to/from system RAM? This has nothing to do with
any UDMA and it works with any Linux kernel and system hardware which
support PCI.

Are you using some standard PCI bridge by chance? Are you sure it isn't
a hardware (design or manufacturing) problem with the device (bridge)?
How do you check interrupt request state?
Krzysztof Halasa
Network Administrator
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:47    [W:0.057 / U:7.740 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site