#
316220 |
|
30-Mar-2017 |
ngie |
MFC r315796:
bus_alloc_resource(9): fix mandoc markup
Add missing comma after `.Nm bus_alloc_resource_any` in NAME section.
|
#
302408 |
|
07-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
300317 |
|
20-May-2016 |
jhb |
Add new bus methods for mapping resources.
Add a pair of bus methods that can be used to "map" resources for direct CPU access using bus_space(9). bus_map_resource() creates a mapping and bus_unmap_resource() releases a previously created mapping. Mappings are described by 'struct resource_map' object. Pointers to these objects can be passed as the first argument to the bus_space wrapper API used for bus resources.
Drivers that wish to map all of a resource using default settings (for example, using uncacheable memory attributes) do not need to change. However, drivers that wish to use non-default settings can now do so without jumping through hoops.
First, an RF_UNMAPPED flag is added to request that a resource is not implicitly mapped with the default settings when it is activated. This permits other activation steps (such as enabling I/O or memory decoding in a device's PCI command register) to be taken without creating a mapping. Right now the AGP drivers don't set RF_ACTIVE to avoid using up a large amount of KVA to map the AGP aperture on 32-bit platforms. Once RF_UNMAPPED is supported on all platforms that support AGP this can be changed to using RF_UNMAPPED with RF_ACTIVE instead.
Second, bus_map_resource accepts an optional structure that defines additional settings for a given mapping.
For example, a driver can now request to map only a subset of a resource instead of the entire range. The AGP driver could also use this to only map the first page of the aperture (IIRC, it calls pmap_mapdev() directly to map the first page currently). I will also eventually change the PCI-PCI bridge driver to request mappings of the subset of the I/O window resource on its parent side to create mappings for child devices rather than passing child resources directly up to nexus to be mapped. This also permits bridges that do address translation to request suitable mappings from a resource on the "upper" side of the bus when mapping resources on the "lower" side of the bus.
Another attribute that can be specified is an alternate memory attribute for memory-mapped resources. This can be used to request a Write-Combining mapping of a PCI BAR in an MI fashion. (Currently the drivers that do this call pmap_change_attr() directly for x86 only.)
Note that this commit only adds the MI framework. Each platform needs to add support for handling RF_UNMAPPED and thew new bus_map/unmap_resource methods. Generally speaking, any drivers that are calling rman_set_bustag() and rman_set_bushandle() need to be updated.
Discussed on: arch Reviewed by: cem Differential Revision: https://reviews.freebsd.org/D5237
|
#
298751 |
|
28-Apr-2016 |
jhb |
Document RF_PREFETCHABLE.
|
#
298749 |
|
28-Apr-2016 |
jhb |
Document PCI_RES_BUS as a possible resource type.
|
#
298748 |
|
28-Apr-2016 |
jhb |
Remove a stale reference to the removed RF_TIMESHARE flag.
|
#
298511 |
|
23-Apr-2016 |
brueffer |
Improve upon r296618 to keep lines < 80 characters.
Pointed out by: jhb Sponsored by: Essen Hackathon 2016
|
#
296618 |
|
10-Mar-2016 |
brueffer |
Fix mdoc markup.
|
#
296136 |
|
27-Feb-2016 |
jhibbits |
Add the bus_alloc_resource_anywhere() convenience function.
Summary: Many instances of bus_alloc_resource() simply use 0 and ~0 for start and end to denote 'anywhere' with a given count. To clean this up, introduce a bus_alloc_resource_anywhere() convenience function.
Bump __FreeBSD_version for the new API.
Reviewed By: jhb Differential Revision: https://reviews.freebsd.org/D5370
|
#
294883 |
|
27-Jan-2016 |
jhibbits |
Convert rman to use rman_res_t instead of u_long
Summary: Migrate to using the semi-opaque type rman_res_t to specify rman resources. For now, this is still compatible with u_long.
This is step one in migrating rman to use uintmax_t for resources instead of u_long.
Going forward, this could feasibly be used to specify architecture-specific definitions of resource ranges, rather than baking a specific integer type into the API.
This change has been broken out to facilitate MFC'ing drivers back to 10 without breaking ABI.
Reviewed By: jhb Sponsored by: Alex Perez/Inertial Computing Differential Revision: https://reviews.freebsd.org/D5075
|
#
267936 |
|
26-Jun-2014 |
bapt |
use .Mt to mark up email addresses consistently (part6)
PR: 191174 Submitted by: Franco Fichtner <franco at lastsummer.de>
|
#
221231 |
|
29-Apr-2011 |
jhb |
Add a new bus method, BUS_ADJUST_RESOURCE() that is intended to be a wrapper around rman_adjust_resource(). Include a generic implementation, bus_generic_adjust_resource() which passes the request up to the parent bus. There is currently no default implementation. A bus_adjust_resource() wrapper is provided for use in drivers.
|
#
170034 |
|
27-May-2007 |
imp |
Improve both the PCI and PC Card descriptions of the RID.
|
#
148890 |
|
09-Aug-2005 |
brian |
Fix a typo
|
#
147647 |
|
28-Jun-2005 |
hmp |
Use 'manual page' instead of 'man page' for consistency.
Approved by: re (hrs)
|
#
143313 |
|
09-Mar-2005 |
jmg |
spell resource correctly... MFC after: 3 days
|
#
130582 |
|
16-Jun-2004 |
ru |
Assorted markup, spelling, and grammar fixes.
|
#
127133 |
|
17-Mar-2004 |
njl |
Add bus_alloc_resource_any(9), which does bus_alloc_resource() with the appropriate default values. Document it in the manpage.
Submitted by: Mark Santcroos <marks@ripe.net> Reviewed by: imp, dfr, bde Abstains: bde
|
#
125096 |
|
27-Jan-2004 |
imp |
Fix the example back the way it was. Fix the commentary to say it allocates a 32 byte range of ioports.
|
#
125066 |
|
27-Jan-2004 |
njl |
Document my adventures in newbus land. Clarify some examples, especially that count is in bytes, not bits. There are some drivers that I think make this mistake. (I've seen counts of 16 in the tree).
|
#
123345 |
|
09-Dec-2003 |
mtm |
Grammar
|
#
115209 |
|
21-May-2003 |
ru |
Assorted mdoc(7), grammar, spelling, and punctuation fixes.
Approved by: re (blanket)
|
#
112772 |
|
29-Mar-2003 |
imp |
Fix some typos: race->rare rman_activate_resource -> bus_activate_resource
Add xref to bus_activate_resource Minor markup changes for the start/end/count parameters.
|
#
84306 |
|
01-Oct-2001 |
ru |
mdoc(7) police: Use the new .In macro for #include statements.
|
#
81298 |
|
08-Aug-2001 |
sheldonh |
can not -> cannot
|
#
79727 |
|
14-Jul-2001 |
schweikh |
Removed whitespace at end-of-line; no content changes. I simply did cd src/share; find man[1-9] -type f|xargs perl -pi -e 's/[ \t]+$//'
BTW, what editors are the culprits? I'm using vim and it shows me whitespace at EOL in troff files with a thick blue block...
Reviewed by: Silence from cvs diff -b MFC after: 7 days
|
#
79538 |
|
10-Jul-2001 |
ru |
mdoc(7) police: removed HISTORY info from the .Os call.
|
#
79454 |
|
09-Jul-2001 |
dd |
mdoc(7) police: remove extraneous .Pp before and/or after .Sh.
|
#
79366 |
|
06-Jul-2001 |
ru |
mdoc(7) police: sort SEE ALSO xrefs (sort -b -f +2 -3 +1 -2).
|
#
72514 |
|
15-Feb-2001 |
bde |
Fixed missing and wrong includes in synopsis. The prerequisites for using bus_alloc_resource(), etc., are especially unobvious, but were especially wrong (<sys/resource.h> has nothing to do with the resources documented here...). Order and format the includes as correctly as possible (a layering violation makes <machine/bus.h> a prerequisite for <sys/rman.h>).
|
#
69027 |
|
22-Nov-2000 |
ru |
mdoc(7) police: do not split author names in the AUTHORS section.
|
#
68072 |
|
31-Oct-2000 |
asmodai |
Fix a fundamental error. The device is not owned by the parent bus before allocation. The resource is.
Asked about by: julian on -current Verified by: msmith
|
#
61868 |
|
20-Jun-2000 |
alex |
mdoc style cleanup: newline for new sentence.
Submitted by: sheldonh
|
#
61432 |
|
08-Jun-2000 |
alex |
Forced commit: bus_alloc_resource.9 contains the para. by Warner Losh.
|
#
61431 |
|
08-Jun-2000 |
alex |
Add bus_alloc_resource.9 and bus_release_resource.9. bus_release_resource.9 contains a paragraph obtained from a mail by Warner Losh <imp@FreeBSD.org> to myself.
Reviewed by: asmodai, hoek; in parts by msmith, mdodd and imp
|