freebsd-nq/sys/arm/xscale
Ian Lepore 4098ccafa4 Revise the arm bus_space implementation to avoid dereferencing the tag on
every operation to retrieve the bs_cookie value almost nothing actually uses.

The bus_space struct contains a private data pointer (poorly named bs_cookie,
now renamed to bs_privdata) which is used only by a few old armv4 xscale
implementations.  The bus_space functions were all defined to take this
value as the first parameter instead of the bus_space_tag_t, requiring all
the inline macro and function expansions to dereference the tag to pass it
to another function, which never uses it.  Now all the functions take the tag
as the first parameter and retrieve the privdata if they need it.

Also fix a couple bus_space_unmap() implementations that were calling
kva_free() instead of pmap_unmapdev().

Discussed with:	   cognet
2015-01-21 01:06:08 +00:00
..
i8134x Revise the arm bus_space implementation to avoid dereferencing the tag on 2015-01-21 01:06:08 +00:00
i80321 Revise the arm bus_space implementation to avoid dereferencing the tag on 2015-01-21 01:06:08 +00:00
ixp425 Revise the arm bus_space implementation to avoid dereferencing the tag on 2015-01-21 01:06:08 +00:00
pxa Revise the arm bus_space implementation to avoid dereferencing the tag on 2015-01-21 01:06:08 +00:00
std.xscale Set machine correctly on ARM. This allows universe to use the correct world 2012-08-18 05:48:19 +00:00
std.xscale-be Set machine correctly on ARM. This allows universe to use the correct world 2012-08-18 05:48:19 +00:00