OSDN Git Service

android-x86/external-libdrm.git
16 years agoAllow relocation to be skipped when buffers don't move.
Keith Packard [Tue, 4 Dec 2007 20:22:30 +0000 (12:22 -0800)]
Allow relocation to be skipped when buffers don't move.

One of the costs of superioctl has been the need to perform relocations
inside the kernel. The cost of mapping the buffers to the CPU and writing
data is fairly high, especially if those buffers have been mapped and read
by the GPU.

If we assume that buffers don't move around very often, we can have the
client compute the relocations itself using the previous GPU address. When
that object doesn't move, the kernel can skip computing and writing the
updated data.

Here's a patch which adds a new field to struct drm_bo_info_req called
'presumed_offset', and a new DRM_BO_HINT_PRESUMED_OFFSET that is set when
this field has been filled in by the client.

There are two separate optimizations performed when the presumed_offset is
correct:

 1. i915_exec_reloc checks to see if all previous buffer offsets were guessed
    correctly. If so, there's no need for it to look at *any* of the
    relocations for a buffer. When this happens, it skips the whole
    relocation process, simply returning success.

 2. i915_apply_reloc checks to see if the target buffer offset was guessed
    correctly. If so, it skips mapping the relocatee, computing the
    relocation and writing the value. If no relocations are needed, the
    relocatee should never be mapped to the CPU, and so the kernel shouldn't
    need to wait for any fences to pass.

16 years agodrm: move agp include outside CONFIG_AGP as it isn't dependant on agp in kernel
Dave Airlie [Mon, 10 Dec 2007 00:13:52 +0000 (10:13 +1000)]
drm: move agp include outside CONFIG_AGP as it isn't dependant on agp in kernel

16 years agomach64: comment bus master / ring buffer behavior and security
José Fonseca [Sat, 8 Dec 2007 19:21:27 +0000 (19:21 +0000)]
mach64: comment bus master / ring buffer behavior and security

16 years agoFix pipe<->plane mapping vs. vblank handling (again)
Jesse Barnes [Fri, 7 Dec 2007 22:24:45 +0000 (14:24 -0800)]
Fix pipe<->plane mapping vs. vblank handling (again)

If drmMinor >= 6, the intel DDX driver will enable vblank events on both
pipes.  If drmMinor >= 10 on pre-965 chipsets, the intel DDX driver will
swap the pipe<->plane mapping to allow for framebuffer compression on
laptop screens.  This means the secondary vblank counter (corresponding
to pipe B) will be incremented when vblank interrupts occur.

Now Mesa waits for vblank events on whichever plane has a greater
portion of the displayed window.  So it will happly ask to wait for the
primary counter even though that one won't increment.

So we can fix this in either the DDX driver, Mesa or the kernel (though
I thought we already had several times).

Since current (and previous) userspace assumes it's talking about a pipe
== plane situation and now uses planes when talking to the kernel, we
should probably just hide the mapping details there (indeed they already
are hidden there for vblank swaps), which this patch does.

So as far as userland is concerned, whether we call things planes or
pipes is irrelevant, as long as kernel developers understand that
userland hands them planes and they have to figure out which pipe that
corresponds to (which will typically be the same on 965+ hardware and
reversed on pre-965 mobile chips).

16 years agotake down stuff after asking driver to unload
Dave Airlie [Thu, 6 Dec 2007 06:03:28 +0000 (16:03 +1000)]
take down stuff after asking driver to unload

16 years agomach64: make buffer emission macros normal functions
José Fonseca [Wed, 5 Dec 2007 22:53:02 +0000 (22:53 +0000)]
mach64: make buffer emission macros normal functions

16 years agomach64: use utf-8
José Fonseca [Wed, 5 Dec 2007 00:10:39 +0000 (00:10 +0000)]
mach64: use utf-8

16 years agoRemove references to the sarea_priv perf_boxes field.
Kristian Høgsberg [Wed, 5 Dec 2007 19:43:22 +0000 (14:43 -0500)]
Remove references to the sarea_priv perf_boxes field.

This field isn't touched or read by any other code in the stack so it's
time to retire these last few references.

16 years agopatch from -mm kernel to use upper_32_bits
Dave Airlie [Tue, 4 Dec 2007 18:54:58 +0000 (04:54 +1000)]
patch from -mm kernel to use upper_32_bits

16 years agobsd: Replace other occurrences of msleep with mtx_sleep
Robert Noland [Sun, 2 Dec 2007 06:45:09 +0000 (01:45 -0500)]
bsd: Replace other occurrences of msleep with mtx_sleep

16 years agobsd: Now make secondary vblank work
Robert Noland [Sun, 2 Dec 2007 06:23:11 +0000 (01:23 -0500)]
bsd: Now make secondary vblank work

We needed to specifically check for driver support and test the correct
vbl_received value.  Also pulled over support for _DRM_VBLANK_NEXTONMISS
from the linux code.

16 years agobsd: Hook secondary vblank support.
Robert Noland [Sat, 1 Dec 2007 22:09:49 +0000 (17:09 -0500)]
bsd: Hook secondary vblank support.

16 years agobsd: Fix typo in i915_drv.c
Robert Noland [Sat, 1 Dec 2007 21:35:48 +0000 (16:35 -0500)]
bsd: Fix typo in i915_drv.c

16 years agomtx_sleep is preferred to msleep
Robert Noland [Sun, 25 Nov 2007 17:54:31 +0000 (12:54 -0500)]
mtx_sleep is preferred to msleep

Calling semantics are the same and both were introduced in 5.0

16 years agoClarify order of operations
Robert Noland [Sun, 25 Nov 2007 17:50:07 +0000 (12:50 -0500)]
Clarify order of operations

16 years agoDRM_DEBUG already prints the function name.
Robert Noland [Sat, 24 Nov 2007 06:56:05 +0000 (01:56 -0500)]
DRM_DEBUG already prints the function name.

16 years agodrm: Add _DRM_DRIVER map flag.
Robert Noland [Sat, 1 Dec 2007 07:40:13 +0000 (02:40 -0500)]
drm: Add _DRM_DRIVER map flag.

This flag indicates that the driver is responsible for the map.

16 years agobsd: Move counter initialization to load time.
Robert Noland [Sat, 1 Dec 2007 07:32:23 +0000 (02:32 -0500)]
bsd: Move counter initialization to load time.

16 years agonouveau: Properly identify NV40 and NV44 generation.
Maarten Maathuis [Fri, 30 Nov 2007 21:50:34 +0000 (22:50 +0100)]
nouveau: Properly identify NV40 and NV44 generation.

16 years agoBeside the emitted warning, the added cast (u64 -> unsigned) strips out
Jiri Slaby [Wed, 28 Nov 2007 23:55:38 +0000 (09:55 +1000)]
Beside the emitted warning, the added cast (u64 -> unsigned) strips out
part of address on 64 bit. Cast to unsigned long instead.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
16 years agodrm: enable udev node creation
Dave Airlie [Wed, 28 Nov 2007 23:47:24 +0000 (09:47 +1000)]
drm: enable udev node creation

16 years agodrm: oops not a cleanup..
Dave Airlie [Wed, 28 Nov 2007 23:46:02 +0000 (09:46 +1000)]
drm: oops not a cleanup..

16 years agoFix up drm_ati_pcigart_info
Robert C. Noland III [Wed, 28 Nov 2007 05:33:42 +0000 (00:33 -0500)]
Fix up drm_ati_pcigart_info

16 years agodrm: more cleanups
Dave Airlie [Wed, 28 Nov 2007 23:37:51 +0000 (09:37 +1000)]
drm: more cleanups

16 years agoi965: oops force mi batchbuffer start
Dave Airlie [Wed, 28 Nov 2007 12:46:06 +0000 (22:46 +1000)]
i965: oops force mi batchbuffer start

16 years agodrm: major whitespace/coding style realignment with kernel
Dave Airlie [Thu, 22 Nov 2007 06:10:36 +0000 (16:10 +1000)]
drm: major whitespace/coding style realignment with kernel

16 years agodrm: cleanup drm_regman.c coding style
Dave Airlie [Thu, 22 Nov 2007 03:29:17 +0000 (13:29 +1000)]
drm: cleanup drm_regman.c coding style

16 years agoi915: add context handle to superioctl struct
Dave Airlie [Wed, 21 Nov 2007 23:17:34 +0000 (09:17 +1000)]
i915: add context handle to superioctl struct

This will be used later for lockless operation.

16 years agodrm: don't reset to 0 irq_enabled when client open file descriptor
Jerome Glisse [Sun, 18 Nov 2007 18:16:40 +0000 (19:16 +0100)]
drm: don't reset to 0 irq_enabled when client open file descriptor

16 years agoFix capitalization of __linux__ define.
Eric Anholt [Mon, 19 Nov 2007 16:41:23 +0000 (08:41 -0800)]
Fix capitalization of __linux__ define.

16 years agodrm: fix dead lock in drm_buffer_object_transfer
Jerome Glisse [Mon, 19 Nov 2007 13:37:21 +0000 (14:37 +0100)]
drm: fix dead lock in drm_buffer_object_transfer

16 years agoBug #13233: Fix build on FreeBSD.
Robert Noland [Tue, 13 Nov 2007 22:50:46 +0000 (17:50 -0500)]
Bug #13233: Fix build on FreeBSD.

16 years agoBug #13233: Chase move of agp headers on FreeBSD.
Robert Noland [Mon, 19 Nov 2007 06:40:13 +0000 (22:40 -0800)]
Bug #13233: Chase move of agp headers on FreeBSD.

16 years agoradeon: refactor out the fb/agp location read/write.
Dave Airlie [Sun, 18 Nov 2007 09:25:31 +0000 (19:25 +1000)]
radeon: refactor out the fb/agp location read/write.

Add a new get param to get the fb location into userspace. Mesa currently
hits MMIO to do this, but this isn't always possible.

16 years agonouveau: also mention the number of succcessfully copied bios bytes.
Stephane Marchesin [Fri, 16 Nov 2007 14:02:25 +0000 (15:02 +0100)]
nouveau: also mention the number of succcessfully copied bios bytes.

16 years agonouveau: rename
Jeremy Kolb [Fri, 16 Nov 2007 03:09:59 +0000 (22:09 -0500)]
nouveau: rename

16 years agonouveau: flip buffer into gart.
Jeremy Kolb [Fri, 16 Nov 2007 01:46:49 +0000 (20:46 -0500)]
nouveau: flip buffer into gart.

16 years agonouveau: be verbose about PPC bios for now.
Stephane Marchesin [Thu, 15 Nov 2007 19:42:38 +0000 (20:42 +0100)]
nouveau: be verbose about PPC bios for now.

16 years agonouveau: revert the nv34 context size change, it was not the culprit after all.
Stephane Marchesin [Thu, 15 Nov 2007 17:01:26 +0000 (18:01 +0100)]
nouveau: revert the nv34 context size change, it was not the culprit after all.

16 years agonouveau: use get_property instead of of_get_property on pre-2.6.22 kernels.
Stephane Marchesin [Thu, 15 Nov 2007 15:00:25 +0000 (16:00 +0100)]
nouveau: use get_property instead of of_get_property on pre-2.6.22 kernels.

16 years agomm fixups.
Thomas Hellstrom [Thu, 15 Nov 2007 09:38:55 +0000 (10:38 +0100)]
mm fixups.

16 years agoi915: remove excess debug output
Dave Airlie [Thu, 15 Nov 2007 03:43:23 +0000 (14:43 +1100)]
i915: remove excess debug output

16 years agonouveau: Copy the PPC bios to RAMIN on init, that lets us do proper output detection...
Stephane Marchesin [Thu, 15 Nov 2007 02:43:22 +0000 (03:43 +0100)]
nouveau: Copy the PPC bios to RAMIN on init, that lets us do proper output detection in user space.

16 years agointel: add flushing for i8xx chipsets.
Dave Airlie [Thu, 15 Nov 2007 02:29:55 +0000 (13:29 +1100)]
intel: add flushing for i8xx chipsets.

Add a nut vs hammer style chipset flush for the i8xx chipsets - reenable TTM
code paths

16 years agonouveau: nv30: missing ramin init, does it brake other hw?
Patrice Mandin [Wed, 14 Nov 2007 22:31:59 +0000 (23:31 +0100)]
nouveau: nv30: missing ramin init, does it brake other hw?

16 years agoAdd new shared header file drm_internal.h.
Kristian Høgsberg [Wed, 14 Nov 2007 19:28:34 +0000 (14:28 -0500)]
Add new shared header file drm_internal.h.

This header file is shared across linux and bsd, but is not installed
for user space to access.  It's the place to put prototypes and data
types that aren't platform or chipset specific, but still internal to
the drm.

16 years agonouveau: adjust the size of the NV34 context. That fixes mobile PPC cards.
Stephane Marchesin [Wed, 14 Nov 2007 01:52:55 +0000 (02:52 +0100)]
nouveau: adjust the size of the NV34 context. That fixes mobile PPC cards.

16 years agoFix ttmtest.
Thomas Hellstrom [Tue, 13 Nov 2007 14:42:08 +0000 (15:42 +0100)]
Fix ttmtest.

16 years agonouveau: Also wait until CACHE1 gets emptied.
Ben Skeggs [Tue, 13 Nov 2007 18:36:20 +0000 (05:36 +1100)]
nouveau: Also wait until CACHE1 gets emptied.

16 years agoRevert "nouveau: stub superioctl"
Ben Skeggs [Tue, 13 Nov 2007 18:11:11 +0000 (05:11 +1100)]
Revert "nouveau: stub superioctl"

This reverts commit 2370ded79b4176d76cda1ec5f495fd33c2d566ed.

Err.. didn't mean for that to slip in :)

16 years agoMerge branch 'fifo-cleanup' into upstream-master
Ben Skeggs [Tue, 13 Nov 2007 18:09:07 +0000 (05:09 +1100)]
Merge branch 'fifo-cleanup' into upstream-master

16 years agonouveau: Attempt to wait for channel idle before we destroy it.
Ben Skeggs [Tue, 13 Nov 2007 17:24:36 +0000 (04:24 +1100)]
nouveau: Attempt to wait for channel idle before we destroy it.

16 years agonouveau: Use "new" NV40 USER control regs.
Ben Skeggs [Tue, 13 Nov 2007 17:15:13 +0000 (04:15 +1100)]
nouveau: Use "new" NV40 USER control regs.

Probably entirely pointless, but a simple change in any case.

16 years agonouveau: store user control reg offsets in channel struct
Ben Skeggs [Tue, 13 Nov 2007 17:05:48 +0000 (04:05 +1100)]
nouveau: store user control reg offsets in channel struct

16 years agonouveau: funcs to determine active channel on PFIFO.
Ben Skeggs [Tue, 13 Nov 2007 16:27:37 +0000 (03:27 +1100)]
nouveau: funcs to determine active channel on PFIFO.

16 years agonouveau: stub superioctl
Ben Skeggs [Thu, 8 Nov 2007 17:27:23 +0000 (04:27 +1100)]
nouveau: stub superioctl

16 years agoMake sure PLLs are enabled before writing pipe configuration regs
Jesse Barnes [Sat, 10 Nov 2007 22:39:36 +0000 (14:39 -0800)]
Make sure PLLs are enabled before writing pipe configuration regs

Fix from the X driver.  Make sure the PLLs are enabled and not in VGA mode
before writing PIPE(A|B)CONF regs to avoid hangs or crashes.

16 years agosuspend() and resume() need kernel 2.6.22 or later
Patrice Mandin [Fri, 9 Nov 2007 17:08:08 +0000 (18:08 +0100)]
suspend() and resume() need kernel 2.6.22 or later

16 years agoDon't overwrite TTM page flags.
Thomas Hellstrom [Wed, 7 Nov 2007 17:07:10 +0000 (18:07 +0100)]
Don't overwrite TTM page flags.

16 years agoi915: oops disable TTM is backwards
Dave Airlie [Wed, 7 Nov 2007 13:10:24 +0000 (23:10 +1000)]
i915: oops disable TTM is backwards

16 years agoAvoid buffers not ending up on a list in some cases.
Thomas Hellstrom [Tue, 6 Nov 2007 08:47:57 +0000 (09:47 +0100)]
Avoid buffers not ending up on a list in some cases.

16 years agoAdd missing drm_regman.c file.
Thomas Hellstrom [Tue, 6 Nov 2007 08:36:25 +0000 (09:36 +0100)]
Add missing drm_regman.c file.

16 years agoi915: disable TTM on 8xx chips for now until flushing is solved
Dave Airlie [Tue, 6 Nov 2007 07:13:46 +0000 (18:13 +1100)]
i915: disable TTM on 8xx chips for now until flushing is solved

16 years agoi915: compat code doesn't work in i8xx hw.
Dave Airlie [Tue, 6 Nov 2007 07:00:10 +0000 (18:00 +1100)]
i915: compat code doesn't work in i8xx hw.

16 years ago[PATCH] i915: fix missing G33 detect in IS_I9XX
Zhenyu Wang [Tue, 6 Nov 2007 06:59:14 +0000 (17:59 +1100)]
[PATCH] i915: fix missing G33 detect in IS_I9XX

G33 detect seems missing with Jesse's suspend/resume patch.

16 years agodrm/agp: kernel style fixes
Dave Airlie [Tue, 6 Nov 2007 02:12:10 +0000 (12:12 +1000)]
drm/agp: kernel style fixes

16 years agoi915: cleanup most of the whitespace
Dave Airlie [Tue, 6 Nov 2007 01:32:58 +0000 (11:32 +1000)]
i915: cleanup most of the whitespace

16 years agoExport a symbol.
Thomas Hellstrom [Mon, 5 Nov 2007 12:22:00 +0000 (13:22 +0100)]
Export a symbol.

16 years agoFix a user-buffer check.
Thomas Hellstrom [Mon, 5 Nov 2007 12:20:16 +0000 (13:20 +0100)]
Fix a user-buffer check.

16 years agodrm: more kernel coding style cleanups
Dave Airlie [Mon, 5 Nov 2007 09:14:23 +0000 (19:14 +1000)]
drm: more kernel coding style cleanups

16 years agodrm/ttm: apply linux kernel coding style to bo_lock/move/object/ttm.c
Dave Airlie [Mon, 5 Nov 2007 09:09:18 +0000 (19:09 +1000)]
drm/ttm: apply linux kernel coding style to bo_lock/move/object/ttm.c

16 years agodrm/ttm: kernel coding style for bo.c and objects.h
Dave Airlie [Mon, 5 Nov 2007 09:05:32 +0000 (19:05 +1000)]
drm/ttm: kernel coding style for bo.c and objects.h

16 years agodrm: fix the the typo
Dave Airlie [Mon, 5 Nov 2007 08:56:46 +0000 (18:56 +1000)]
drm: fix the the typo

16 years agodrm: fix memset size error
Li Zefan [Mon, 5 Nov 2007 08:48:27 +0000 (18:48 +1000)]
drm: fix memset size error

The size passing to memset is wrong.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
16 years agodrm: update kernel generator script using v4l script
Dave Airlie [Mon, 5 Nov 2007 02:56:55 +0000 (12:56 +1000)]
drm: update kernel generator script using v4l script

16 years agodrm: remove lots of spurious whitespace.
Dave Airlie [Mon, 5 Nov 2007 02:42:22 +0000 (12:42 +1000)]
drm: remove lots of spurious whitespace.

Kernel "cleanfile" script run.

16 years agodrm: move some of the OS stuff into the OS header
Dave Airlie [Mon, 5 Nov 2007 02:10:52 +0000 (12:10 +1000)]
drm: move some of the OS stuff into the OS header

16 years agonouveau: more nv20_graph_init.
Pekka Paalanen [Thu, 25 Oct 2007 19:34:45 +0000 (22:34 +0300)]
nouveau: more nv20_graph_init.

This patch is originally from malc0_, but since it used some NV40_*
regs, I edited them into hex values with a comment.
This seems to correspond quite well with my own mmio-trace,
for the parts I cared to check.

16 years agonouveau: Use a sw method instead of notify interrupt to signal fence completion.
Ben Skeggs [Sun, 4 Nov 2007 18:42:08 +0000 (05:42 +1100)]
nouveau: Use a sw method instead of notify interrupt to signal fence completion.

16 years agonouveau: disable m2mf buffer move for the moment
Ben Skeggs [Sun, 4 Nov 2007 18:15:32 +0000 (05:15 +1100)]
nouveau: disable m2mf buffer move for the moment

16 years agoFill fence sequence after emit ioctl.
Ben Skeggs [Sun, 4 Nov 2007 17:44:40 +0000 (04:44 +1100)]
Fill fence sequence after emit ioctl.

16 years agonouveau: cleanups
Ben Skeggs [Sun, 4 Nov 2007 16:53:46 +0000 (03:53 +1100)]
nouveau: cleanups

16 years agonouveau: only pass annoying messages if irq isn't handled fully.
Ben Skeggs [Sun, 4 Nov 2007 15:35:56 +0000 (02:35 +1100)]
nouveau: only pass annoying messages if irq isn't handled fully.

16 years agonouveau: vram is bar1
Ben Skeggs [Sun, 4 Nov 2007 15:32:46 +0000 (02:32 +1100)]
nouveau: vram is bar1

16 years agonouveau: hook up an inital fence irq handler
Ben Skeggs [Sun, 4 Nov 2007 15:20:35 +0000 (02:20 +1100)]
nouveau: hook up an inital fence irq handler

16 years agonouveau: crappy ttm mm init, disabled for now.
Ben Skeggs [Sun, 4 Nov 2007 13:01:38 +0000 (00:01 +1100)]
nouveau: crappy ttm mm init, disabled for now.

16 years agodrm: fix oops since user objects..
Dave Airlie [Sun, 4 Nov 2007 00:01:27 +0000 (11:01 +1100)]
drm: fix oops since user objects..

16 years agonouveau: add darktama's email address to authors section.
Jeremy Kolb [Fri, 2 Nov 2007 23:46:27 +0000 (19:46 -0400)]
nouveau: add darktama's email address to authors section.

16 years agonouveau: put it all together.
Jeremy Kolb [Fri, 2 Nov 2007 23:44:30 +0000 (19:44 -0400)]
nouveau: put it all together.

16 years agonouveau: Add darktama's fencing code. Restructure some stuff.
Jeremy Kolb [Fri, 2 Nov 2007 23:43:53 +0000 (19:43 -0400)]
nouveau:  Add darktama's fencing code.  Restructure some stuff.

16 years agonouveau: incorporate darktama's buffer object work.
Jeremy Kolb [Fri, 2 Nov 2007 03:35:46 +0000 (23:35 -0400)]
nouveau: incorporate darktama's buffer object work.

16 years agonouveau: more filling in for ttm. Change copyright since it's based off of radeon...
Jeremy Kolb [Thu, 1 Nov 2007 23:04:38 +0000 (19:04 -0400)]
nouveau: more filling in for ttm.  Change copyright since it's based off of radeon code.

16 years agoUser buffer support.
Thomas Hellstrom [Fri, 2 Nov 2007 15:03:41 +0000 (16:03 +0100)]
User buffer support.

16 years agoReturn fence errors.
Thomas Hellstrom [Fri, 2 Nov 2007 14:52:00 +0000 (15:52 +0100)]
Return fence errors.
Time out properly in the presence of signals.

16 years agoradeon: set the address to access the aperture on the CPU side correctly
Dave Airlie [Fri, 2 Nov 2007 14:39:44 +0000 (00:39 +1000)]
radeon: set the address to access the aperture on the CPU side correctly

This code relied on the CPU and GPU address for the aperture being the same,
On some r5xx hardware I was playing with I noticed that this isn't always true.
I wonder if this will fix some of those r4xx DRI issues we've seen in the past.

16 years agonouveau: don't use AGP on PPC. It's a hopeless case.
Stephane Marchesin [Thu, 1 Nov 2007 14:48:46 +0000 (15:48 +0100)]
nouveau: don't use AGP on PPC. It's a hopeless case.

16 years agonouveau: add missing file.
Jeremy Kolb [Thu, 1 Nov 2007 01:27:00 +0000 (21:27 -0400)]
nouveau: add missing file.

16 years agoMerge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/drm
Jeremy Kolb [Thu, 1 Nov 2007 00:14:48 +0000 (20:14 -0400)]
Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/drm

16 years agonouveau: ttm stubs
Jeremy Kolb [Thu, 1 Nov 2007 00:13:01 +0000 (20:13 -0400)]
nouveau: ttm stubs

16 years agodrm/ttm: add support for cached un-snooped mappings.
Dave Airlie [Wed, 31 Oct 2007 23:34:11 +0000 (10:34 +1100)]
drm/ttm: add support for cached un-snooped mappings.

This mapping allows cached objects to be mapped in/out of the TT space
with the appropriate flushing calls.

It should put back the old CACHED functionality for snooped mappings