166f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin/* Copyright (c) 2012-2016, The Linux Foundation. All rights reserved. 266f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* 366f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* Redistribution and use in source and binary forms, with or without 466f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* modification, are permitted provided that the following conditions are 566f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* met: 666f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* * Redistributions of source code must retain the above copyright 766f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* notice, this list of conditions and the following disclaimer. 866f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* * Redistributions in binary form must reproduce the above 966f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* copyright notice, this list of conditions and the following 1066f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* disclaimer in the documentation and/or other materials provided 1166f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* with the distribution. 1266f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* * Neither the name of The Linux Foundation nor the names of its 1366f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* contributors may be used to endorse or promote products derived 1466f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* from this software without specific prior written permission. 1566f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* 1666f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED 1766f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 1866f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT 1966f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 2066f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2166f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2266f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 2366f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 2466f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 2566f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 2666f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2766f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin* 2866f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin*/ 2966f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin 3066f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin// Camera dependencies 3166f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin#include "QCamera2Factory.h" 3266f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin#include "HAL3/QCamera3VendorTags.h" 3366f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin 3466f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjinstatic hw_module_t camera_common = { 351687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .tag = HARDWARE_MODULE_TAG, 361687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .module_api_version = CAMERA_MODULE_API_VERSION_2_4, 371687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .hal_api_version = HARDWARE_HAL_API_VERSION, 381687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .id = CAMERA_HARDWARE_MODULE_ID, 391687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .name = "QCamera Module", 401687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .author = "Qualcomm Innovation Center Inc", 411687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .methods = &qcamera::QCamera2Factory::mModuleMethods, 421687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .dso = NULL, 431687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .reserved = {0} 4466f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin}; 4566f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin 4666f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjincamera_module_t HAL_MODULE_INFO_SYM = { 471687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .common = camera_common, 481687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .get_number_of_cameras = qcamera::QCamera2Factory::get_number_of_cameras, 491687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .get_camera_info = qcamera::QCamera2Factory::get_camera_info, 501687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .set_callbacks = qcamera::QCamera2Factory::set_callbacks, 511687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .get_vendor_tag_ops = qcamera::QCamera3VendorTags::get_vendor_tag_ops, 521687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .open_legacy = qcamera::QCamera2Factory::open_legacy, 531687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .set_torch_mode = qcamera::QCamera2Factory::set_torch_mode, 541687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .init = NULL, 551687b440bcda598006d1950f74915f0cea3b66a3Mekala Natarajan .reserved = {0} 5666f9976540f830b0090ff2ca557b0364a53f2008Patrick Tjin}; 57