diff options
-rwxr-xr-x | extract-files.sh | 1 | ||||
-rw-r--r-- | libshims/Android.mk | 9 | ||||
-rw-r--r-- | libshims/camera_sdm660_shim.cpp | 9 | ||||
-rw-r--r-- | sdm660.mk | 4 |
4 files changed, 23 insertions, 0 deletions
diff --git a/extract-files.sh b/extract-files.sh index 8528cec..c50bac1 100755 --- a/extract-files.sh +++ b/extract-files.sh @@ -73,6 +73,7 @@ function blob_fixup() { vendor/lib/hw/camera.sdm660.so) patchelf --replace-needed libMiWatermark.so libMiWatermark_shim.so "${2}" + patchelf --add-needed libcamera_sdm660_shim.so "${2}" ;; esac } diff --git a/libshims/Android.mk b/libshims/Android.mk new file mode 100644 index 0000000..ce2b87e --- /dev/null +++ b/libshims/Android.mk @@ -0,0 +1,9 @@ +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) +LOCAL_SRC_FILES := camera_sdm660_shim.cpp +LOCAL_SHARED_LIBRARIES := libui libutils +LOCAL_MODULE := libcamera_sdm660_shim +LOCAL_MODULE_TAGS := optional +LOCAL_PROPRIETARY_MODULE := true +include $(BUILD_SHARED_LIBRARY) diff --git a/libshims/camera_sdm660_shim.cpp b/libshims/camera_sdm660_shim.cpp new file mode 100644 index 0000000..c18e5a4 --- /dev/null +++ b/libshims/camera_sdm660_shim.cpp @@ -0,0 +1,9 @@ +#include <stdint.h> + +namespace android { + extern "C" void _ZN7android13GraphicBuffer4lockEjPPvPiS3_(uint32_t inUsage, void** vaddr, int32_t* outBytesPerPixel, int32_t* outBytesPerStride); + + extern "C" void _ZN7android13GraphicBuffer4lockEjPPv(uint32_t inUsage, void** vaddr) { + _ZN7android13GraphicBuffer4lockEjPPvPiS3_(inUsage, vaddr, nullptr, nullptr); + } +} @@ -389,6 +389,10 @@ PRODUCT_COPY_FILES += \ $(COMMON_PATH)/sensors/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf \ $(COMMON_PATH)/sensors/sensor_def_qcomdev.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/sensor_def_qcomdev.conf +# Shims +PRODUCT_PACKAGES += \ + libcamera_sdm660_shim + # Tetheroffload PRODUCT_PACKAGES += \ ipacm \ |