PAT_WRITE_COMBINING: how to use?
- From: Andrew Gallatin <gallatin@xxxxxxxxxxx>
- Date: Tue, 29 May 2007 12:04:34 -0400 (EDT)
I would very much like to obtain a write-combine mapping of PCIe
device memory for mxge(4) without depending on the flakiness of MTRRs.
I currently use bus_alloc_resource() to map my device's memory space,
and then use mem_range_attr_set() to attempt to change the memory to
be write-combine.
I recently noticed that pmap_mapdev_attr() function on amd64 & i386,
but it looks like nexus_activate_resource() just calls pmap_mapdev(),
which defaults to PAT_UNCACHEABLE. Would it be possible to add a
flag which could tell the bus_* functions to map the memory
write-combine?
Or should I avoid bus_alloc_resource(), and map my device myself with
pmap_mapdev_attr()?
Or should I replace my call to mem_range_attr_set() with a call to
pmap_change_attr?
Thanks,
Drew
_______________________________________________
freebsd-current@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@xxxxxxxxxxx"
- Prev by Date: Re: Using Subversion for binary distribution?
- Next by Date: Re: Intel 82845G / AGP / 7.0-CURRENT
- Previous by thread: /bin/df strangeness
- Next by thread: WITHOUT_PROFILE no longer honored?
- Index(es):
Relevant Pages
- Re: Write-Combine memory
... Allocate one or more pages of memory, marked as Write-Combine, and use ...
Cache is not updated on cache misses. ... Do it the Windows way, and allocate private memory
for the array. ... (borland.public.delphi.language.basm) - Re: Write-Combine memory
... But you should be able to mark a page of memory as such. ... Allocate
one or more pages of memory, marked as Write-Combine, and use ... Cache is not updated
on cache misses. ... (borland.public.delphi.language.basm) - Re: Write-Combine memory
... But you should be able to mark a page of memory as such. ... Allocate
one or more pages of memory, marked as Write-Combine, and use ... Cache is not updated
on cache misses. ... (borland.public.delphi.language.basm) - Re: Still confused why working set larger than virtual memory
... With the SysInternals Process Explorer the column is called Working Set. ...
What you removed is exactly the "smart trick" to have memory "accessible", ... as you map
views you never unmap. ... I attach my test source which I used for my file mapping measurements.
... (microsoft.public.vc.language) - Re: Help me pick which is best
... That's why the expandable memory seemed so attractive but then the battery is rechargeable,
which I guess may not be a huge problem, but who knows. ... If you wanted to change from street
and highway mapping to topo mapping on the fly, you might need to have access to a computer to
upload the new mapping. ... In use I would have to change from one regional map to the
next as I traveled, it takes about 15 regional map files to cover the entire U.S. with DirectRoute or
Topo 3D. ... The process of making the regional map files is a little bit technical or arcane
because, while Magellan says that map files can only be 16mb, there many, many, Meridian users
that are making and using 64mb map files. ... (sci.geo.satellite-nav)