Source-Changes archive

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

Re: CVS commit: src/sys/dev/ieee1394



In article <20060430.234145.28792723.kiyohara%kk.iij4u.or.jp@localhost>
kiyohara%kk.iij4u.or.jp@localhost wrote:

> The ieee1394 driver's DMA descriptor cannot be operated if it is not a
> memory of coherent now.  This is because processing that rewrites
> descriptor without stopping DMA under operation is done. 
> 
> In that case, ieee1394 today will not be able to be used.  Is there
> something any idea?

I don't think it's an ieee1394 specific problem because
many other drivers (SCSI, Ethernet) notify DMA xfer completion
via DMA descriptors. How does BUS_DMA_COHERENT
(i.e. uncached DMA descriptor) help in your ieee1394 case?

I guess it might prevent some race condition on DMA descs
which require read-modified-write ops in some case,
but it's still worth to call bus_dmamap_sync()
before and after CPU accesses to descriptors,
i.e. is there any benefits by removing sync ops?
---
Izumi Tsutsui



Home | Main Index | Thread Index | Old Index