summaryrefslogtreecommitdiff
path: root/rsAllocation.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Separate libRS.so into public and internal libsYang Ni2016-03-211-7/+0
| | | | | | | | | | | | | | Bug: 26546579 libRS_internal.so is not going to be whitelisted by the NDK linker, therefore loadable only by the internal implementation, but not any application code. libRS is going to contain only publicly exported functions, i.e. the functions declared in frameworks/rs/rs.h, including those in rsApiFuncDecl.h (generated from rs.spec). Change-Id: Iac58695316edc9aff87ade2bac3b4a44d1a68b23
* Revert "Added a flag to APIs for rsObj creation"Yang Ni2016-03-081-12/+8
| | | | | | This reverts commit 04dcca95461a2ffab4ce5209a453b752ab5c606b. Change-Id: I0016bbff79626b033201a88f466cbb2d60f86717
* Added a flag to APIs for rsObj creationYang Ni2016-03-031-8/+12
| | | | | | | | | | | Bug: 25570907 This flag will distinguish calls from Java/JNI vs. Single-Source RS. For the latter, the user ref count should remain zero to avoid memory leaks. Change-Id: Id3604f93b166089e3aca896d1c6c509b3ea19bcf (cherry picked from commit a7725cbfcdfe2eaf868571c77f004a4d7208e8ef)
* Add multi-frame support to RenderScript:Miao Wang2016-01-261-13/+74
| | | | | | | | | | | | | Bug: 23535524 - Allow multi-consumer for a single BufferQueue with specifying the the number of buffers need. - Allow USAGE_IO_INPUT allocations share the same BufferQueue with an existing Allocation. - Individual allocations can still call ioReceive independently - Add getTimeStamp() for multi-frame processing. Change-Id: Ia8f48f5fc50d578c68306bb32f0eac9636f5f32a
* Add AllocationCreateStrided to support lib CPU driverMiao Wang2015-08-061-2/+26
| | | | | | | | | | | | - Able to create Allocations with arbitrary alignment requirement, making Incremental Intrinsic Support able to run with different native GPU RS runtime. - Make compat mode CPU driver using an additional rs_compat.spec. - Add a compat mode only USAGE_INCREMENTAL_SUPPORT. - Add AllocationCreateStrided() to take an Alignment requirement (power of 2). Only enbled when detect USAGE_INCREMENTAL_SUPPORT. Change-Id: I66f913c3a2474f93af5a244c0c84460a7a395e71
* Merge "Notify drivers when user get a pointer to allocation"Jason Sams2015-05-201-1/+5
|\
| * Notify drivers when user get a pointer to allocationJason Sams2015-05-181-1/+5
| | | | | | | | | | | | | | | | Requested by vendor for driver bring-up. bug 20894664 Change-Id: I7a1540236e557ef42ffde1c832b5d5ef36b91c96
* | Delete dead codeJason Sams2015-05-191-1/+0
|/ | | | Change-Id: I2830eaed57213f9fc00cac5b9a689b6c7b93341f
* Add USAGE_OEMJason Sams2015-05-111-2/+15
| | | | | | | Allow OEMs to pass data from other HW blocks via internal extension. Change-Id: I78c19f5eec462aff7d8a5408f2f16cfc9b78c036
* Cleanup allocation constructorJason Sams2015-04-151-35/+0
| | | | Change-Id: Id48e6c24cef810705811ba799350c3f88c19018a
* am 9a1f726c: Merge "Fix AllocationAdapter offseting"Jason Sams2015-03-091-0/+19
|\ | | | | | | | | * commit '9a1f726cb7fbdb8ac26e3f43bea88082e8c0c4cb': Fix AllocationAdapter offseting
| * Merge "Fix AllocationAdapter offseting"Jason Sams2015-03-091-0/+19
| |\
| | * Fix AllocationAdapter offsetingJason Sams2015-03-061-0/+19
| | | | | | | | | | | | Change-Id: I486d70067a36bf9dbf7ade43475360ac937327e0
* | | am ceb8d321: Merge "Fix the bug for AllocationRead() that cannot handle 3d ↵Miao Wang2015-02-241-20/+51
|\| | | | | | | | | | | | | | | | | | | | Allocation correctly. Add the following functions to make it symmetric for read and write." * commit 'ceb8d321879ba542b708910f9c835bc94eb6c4c8': Fix the bug for AllocationRead() that cannot handle 3d Allocation correctly. Add the following functions to make it symmetric for read and write.
| * | Fix the bug for AllocationRead() that cannot handle 3d AllocationMiao Wang2015-02-231-20/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | correctly. Add the following functions to make it symmetric for read and write. - AllocationElementData - AllocationElementRead - Allocation3DRead Change-Id: I8c89b5e3474c4c3c70e9795843a76e61f1f90f6a
* | | am e9c79f66: Merge "Revert "Replaced android::Vector with std::vector.""Yang Ni2015-02-191-16/+9
|\| | | | | | | | | | | | | | * commit 'e9c79f66478170e4e45e49c71f5e9324842916cf': Revert "Replaced android::Vector with std::vector."
| * | Revert "Replaced android::Vector with std::vector."Yang Ni2015-02-151-16/+9
| |/ | | | | | | | | | | | | | | | | | | b/19148482 This reverts commit 93d6bc872b7d9fba63abfa7513d56b38d9c3d371. I also made some changes to Make it work with HEAD. Change-Id: I5e516976ec1d85ffe1cf388c01795348a9441982
| * Implement arrays and allocation adaptersJason Sams2015-02-091-0/+84
| | | | | | | | | | | | WIP: now passing basic tests Change-Id: I3d8c1ab12975428def225f88a04e24a4158ca69c
| * Add gralloc flags to support HW driverJason Sams2014-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | We were not setting the right gralloc flags with USAGE_IO_INPUT. This CL allows the driver to add flags and always sets the RS bit. Change-Id: I1807bc071da201923b6e0e714d7ab49ff0d2ef51 Conflicts: rsAllocation.cpp
* | Implement arrays and allocation adaptersJason Sams2015-02-091-0/+84
| | | | | | | | | | | | | | | | WIP: now passing basic tests (cherry picked from commit bc9dc27b84f4e5c72d4dbe8a8e01af87dd780f79) Change-Id: I1ddda310152140c7d7225ba42ef48ff93b30266d
* | am f0d7aa28: Add a BufferItem parameter to onFrameAvailableDan Stoza2014-11-071-1/+1
|\ \ | | | | | | | | | | | | * commit 'f0d7aa28bd4620030d9c54d983f607e3b0051df0': Add a BufferItem parameter to onFrameAvailable
| * | Add a BufferItem parameter to onFrameAvailableDan Stoza2014-11-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Passes the BufferItem for the queued buffer to the onFrameAvailable callback so the consumer can track the BufferQueue's contents. Bug: 18111837 Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
* | | Merge commit 'e49da13c' into manualmergeJason Sams2014-10-241-1/+1
|\| | | |/ |/| | | | | | | | | Conflicts: rsAllocation.cpp Change-Id: I6ceade380f0415efe41d06435f426743cf410a6d
| * Add gralloc flags to support HW driverJason Sams2014-10-231-1/+1
| | | | | | | | | | | | | | | | | | | | We were not setting the right gralloc flags with USAGE_IO_INPUT. This CL allows the driver to add flags and always sets the RS bit. bug 18057326 Change-Id: I1807bc071da201923b6e0e714d7ab49ff0d2ef51
* | am af7373fe: Return a void* from AllocationGetPointer!Stephen Hines2014-09-121-2/+2
|\| | | | | | | | | * commit 'af7373fe53edba115746430553e8edfddd03ae9e': Return a void* from AllocationGetPointer!
| * Return a void* from AllocationGetPointer!Stephen Hines2014-09-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Bug: 16846318 We mistakenly used a function that returned void with a function pointer that expected to return back a void pointer. This leads to undefined behavior, since it is unknown what value will be present in the space where the return value would appear. Under the 64-bit C++ tests, this was returning invalid pointers (due to optimizations moving things around). Change-Id: Iea75a29212a06bbacc2fc523f9c43b3efe471a31
* | resolved conflicts for merge of 81cfa2c5 to lmp-dev-plus-aospStephen Hines2014-08-211-17/+17
|\ \ | | | | | | | | | Change-Id: Ia3a7f084693825d4e46a4864788332a7d039d38f
| * | Replace NULL macros with nullptr literals.Chris Wailes2014-08-201-18/+18
| | | | | | | | | | | | Change-Id: I918c40879aa547438f77e7d1a95fa2aa33bec398
* | | am 3fa79f84: Merge changes I4c6abd96,I9bcf36d0Stephen Hines2014-08-201-9/+16
|\| | | |/ |/| | | | | | | * commit '3fa79f84fcce0b5f59498980a2bb8e355cf53cd4': Replaced android::Vector with std::vector. Adjust to handle the change to std::vector in libbcc.
| * Replaced android::Vector with std::vector.Chris Wailes2014-08-181-9/+16
| | | | | | | | Change-Id: I4c6abd964dc4b1412ec2e592fc8e835fecfe53f6
* | Fix IO_INPUT on 64-bit.Tim Murray2014-08-191-1/+1
| | | | | | | | | | | | bug 16846318 Change-Id: I775ede4f919cc8ac798ec0a1e6a794b36217e693
* | am 6c6f7539: am 8c8eb23d: Merge "Add 64bit large object support"Tim Murray2014-07-091-0/+9
|\| | | | | | | | | * commit '6c6f7539377ec779a9ea36bfcc5859ad41f6e677': Add 64bit large object support
| * Add 64bit large object supportJason Sams2014-07-081-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | Add HAL hooks for filling in LO fields. Change-Id: Ib9bdee714a062de519d2a9708c1016404a1b11a4 Conflicts: driver/rsdBcc.cpp driver/rsdCore.cpp rsAllocation.h rs_hal.h
* | am 09e1490a: am db69bf01: Merge "Adds support for multi-input kernels to ↵Stephen Hines2014-07-091-0/+13
|\| | | | | | | | | | | | | Frameworks/RS." * commit '09e1490af01ecd12cf19ee1b507cea860814470b': Adds support for multi-input kernels to Frameworks/RS.
| * Adds support for multi-input kernels to Frameworks/RS.Chris Wailes2014-07-081-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch modifies Frameworks/RS in the following ways: * Adjusted the data-layout of the C/C++ version of RsForEachStubParamStruct to accommodate a pointer to an array of input allocations and a pointer to an array of stride sizes for each of these allocatoins. * Adds a new code path for Java code to pass multiple allocations to a RS kernel. * Packs base pointers and step values for multi-input kernels into the new RsForEachStubParamStruct members. Change-Id: I46d2834c37075b2a2407fd8b010546818a4540d1
| * Fix build break.Tim Murray2014-02-261-1/+1
| | | | | | | | Change-Id: I39a3ef748ef7af3ad4c96ed6da1d0c720d33ea23
* | Remove deprecated BufferQueue constructorDan Stoza2014-03-121-3/+4
| | | | | | | | | | Bug: 13415624 Change-Id: I0df99d3dd649a3df3326bb4331247341714d596a
* | Fix build break.Tim Murray2014-02-261-1/+1
|/ | | | Change-Id: I39a3ef748ef7af3ad4c96ed6da1d0c720d33ea23
* Add getPointer for USAGE_SHARED allocations.Jason Sams2014-02-261-0/+27
| | | | Change-Id: I13a2af09bbbeec6cc6131b935979ac21c02820be
* Return errors to user when copy fails.Jason Sams2014-01-141-16/+16
| | | | | | Currently error is logged but often lost in the spam. Change-Id: I6f03ea791b6e6a35b82bdf938b577fbb6dcacb6c
* Replace "mips" with "mipmaps" since the MIPS gcc compiler defines mips to 1.Stephen Hines2013-12-201-8/+8
| | | | Change-Id: Ia48ffa714ff9e3a2e3b64ea1edd11ad0f6bf354a
* Cleanup type offsets which cannot be calculated for flexible YUV.Jason Sams2013-09-031-7/+7
| | | | | | | | | Support flexible YUV bug 10567550 Change-Id: I4f6e5a8d86eeee635605460f1751208f3320969b (cherry picked from commit a75372759e288be3fb8835735a830b1f7d1a4c42)
* Refactor hal to remove cpuConsumer from driversJason Sams2013-08-071-2/+47
| | | | | | | This CL should minimize build breaks due to BufferQueue changes in the future. Change-Id: I565a6eae5cc25603741fef32f2cfcb31a32eb757
* Merge "Move rs.h functions over to extern "C"."Tim Murray2013-07-221-1/+1
|\
| * Move rs.h functions over to extern "C".Tim Murray2013-07-221-1/+1
| | | | | | | | Change-Id: I0503a64d93dda558455dfebca90a0c820c80d7b1
* | Remove more String8Jason Sams2013-07-171-12/+9
|/ | | | Change-Id: I2b43c3c104eab7cb3b6573bea4858f6c2d0a76ca
* Remove libutils and fix rsDebug for RS support library.Stephen Hines2013-07-101-1/+1
| | | | | | | | | | | | | | | | Bug: 9664050 Our bitcode runtime library translates vector rsDebug() calls into passing their parameters via pointers. The previous version of libRSSupport.so was being created with non-pointer versions of these routines accidentally. This change also fixes a missing permission issue for ImageProcessing2, so that the compatibility library can be verified. This change also removes the use of libutils by switching the implementation of String8/Vector in the compatibility library to internal types backed by libstlport_static. Change-Id: I20da75e8c19a82a42dc2bceaba1937d21372db84
* Add 3D allocation copies.Jason Sams2013-04-091-25/+43
| | | | | | | | Remove resize2d. bug 8567058 Change-Id: Ib143b7a417c7db88aa8da8714a63e0ee6091269a
* Start making RS 64-bit clean.Tim Murray2013-03-201-2/+2
| | | | Change-Id: Ie40ad9a1d2b59094c86eb7e40b358e60120ce213
* Add x86 server support.Tim Murray2013-03-191-0/+2
| | | | Change-Id: I674acaf15b67afa48bc736f72942a11e2e38e940