qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] SPARC iommu mapping


From: Blue Swirl
Subject: Re: [Qemu-devel] SPARC iommu mapping
Date: Fri, 07 Apr 2006 17:44:00 +0200

Thank you for the excellent analysis of the problem! Looks like Qemu doesn't handle the case where DMA length and SCSI length are not equal.

Until here, the addresses are subsequent. Then the next address is much lower:

So Linux splits the transfer into two parts to use two separate pieces of buffers. Funny, I thought this situation was exactly the one which virtually addressed DMA would prevent from happening.

What is expected, when the number of bytes from the transfer register have
been read? Should the hardware raise an interrupt? And if yes, which flags
must be set?

Yes, there will be an interrupt. I didn't find this situation in the NCR53C9X.txt file documenting the ESP, though.

There are two cases:
1 - DMA length shorter than SCSI (your case)
2 - SCSI length shorter (could happen in command replies etc.)

Maybe this patch helps?

_________________________________________________________________
Don't just search. Find. Check out the new MSN Search! http://search.msn.com/

Attachment: qemu-sparc.patch-52.bz2
Description: Binary data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]