From 9fe4b83c2961de707dddeef231dc9682a16d4789 Mon Sep 17 00:00:00 2001 From: Luca Stefani Date: Tue, 25 Apr 2017 21:58:15 +0200 Subject: [PATCH] msm8976-common: Add libcamera_client shim Change-Id: I4cc4eb52bc41e5174342e5571f096edb0e5a5c75 --- camera/Android.mk | 12 +++++++++++ camera/CameraParameters.cpp | 26 ++++++++++++++++++++++++ camera/CameraParameters.h | 28 ++++++++++++++++++++++++++ include/camera/CameraParametersExtra.h | 27 ------------------------- msm8976.mk | 3 ++- rootdir/etc/init.qcom.rc | 2 +- 6 files changed, 69 insertions(+), 29 deletions(-) create mode 100644 camera/CameraParameters.cpp create mode 100644 camera/CameraParameters.h delete mode 100644 include/camera/CameraParametersExtra.h diff --git a/camera/Android.mk b/camera/Android.mk index 696ab24..b706d6b 100644 --- a/camera/Android.mk +++ b/camera/Android.mk @@ -33,3 +33,15 @@ LOCAL_MODULE_TAGS := optional LOCAL_32_BIT_ONLY := true include $(BUILD_SHARED_LIBRARY) + +include $(CLEAR_VARS) + +LOCAL_SRC_FILES := \ + CameraParameters.cpp + +LOCAL_MODULE := libcamera_parameters_shim +LOCAL_MODULE_CLASS := SHARED_LIBRARIES +LOCAL_MODULE_TAGS := optional + +LOCAL_32_BIT_ONLY := true +include $(BUILD_SHARED_LIBRARY) diff --git a/camera/CameraParameters.cpp b/camera/CameraParameters.cpp new file mode 100644 index 0000000..2855e2d --- /dev/null +++ b/camera/CameraParameters.cpp @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2017 The LineageOS Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "CameraParameters.h" + +namespace android { + +const char CameraParameters::KEY_OIS_SUPPORTED[] = "ois_supported"; +const char CameraParameters::KEY_SUPPORTED_EFFECT_PREVIEW_FPS_RANGE[] = "effect-available-fps-values"; +const char CameraParameters::PIXEL_FORMAT_YUV420SP_NV21[] = "yuv420sp"; +int CameraParameters::getInt64(const char *key) const { return -1; } + +}; // namespace android diff --git a/camera/CameraParameters.h b/camera/CameraParameters.h new file mode 100644 index 0000000..1d7b5eb --- /dev/null +++ b/camera/CameraParameters.h @@ -0,0 +1,28 @@ +/* + * Copyright (C) 2017 The LineageOS Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +namespace android { + +class CameraParameters +{ +public: + static const char KEY_OIS_SUPPORTED[]; + static const char KEY_SUPPORTED_EFFECT_PREVIEW_FPS_RANGE[]; + static const char PIXEL_FORMAT_YUV420SP_NV21[]; + int getInt64(const char *key) const; +}; + +}; // namespace android diff --git a/include/camera/CameraParametersExtra.h b/include/camera/CameraParametersExtra.h deleted file mode 100644 index d1e47b0..0000000 --- a/include/camera/CameraParametersExtra.h +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (C) 2016 The LineageOS Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#define CAMERA_PARAMETERS_EXTRA_C \ - const char CameraParameters::KEY_OIS_SUPPORTED[] = "ois_supported"; \ - const char CameraParameters::KEY_SUPPORTED_EFFECT_PREVIEW_FPS_RANGE[] = "effect-available-fps-values"; \ - const char CameraParameters::PIXEL_FORMAT_YUV420SP_NV21[] = "yuv420sp"; \ - int CameraParameters::getInt64(const char *key) const { return -1; } - -#define CAMERA_PARAMETERS_EXTRA_H \ - static const char KEY_OIS_SUPPORTED[]; \ - static const char KEY_SUPPORTED_EFFECT_PREVIEW_FPS_RANGE[]; \ - static const char PIXEL_FORMAT_YUV420SP_NV21[]; \ - int getInt64(const char *key) const; diff --git a/msm8976.mk b/msm8976.mk index c90bab7..e3cff00 100644 --- a/msm8976.mk +++ b/msm8976.mk @@ -101,7 +101,8 @@ PRODUCT_COPY_FILES += \ # Camera PRODUCT_PACKAGES += \ - camera.msm8952 + camera.msm8952 \ + libcamera_parameters_shim # Display PRODUCT_PACKAGES += \ diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc index 0d782b6..c7f144d 100644 --- a/rootdir/etc/init.qcom.rc +++ b/rootdir/etc/init.qcom.rc @@ -34,7 +34,7 @@ on early-init chmod 0755 /sys/kernel/debug on init - export LD_SHIM_LIBS /system/vendor/lib64/libizat_core.so|libshims_get_process_name.so + export LD_SHIM_LIBS /system/lib/libcamera_client.so|libcamera_parameters_shim.so:/system/vendor/lib64/libizat_core.so|libshims_get_process_name.so # Support legacy paths symlink /sdcard /storage/sdcard0