Files
android_kernel_samsung_sm86…/drivers/cam_isp/cam_isp_dev.h
Jigarkumar Zala 03b6c2140f msm: camera: common: Make platform register centralized
Currently camera modules platform registration/remove function
is being called as a part of module_init function individually.
Building camera as module, current infrastructure cannot support
it, as DLKM only support single module_init/exit function.
This change enables that support by combining all platform
entry/remove functions centrally. Also, remove all submodule
makefiles and combined into one root makefile in order to generate
single kernel object file to dynamically loading the kernel module
in case of DLKM compilation.

CRs-Fixed: 2569808
Change-Id: I59db3ed6cef60123e474db2f222c39836056bd6e
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
Signed-off-by: Karthik Jayakumar <kjayakum@codeaurora.org>
2019-12-04 12:33:01 -08:00

42 linhas
1.1 KiB
C

/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
*/
#ifndef _CAM_ISP_DEV_H_
#define _CAM_ISP_DEV_H_
#include "cam_subdev.h"
#include "cam_hw_mgr_intf.h"
#include "cam_context.h"
#include "cam_isp_context.h"
/**
* struct cam_isp_dev - Camera ISP V4l2 device node
*
* @sd: Commone camera subdevice node
* @ctx: Isp base context storage
* @ctx_isp: Isp private context storage
* @isp_mutex: ISP dev mutex
* @open_cnt: Open device count
*/
struct cam_isp_dev {
struct cam_subdev sd;
struct cam_context ctx[CAM_CTX_MAX];
struct cam_isp_context ctx_isp[CAM_CTX_MAX];
struct mutex isp_mutex;
int32_t open_cnt;
};
/**
* @brief : API to register ISP Dev to platform framework.
* @return struct platform_device pointer on on success, or ERR_PTR() on error.
*/
int cam_isp_dev_init_module(void);
/**
* @brief : API to remove ISP Dev from platform framework.
*/
void cam_isp_dev_exit_module(void);
#endif /* __CAM_ISP_DEV_H__ */