Subject: Re: BUS_DMA_CONTROLDATA flag for bus_dma(9)
To: None <cgd@broadcom.com>
From: Allen Briggs <briggs@wasabisystems.com>
List: tech-kern
Date: 08/14/2003 21:24:53
On Thu, Aug 14, 2003 at 03:28:21PM -0700, cgd@broadcom.com wrote:
> At Thu, 14 Aug 2003 18:01:40 -0400, Allen Briggs wrote:
> > debugging uses and for other situations where you may just really
> > want totally uncached access.
> Like? 8-)
I suppose the clearest idea I had (other than debugging coherency
questions), was in working with some device that isn't coherent, but
is still making direct accesses to shared memory. Still murky. Sorry.
> "uncached" and "coherent" are *not* synonymous, but you keep using
> them as if they are.
True. I apologize for being sloppy about that. I was also unaware
that uncached accesses might not be possible on some ports. Thank
you for enlightening me.
I guess what I was really thinking was that if I mapped a region as
BUS_DMA_COHERENT (and if that flag were known to be implemented on
a given port), it wouldn't require bus_dmamap_sync() in order to
enforce the coherency. The current interface says that I shouldn't
assume that, but is that just because it's defined to be a hint?
> Re: Making COHERENT required: yes. I think this has to be done; I
> think the existing specification is defective.
I'm thinking that I agree with you, but I'm not quite clear on how
BUS_DMA_COHERENT should be defined in this case.
> > Does that make more sense?
> Well, half of it. 8-)
Half sense is better than no sense. Full sense is, of course, better.
-allen
--
Allen Briggs briggs@wasabisystems.com
Wasabi Systems, Inc. http://www.wasabisystems.com/