Message ID | 20190809100406.22559-1-jacopo@jmondi.org |
---|---|
Headers | show |
Series |
|
Related | show |
Hello, I have now pushed the first 5 patches in the series and will re-submit the camera HAL implementation for one last review round. Thanks j On Fri, Aug 09, 2019 at 12:03:59PM +0200, Jacopo Mondi wrote: > Hello, > third version of initial Android Camera HAL implementation. > > I addressed (most) of Laurent's comments on v2, except the one making the > CameraHalManager a singleton and point the camera_module_t operations to its > static methods. > > I think the result is almost ready for merge, one last thing is the deletion of > the components created at CameraHalManager::init() time, such as proxies and > their associated data. Valgrind shows a big leak of camera_metadata_t packages, > created when static informations are required for the first time or when a > template request is requested, and deleted at CameraDevice delete time. > Being the CameraHalManager a static member of the camera module, its destructor > does not called at library unload time, causing memory to be effectively leaked. > > While this might be a minor issue, as library unloading should only happens at > system teardown time, this is something worth reporting and maybe investigating. > > Thanks > j > > Jacopo Mondi (6): > licenses: add Apache-2.0 license > include: android: Add Android headers from Cros > include: android: Add SPDX tags > android: Add camera metadata library > android: metadata: Add SPDX tag > android: hal: Add Camera3 HAL > > .../libhardware/include/hardware/camera3.h | 3094 +++++++++++++++++ > .../include/hardware/camera_common.h | 917 +++++ > .../libhardware/include/hardware/fb.h | 174 + > .../libhardware/include/hardware/gralloc.h | 385 ++ > .../libhardware/include/hardware/hardware.h | 239 ++ > include/android/meson.build | 5 + > .../android/metadata/camera_metadata_hidden.h | 101 + > .../android/metadata/system/camera_metadata.h | 581 ++++ > .../metadata/system/camera_metadata_tags.h | 1006 ++++++ > .../metadata/system/camera_vendor_tags.h | 159 + > .../android/system/core/include/android/log.h | 145 + > .../system/core/include/cutils/compiler.h | 45 + > .../core/include/cutils/native_handle.h | 70 + > .../system/core/include/system/camera.h | 299 ++ > .../system/core/include/system/graphics.h | 764 ++++ > .../system/core/include/system/window.h | 955 +++++ > include/meson.build | 1 + > licenses/apache-2.0.txt | 202 ++ > meson_options.txt | 5 + > src/android/camera3_hal.cpp | 111 + > src/android/camera_device.cpp | 817 +++++ > src/android/camera_device.h | 63 + > src/android/camera_hal_manager.cpp | 142 + > src/android/camera_hal_manager.h | 47 + > src/android/camera_proxy.cpp | 199 ++ > src/android/camera_proxy.h | 45 + > src/android/meson.build | 15 + > src/android/metadata/camera_metadata.c | 1205 +++++++ > .../metadata/camera_metadata_tag_info.c | 2812 +++++++++++++++ > src/android/thread_rpc.cpp | 42 + > src/android/thread_rpc.h | 54 + > src/libcamera/meson.build | 9 + > src/meson.build | 4 + > 33 files changed, 14712 insertions(+) > create mode 100644 include/android/hardware/libhardware/include/hardware/camera3.h > create mode 100644 include/android/hardware/libhardware/include/hardware/camera_common.h > create mode 100644 include/android/hardware/libhardware/include/hardware/fb.h > create mode 100644 include/android/hardware/libhardware/include/hardware/gralloc.h > create mode 100644 include/android/hardware/libhardware/include/hardware/hardware.h > create mode 100644 include/android/meson.build > create mode 100644 include/android/metadata/camera_metadata_hidden.h > create mode 100644 include/android/metadata/system/camera_metadata.h > create mode 100644 include/android/metadata/system/camera_metadata_tags.h > create mode 100644 include/android/metadata/system/camera_vendor_tags.h > create mode 100644 include/android/system/core/include/android/log.h > create mode 100644 include/android/system/core/include/cutils/compiler.h > create mode 100644 include/android/system/core/include/cutils/native_handle.h > create mode 100644 include/android/system/core/include/system/camera.h > create mode 100644 include/android/system/core/include/system/graphics.h > create mode 100644 include/android/system/core/include/system/window.h > create mode 100644 licenses/apache-2.0.txt > create mode 100644 src/android/camera3_hal.cpp > create mode 100644 src/android/camera_device.cpp > create mode 100644 src/android/camera_device.h > create mode 100644 src/android/camera_hal_manager.cpp > create mode 100644 src/android/camera_hal_manager.h > create mode 100644 src/android/camera_proxy.cpp > create mode 100644 src/android/camera_proxy.h > create mode 100644 src/android/meson.build > create mode 100644 src/android/metadata/camera_metadata.c > create mode 100644 src/android/metadata/camera_metadata_tag_info.c > create mode 100644 src/android/thread_rpc.cpp > create mode 100644 src/android/thread_rpc.h > > -- > 2.22.0 >