diff options
author | Miao Wang <miaowang@google.com> | 2017-06-02 23:28:07 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-06-02 23:28:07 +0000 |
commit | 0fd82f993eb9089f442484f7420c8745c52c94f6 (patch) | |
tree | 213a267b6617b8e8ef478c28eddc1f7b76823e26 /renderscript | |
parent | dd5605c4fb594e58f978f26a9d5791550aa2e110 (diff) | |
parent | 827e291043c3d48dbf49540e6a11d567a1b96154 (diff) | |
download | android_hardware_interfaces-0fd82f993eb9089f442484f7420c8745c52c94f6.tar.gz android_hardware_interfaces-0fd82f993eb9089f442484f7420c8745c52c94f6.tar.bz2 android_hardware_interfaces-0fd82f993eb9089f442484f7420c8745c52c94f6.zip |
Merge "[RenderScript] Use OVERRIDE_RS_DRIVER string in the default implementation." into oc-dev
am: 827e291043
Change-Id: I1b6548be61440b195d283b929792a2342810120d
Diffstat (limited to 'renderscript')
-rw-r--r-- | renderscript/1.0/default/Android.bp | 7 | ||||
-rw-r--r-- | renderscript/1.0/default/Context.cpp | 14 | ||||
-rw-r--r-- | renderscript/1.0/default/Device.cpp | 189 |
3 files changed, 144 insertions, 66 deletions
diff --git a/renderscript/1.0/default/Android.bp b/renderscript/1.0/default/Android.bp index c4bd1b36a..b9969697f 100644 --- a/renderscript/1.0/default/Android.bp +++ b/renderscript/1.0/default/Android.bp @@ -18,4 +18,11 @@ cc_library_shared { "libutils", "android.hardware.renderscript@1.0", ], + + product_variables: { + override_rs_driver: { + cflags: ["-DOVERRIDE_RS_DRIVER=%s"], + }, + }, + } diff --git a/renderscript/1.0/default/Context.cpp b/renderscript/1.0/default/Context.cpp index 389b6e7bc..fbfc6522c 100644 --- a/renderscript/1.0/default/Context.cpp +++ b/renderscript/1.0/default/Context.cpp @@ -16,7 +16,19 @@ Context::Context(uint32_t sdkVersion, ContextType ct, int32_t flags) { uint32_t _sdkVersion = sdkVersion; RsContextType _ct = static_cast<RsContextType>(ct); int32_t _flags = flags; - mContext = Device::getHal().ContextCreate(_dev, _version, _sdkVersion, _ct, _flags); + const char* driverName = nullptr; + +#ifdef OVERRIDE_RS_DRIVER +#define XSTR(S) #S +#define STR(S) XSTR(S) +#define OVERRIDE_RS_DRIVER_STRING STR(OVERRIDE_RS_DRIVER) + static std::string driverString(OVERRIDE_RS_DRIVER_STRING); + driverName = driverString.c_str(); +#undef XSTR +#undef STR +#endif // OVERRIDE_RS_DRIVER + mContext = Device::getHal().ContextCreateVendor(_dev, _version, _sdkVersion, + _ct, _flags, driverName); } diff --git a/renderscript/1.0/default/Device.cpp b/renderscript/1.0/default/Device.cpp index 86cf8ebb5..3aae06097 100644 --- a/renderscript/1.0/default/Device.cpp +++ b/renderscript/1.0/default/Device.cpp @@ -42,91 +42,150 @@ dispatchTable loadHAL() { void* handle = dlopen(filename, RTLD_LAZY | RTLD_LOCAL); dispatchTable dispatchHal = { - .SetNativeLibDir = (SetNativeLibDirFnPtr)nullptr, - - .Allocation1DData = (Allocation1DDataFnPtr)dlsym(handle, "rsAllocation1DData"), - .Allocation1DElementData = (Allocation1DElementDataFnPtr)nullptr, - .Allocation1DRead = (Allocation1DReadFnPtr)dlsym(handle, "rsAllocation1DRead"), - .Allocation2DData = (Allocation2DDataFnPtr)dlsym(handle, "rsAllocation2DData"), - .Allocation2DRead = (Allocation2DReadFnPtr)dlsym(handle, "rsAllocation2DRead"), - .Allocation3DData = (Allocation3DDataFnPtr)dlsym(handle, "rsAllocation3DData"), - .Allocation3DRead = (Allocation3DReadFnPtr)dlsym(handle, "rsAllocation3DRead"), - .AllocationAdapterCreate = (AllocationAdapterCreateFnPtr)dlsym(handle, "rsAllocationAdapterCreate"), - .AllocationAdapterOffset = (AllocationAdapterOffsetFnPtr)dlsym(handle, "rsAllocationAdapterOffset"), - .AllocationCopy2DRange = (AllocationCopy2DRangeFnPtr)dlsym(handle, "rsAllocationCopy2DRange"), - .AllocationCopy3DRange = (AllocationCopy3DRangeFnPtr)dlsym(handle, "rsAllocationCopy3DRange"), - .AllocationCopyToBitmap = (AllocationCopyToBitmapFnPtr)dlsym(handle, "rsAllocationCopyToBitmap"), - .AllocationCreateFromBitmap = (AllocationCreateFromBitmapFnPtr)dlsym(handle, "rsAllocationCreateFromBitmap"), - .AllocationCreateStrided = (AllocationCreateStridedFnPtr)dlsym(handle, "rsAllocationCreateStrided"), - .AllocationCreateTyped = (AllocationCreateTypedFnPtr)dlsym(handle, "rsAllocationCreateTyped"), - .AllocationCubeCreateFromBitmap = (AllocationCubeCreateFromBitmapFnPtr)dlsym(handle, "rsAllocationCubeCreateFromBitmap"), - .AllocationElementData = (AllocationElementDataFnPtr)dlsym(handle, "rsAllocationElementData"), - .AllocationElementRead = (AllocationElementReadFnPtr)dlsym(handle, "rsAllocationElementRead"), - .AllocationGenerateMipmaps = (AllocationGenerateMipmapsFnPtr)dlsym(handle, "rsAllocationGenerateMipmaps"), - .AllocationGetPointer = (AllocationGetPointerFnPtr)dlsym(handle, "rsAllocationGetPointer"), - .AllocationGetSurface = (AllocationGetSurfaceFnPtr)dlsym(handle, "rsAllocationGetSurface"), - .AllocationGetType = (AllocationGetTypeFnPtr)dlsym(handle, "rsaAllocationGetType"), - .AllocationIoReceive = (AllocationIoReceiveFnPtr)dlsym(handle, "rsAllocationIoReceive"), - .AllocationIoSend = (AllocationIoSendFnPtr)dlsym(handle, "rsAllocationIoSend"), - .AllocationRead = (AllocationReadFnPtr)dlsym(handle, "rsAllocationRead"), - .AllocationResize1D = (AllocationResize1DFnPtr)dlsym(handle, "rsAllocationResize1D"), - .AllocationSetSurface = (AllocationSetSurfaceFnPtr)dlsym(handle, "rsAllocationSetSurface"), - .AllocationSetupBufferQueue = (AllocationSetupBufferQueueFnPtr)dlsym(handle, "rsAllocationSetupBufferQueue"), - .AllocationShareBufferQueue = (AllocationShareBufferQueueFnPtr)dlsym(handle, "rsAllocationShareBufferQueue"), - .AllocationSyncAll = (AllocationSyncAllFnPtr)dlsym(handle, "rsAllocationSyncAll"), + .SetNativeLibDir = (SetNativeLibDirFnPtr) nullptr, + + .Allocation1DData = + (Allocation1DDataFnPtr)dlsym(handle, "rsAllocation1DData"), + .Allocation1DElementData = (Allocation1DElementDataFnPtr) nullptr, + .Allocation1DRead = + (Allocation1DReadFnPtr)dlsym(handle, "rsAllocation1DRead"), + .Allocation2DData = + (Allocation2DDataFnPtr)dlsym(handle, "rsAllocation2DData"), + .Allocation2DRead = + (Allocation2DReadFnPtr)dlsym(handle, "rsAllocation2DRead"), + .Allocation3DData = + (Allocation3DDataFnPtr)dlsym(handle, "rsAllocation3DData"), + .Allocation3DRead = + (Allocation3DReadFnPtr)dlsym(handle, "rsAllocation3DRead"), + .AllocationAdapterCreate = (AllocationAdapterCreateFnPtr)dlsym( + handle, "rsAllocationAdapterCreate"), + .AllocationAdapterOffset = (AllocationAdapterOffsetFnPtr)dlsym( + handle, "rsAllocationAdapterOffset"), + .AllocationCopy2DRange = (AllocationCopy2DRangeFnPtr)dlsym( + handle, "rsAllocationCopy2DRange"), + .AllocationCopy3DRange = (AllocationCopy3DRangeFnPtr)dlsym( + handle, "rsAllocationCopy3DRange"), + .AllocationCopyToBitmap = (AllocationCopyToBitmapFnPtr)dlsym( + handle, "rsAllocationCopyToBitmap"), + .AllocationCreateFromBitmap = (AllocationCreateFromBitmapFnPtr)dlsym( + handle, "rsAllocationCreateFromBitmap"), + .AllocationCreateStrided = (AllocationCreateStridedFnPtr)dlsym( + handle, "rsAllocationCreateStrided"), + .AllocationCreateTyped = (AllocationCreateTypedFnPtr)dlsym( + handle, "rsAllocationCreateTyped"), + .AllocationCubeCreateFromBitmap = + (AllocationCubeCreateFromBitmapFnPtr)dlsym( + handle, "rsAllocationCubeCreateFromBitmap"), + .AllocationElementData = (AllocationElementDataFnPtr)dlsym( + handle, "rsAllocationElementData"), + .AllocationElementRead = (AllocationElementReadFnPtr)dlsym( + handle, "rsAllocationElementRead"), + .AllocationGenerateMipmaps = (AllocationGenerateMipmapsFnPtr)dlsym( + handle, "rsAllocationGenerateMipmaps"), + .AllocationGetPointer = + (AllocationGetPointerFnPtr)dlsym(handle, "rsAllocationGetPointer"), + .AllocationGetSurface = + (AllocationGetSurfaceFnPtr)dlsym(handle, "rsAllocationGetSurface"), + .AllocationGetType = + (AllocationGetTypeFnPtr)dlsym(handle, "rsaAllocationGetType"), + .AllocationIoReceive = + (AllocationIoReceiveFnPtr)dlsym(handle, "rsAllocationIoReceive"), + .AllocationIoSend = + (AllocationIoSendFnPtr)dlsym(handle, "rsAllocationIoSend"), + .AllocationRead = + (AllocationReadFnPtr)dlsym(handle, "rsAllocationRead"), + .AllocationResize1D = + (AllocationResize1DFnPtr)dlsym(handle, "rsAllocationResize1D"), + .AllocationSetSurface = + (AllocationSetSurfaceFnPtr)dlsym(handle, "rsAllocationSetSurface"), + .AllocationSetupBufferQueue = (AllocationSetupBufferQueueFnPtr)dlsym( + handle, "rsAllocationSetupBufferQueue"), + .AllocationShareBufferQueue = (AllocationShareBufferQueueFnPtr)dlsym( + handle, "rsAllocationShareBufferQueue"), + .AllocationSyncAll = + (AllocationSyncAllFnPtr)dlsym(handle, "rsAllocationSyncAll"), .AssignName = (AssignNameFnPtr)dlsym(handle, "rsAssignName"), .ClosureCreate = (ClosureCreateFnPtr)dlsym(handle, "rsClosureCreate"), .ClosureSetArg = (ClosureSetArgFnPtr)dlsym(handle, "rsClosureSetArg"), - .ClosureSetGlobal = (ClosureSetGlobalFnPtr)dlsym(handle, "rsClosureSetGlobal"), - .ContextCreate = (ContextCreateFnPtr)dlsym(handle, "rsContextCreate"), - .ContextDeinitToClient = (ContextDeinitToClientFnPtr)dlsym(handle, "rsContextDeinitToClient"), - .ContextDestroy = (ContextDestroyFnPtr)dlsym(handle, "rsContextDestroy"), + .ClosureSetGlobal = + (ClosureSetGlobalFnPtr)dlsym(handle, "rsClosureSetGlobal"), + .ContextCreateVendor = + (ContextCreateVendorFnPtr)dlsym(handle, "rsContextCreateVendor"), + .ContextDeinitToClient = (ContextDeinitToClientFnPtr)dlsym( + handle, "rsContextDeinitToClient"), + .ContextDestroy = + (ContextDestroyFnPtr)dlsym(handle, "rsContextDestroy"), .ContextDump = (ContextDumpFnPtr)dlsym(handle, "rsContextDump"), .ContextFinish = (ContextFinishFnPtr)dlsym(handle, "rsContextFinish"), - .ContextGetMessage = (ContextGetMessageFnPtr)dlsym(handle, "rsContextGetMessage"), - .ContextInitToClient = (ContextInitToClientFnPtr)dlsym(handle, "rsContextInitToClient"), - .ContextPeekMessage = (ContextPeekMessageFnPtr)dlsym(handle, "rsContextPeekMessage"), - .ContextSendMessage = (ContextSendMessageFnPtr)dlsym(handle, "rsContextSendMessage"), - .ContextSetCacheDir = (ContextSetCacheDirFnPtr)dlsym(handle, "rsContextSetCacheDir"), - .ContextSetPriority = (ContextSetPriorityFnPtr)dlsym(handle, "rsContextSetPriority"), - .DeviceCreate = (DeviceCreateFnPtr)nullptr, - .DeviceDestroy = (DeviceDestroyFnPtr)nullptr, - .DeviceSetConfig = (DeviceSetConfigFnPtr)nullptr, - .ElementCreate2 = (ElementCreate2FnPtr)dlsym(handle, "rsElementCreate2"), + .ContextGetMessage = + (ContextGetMessageFnPtr)dlsym(handle, "rsContextGetMessage"), + .ContextInitToClient = + (ContextInitToClientFnPtr)dlsym(handle, "rsContextInitToClient"), + .ContextPeekMessage = + (ContextPeekMessageFnPtr)dlsym(handle, "rsContextPeekMessage"), + .ContextSendMessage = + (ContextSendMessageFnPtr)dlsym(handle, "rsContextSendMessage"), + .ContextSetCacheDir = + (ContextSetCacheDirFnPtr)dlsym(handle, "rsContextSetCacheDir"), + .ContextSetPriority = + (ContextSetPriorityFnPtr)dlsym(handle, "rsContextSetPriority"), + .DeviceCreate = (DeviceCreateFnPtr) nullptr, + .DeviceDestroy = (DeviceDestroyFnPtr) nullptr, + .DeviceSetConfig = (DeviceSetConfigFnPtr) nullptr, + .ElementCreate2 = + (ElementCreate2FnPtr)dlsym(handle, "rsElementCreate2"), .ElementCreate = (ElementCreateFnPtr)dlsym(handle, "rsElementCreate"), - .ElementGetNativeData = (ElementGetNativeDataFnPtr)dlsym(handle, "rsaElementGetNativeData"), - .ElementGetSubElements = (ElementGetSubElementsFnPtr)dlsym(handle, "rsaElementGetSubElements"), + .ElementGetNativeData = + (ElementGetNativeDataFnPtr)dlsym(handle, "rsaElementGetNativeData"), + .ElementGetSubElements = (ElementGetSubElementsFnPtr)dlsym( + handle, "rsaElementGetSubElements"), .GetName = (GetNameFnPtr)dlsym(handle, "rsaGetName"), - .InvokeClosureCreate = (InvokeClosureCreateFnPtr)dlsym(handle, "rsInvokeClosureCreate"), + .InvokeClosureCreate = + (InvokeClosureCreateFnPtr)dlsym(handle, "rsInvokeClosureCreate"), .ObjDestroy = (ObjDestroyFnPtr)dlsym(handle, "rsObjDestroy"), .SamplerCreate = (SamplerCreateFnPtr)dlsym(handle, "rsSamplerCreate"), - .ScriptBindAllocation = (ScriptBindAllocationFnPtr)dlsym(handle, "rsScriptBindAllocation"), + .ScriptBindAllocation = + (ScriptBindAllocationFnPtr)dlsym(handle, "rsScriptBindAllocation"), .ScriptCCreate = (ScriptCCreateFnPtr)dlsym(handle, "rsScriptCCreate"), - .ScriptFieldIDCreate = (ScriptFieldIDCreateFnPtr)dlsym(handle, "rsScriptFieldIDCreate"), - .ScriptForEach = (ScriptForEachFnPtr)nullptr, - .ScriptForEachMulti = (ScriptForEachMultiFnPtr)dlsym(handle, "rsScriptForEachMulti"), + .ScriptFieldIDCreate = + (ScriptFieldIDCreateFnPtr)dlsym(handle, "rsScriptFieldIDCreate"), + .ScriptForEach = (ScriptForEachFnPtr) nullptr, + .ScriptForEachMulti = + (ScriptForEachMultiFnPtr)dlsym(handle, "rsScriptForEachMulti"), .ScriptGetVarV = (ScriptGetVarVFnPtr)dlsym(handle, "rsScriptGetVarV"), - .ScriptGroup2Create = (ScriptGroup2CreateFnPtr)dlsym(handle, "rsScriptGroup2Create"), - .ScriptGroupCreate = (ScriptGroupCreateFnPtr)dlsym(handle, "rsScriptGroupCreate"), - .ScriptGroupExecute = (ScriptGroupExecuteFnPtr)dlsym(handle, "rsScriptGroupExecute"), - .ScriptGroupSetInput = (ScriptGroupSetInputFnPtr)dlsym(handle, "rsScriptGroupSetInput"), - .ScriptGroupSetOutput = (ScriptGroupSetOutputFnPtr)dlsym(handle, "rsScriptGroupSetOutput"), - .ScriptIntrinsicCreate = (ScriptIntrinsicCreateFnPtr)dlsym(handle, "rsScriptIntrinsicCreate"), + .ScriptGroup2Create = + (ScriptGroup2CreateFnPtr)dlsym(handle, "rsScriptGroup2Create"), + .ScriptGroupCreate = + (ScriptGroupCreateFnPtr)dlsym(handle, "rsScriptGroupCreate"), + .ScriptGroupExecute = + (ScriptGroupExecuteFnPtr)dlsym(handle, "rsScriptGroupExecute"), + .ScriptGroupSetInput = + (ScriptGroupSetInputFnPtr)dlsym(handle, "rsScriptGroupSetInput"), + .ScriptGroupSetOutput = + (ScriptGroupSetOutputFnPtr)dlsym(handle, "rsScriptGroupSetOutput"), + .ScriptIntrinsicCreate = (ScriptIntrinsicCreateFnPtr)dlsym( + handle, "rsScriptIntrinsicCreate"), .ScriptInvoke = (ScriptInvokeFnPtr)dlsym(handle, "rsScriptInvoke"), - .ScriptInvokeIDCreate = (ScriptInvokeIDCreateFnPtr)dlsym(handle, "rsScriptInvokeIDCreate"), + .ScriptInvokeIDCreate = + (ScriptInvokeIDCreateFnPtr)dlsym(handle, "rsScriptInvokeIDCreate"), .ScriptInvokeV = (ScriptInvokeVFnPtr)dlsym(handle, "rsScriptInvokeV"), - .ScriptKernelIDCreate = (ScriptKernelIDCreateFnPtr)dlsym(handle, "rsScriptKernelIDCreate"), + .ScriptKernelIDCreate = + (ScriptKernelIDCreateFnPtr)dlsym(handle, "rsScriptKernelIDCreate"), .ScriptReduce = (ScriptReduceFnPtr)dlsym(handle, "rsScriptReduce"), - .ScriptSetTimeZone = (ScriptSetTimeZoneFnPtr)dlsym(handle, "rsScriptSetTimeZone"), + .ScriptSetTimeZone = + (ScriptSetTimeZoneFnPtr)dlsym(handle, "rsScriptSetTimeZone"), .ScriptSetVarD = (ScriptSetVarDFnPtr)dlsym(handle, "rsScriptSetVarD"), .ScriptSetVarF = (ScriptSetVarFFnPtr)dlsym(handle, "rsScriptSetVarF"), .ScriptSetVarI = (ScriptSetVarIFnPtr)dlsym(handle, "rsScriptSetVarI"), .ScriptSetVarJ = (ScriptSetVarJFnPtr)dlsym(handle, "rsScriptSetVarJ"), - .ScriptSetVarObj = (ScriptSetVarObjFnPtr)dlsym(handle, "rsScriptSetVarObj"), - .ScriptSetVarVE = (ScriptSetVarVEFnPtr)dlsym(handle, "rsScriptSetVarVE"), + .ScriptSetVarObj = + (ScriptSetVarObjFnPtr)dlsym(handle, "rsScriptSetVarObj"), + .ScriptSetVarVE = + (ScriptSetVarVEFnPtr)dlsym(handle, "rsScriptSetVarVE"), .ScriptSetVarV = (ScriptSetVarVFnPtr)dlsym(handle, "rsScriptSetVarV"), .TypeCreate = (TypeCreateFnPtr)dlsym(handle, "rsTypeCreate"), - .TypeGetNativeData = (TypeGetNativeDataFnPtr)dlsym(handle, "rsaTypeGetNativeData"), + .TypeGetNativeData = + (TypeGetNativeDataFnPtr)dlsym(handle, "rsaTypeGetNativeData"), }; return dispatchHal; |