45 lines
1.7 KiB
C
45 lines
1.7 KiB
C
/********************************************************************
|
|
* Copyright (c) 2020 Kneron, Inc. All Rights Reserved.
|
|
*
|
|
* The information contained herein is property of Kneron, Inc.
|
|
* Terms and conditions of usage are described in detail in Kneron
|
|
* STANDARD SOFTWARE LICENSE AGREEMENT.
|
|
*
|
|
* Licensees are granted free, non-transferable use of the information.
|
|
* NO WARRANTY of ANY KIND is provided. This heading must NOT be removed
|
|
* from the file.
|
|
********************************************************************/
|
|
|
|
/**@addtogroup KDEV_SENSOR KDEV_SENSOR
|
|
* @{
|
|
* @brief Kneron sensor device interface
|
|
*
|
|
* @copyright Copyright (C) 2020 Kneron, Inc. All rights reserved.
|
|
*/
|
|
|
|
#ifndef __KDEV_SENSOR_H__
|
|
#define __KDEV_SENSOR_H__
|
|
|
|
#include "kdev_status.h"
|
|
#include "kmdw_sensor.h"
|
|
|
|
struct sensor_ops {
|
|
kdev_status_t (*s_power) (uint32_t on);
|
|
kdev_status_t (*reset) (void);
|
|
kdev_status_t (*s_stream) (uint32_t enable);
|
|
kdev_status_t (*enum_fmt) (uint32_t index, uint32_t *fourcc);
|
|
kdev_status_t (*get_fmt) (struct cam_format *format);
|
|
kdev_status_t (*set_fmt) (struct cam_format *format);
|
|
kdev_status_t (*set_gain) (uint32_t gain1, uint32_t gain2);
|
|
kdev_status_t (*set_aec) (struct cam_sensor_aec *aec_p);
|
|
kdev_status_t (*set_exp_time)(uint32_t gain1, uint32_t gain2);
|
|
kdev_status_t (*get_lux) (uint16_t *expo, uint8_t *pre_gain, uint8_t *post_gain, uint8_t *global_gain, uint8_t *y_average);
|
|
kdev_status_t (*led_switch) (uint32_t on);
|
|
kdev_status_t (*set_mirror) (uint32_t enable);
|
|
kdev_status_t (*set_flip) (uint32_t enable);
|
|
uint32_t (*get_dev_id) (void);
|
|
};
|
|
|
|
#endif /* __KDEV_SENSOR_H__ */
|
|
/** @}*/
|