/*
 * Copyright (C) 2023 Spacemit Limited
 * All Rights Reserved.
 */

#ifndef __SPM_COMM_CAM_H__
#define __SPM_COMM_CAM_H__

/* typedef enum spmCAM_ISP_VI_WORK_MODE_E {
    ISP_VI_WORK_MODE_SINGLE_PIPE,
    ISP_VI_WORK_MODE_DUAL_PIPE,
    ISP_VI_WORK_MODE_HDR,
    ISP_VI_WORK_MODE_RGBW,
    ISP_VI_WORK_MODE_RGBIR,
    ISP_VI_WORK_MODE_SINGLE_PIPE_HIGHSPEED,
    ISP_VI_WORK_MODE_OFFLINE_SINGLE,
    ISP_VI_WORK_MODE_OFFLINE_HDR,
    ISP_VI_WORK_MODE_MAX,
} CAM_ISP_VI_WORK_MODE_E; */

typedef enum spmCAM_SENSOR_RAWTYPE_E {
    CAM_SENSOR_RAWTYPE_RAW8 = 1,
    CAM_SENSOR_RAWTYPE_RAW10,
    CAM_SENSOR_RAWTYPE_RAW12,
    CAM_SENSOR_RAWTYPE_RAW14,
    CAM_SENSOR_RAWTYPE_INVALID,
} CAM_SENSOR_RAWTYPE_E;

typedef enum spmISP_BAYER_PATTERN_E {
    ISP_BAYER_PATTERN_RGGB,
    ISP_BAYER_PATTERN_GRBG,
    ISP_BAYER_PATTERN_GBRG,
    ISP_BAYER_PATTERN_BGGR,
    ISP_BAYER_PATTERN_MONO,
    ISP_BAYER_PATTERN_INVALID,
} ISP_BAYER_PATTERN_E;

typedef enum spmCAM_ISP_SCENE_E {
    CAM_ISP_SCENE_PREVIEW,
    CAM_ISP_SCENE_VIDEO,
    CAM_ISP_SCENE_INVALID,
} CAM_ISP_SCENE_E;

#endif /* __SPM_COMM_CAM_H__ */
