summaryrefslogtreecommitdiffstats
path: root/rsProgramFragment.cpp
diff options
context:
space:
mode:
authorJason Sams <jsams@google.com>2012-07-25 17:55:39 -0700
committerJason Sams <jsams@google.com>2012-07-25 17:55:39 -0700
commit807fdc4b6f3fb893015ee136565d6151bb2332d3 (patch)
treea9e5791d67e07f407f135b332586518678aae4f9 /rsProgramFragment.cpp
parente3150cfb3edb028407669e4a65e087eae77e718c (diff)
downloadandroid_frameworks_rs-807fdc4b6f3fb893015ee136565d6151bb2332d3.tar.gz
android_frameworks_rs-807fdc4b6f3fb893015ee136565d6151bb2332d3.tar.bz2
android_frameworks_rs-807fdc4b6f3fb893015ee136565d6151bb2332d3.zip
Move memory layout to driver.
This change moves all allocation data copies to the hal. Also removes stride from the runtime. Follow on changes will remove the malloc pointer from the runtime. Change-Id: I30967c739800cd4b97186e9fc8b69f26a3f2787d
Diffstat (limited to 'rsProgramFragment.cpp')
-rw-r--r--rsProgramFragment.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/rsProgramFragment.cpp b/rsProgramFragment.cpp
index af2d3965..438b6209 100644
--- a/rsProgramFragment.cpp
+++ b/rsProgramFragment.cpp
@@ -53,8 +53,10 @@ void ProgramFragment::setConstantColor(Context *rsc, float r, float g, float b,
mConstantColor[1] = g;
mConstantColor[2] = b;
mConstantColor[3] = a;
- memcpy(mHal.state.constants[0]->getPtr(), mConstantColor, 4*sizeof(float));
+ void *p = rsc->mHal.funcs.allocation.lock1D(rsc, mHal.state.constants[0]);
+ memcpy(p, mConstantColor, 4*sizeof(float));
mDirty = true;
+ rsc->mHal.funcs.allocation.unlock1D(rsc, mHal.state.constants[0]);
}
void ProgramFragment::setup(Context *rsc, ProgramFragmentState *state) {