mirror of
https://github.com/hardkernel/kernel_common_drivers.git
synced 2026-06-25 12:03:48 +09:00
2b5fd04286
PD#SWPL-140850 Problem: 5.15 ioc move to uapi. Solution: 5.15 ioc move to uapi. Verify: t3. Change-Id: Icc1bd8efb807a84d55fd3b380fd3a016b34f4849 Signed-off-by: jialong.jiang <jialong.jiang@amlogic.com>
113 lines
3.0 KiB
C
113 lines
3.0 KiB
C
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
|
/*
|
|
* Copyright (c) 2019 Amlogic, Inc. All rights reserved.
|
|
*/
|
|
|
|
#ifndef _DV_IOC_H_
|
|
#define _DV_IOC_H_
|
|
|
|
#include <linux/types.h>
|
|
|
|
enum pq_item_e {
|
|
PQ_BRIGHTNESS = 0, /*Brightness */
|
|
PQ_CONTRAST = 1, /*Contrast */
|
|
PQ_COLORSHIFT = 2, /*ColorShift or Tint*/
|
|
PQ_SATURATION = 3 /*Saturation or color */
|
|
};
|
|
|
|
enum pq_reset_e {
|
|
RESET_ALL = 0, /*reset picture mode / pq for all picture mode*/
|
|
RESET_PQ_FOR_ALL = 1, /*reset pq for all picture mode*/
|
|
RESET_PQ_FOR_CUR = 2 /*reset pq for current picture mode */
|
|
};
|
|
|
|
struct pic_mode_info_s {
|
|
int pic_mode_id;
|
|
unsigned char name[32];
|
|
};
|
|
|
|
struct dv_pq_info_s {
|
|
int pic_mode_id;
|
|
enum pq_item_e item;
|
|
__s16 value;
|
|
};
|
|
|
|
struct dv_full_pq_info_s {
|
|
int pic_mode_id;
|
|
__s16 brightness; /*Brightness */
|
|
__s16 contrast; /*Contrast */
|
|
__s16 colorshift; /*ColorShift or Tint*/
|
|
__s16 saturation; /*Saturation or color */
|
|
};
|
|
|
|
struct dv_config_file_s {
|
|
unsigned char bin_name[256];
|
|
unsigned char cfg_name[256];
|
|
};
|
|
|
|
struct ambient_cfg_s {
|
|
__u32 update_flag;
|
|
__u32 ambient; /* 1<<16 */
|
|
__u32 t_rearLum;
|
|
__u32 t_frontLux;
|
|
__u32 t_whiteX; /* 1<<15 */
|
|
__u32 t_whiteY; /* 1<<15 */
|
|
__u32 dark_detail;
|
|
};
|
|
|
|
struct dv_config_data_s {
|
|
unsigned int file_name; // 0:cfg 1:bin
|
|
unsigned int file_size;
|
|
union {
|
|
void *file_data;
|
|
long long file_table;
|
|
};
|
|
};
|
|
|
|
#define DV_M 'D'
|
|
|
|
/* get Number of Picture Mode */
|
|
#define DV_IOC_GET_DV_PIC_MODE_NUM _IOR((DV_M), 0x0, int)
|
|
|
|
/* get Picture Mode Name of input pic_mode_id */
|
|
#define DV_IOC_GET_DV_PIC_MODE_NAME _IOWR((DV_M), 0x1, struct pic_mode_info_s)
|
|
|
|
/* get current active picture mode */
|
|
#define DV_IOC_GET_DV_PIC_MODE_ID _IOR((DV_M), 0x2, int)
|
|
|
|
/* select active picture mode */
|
|
#define DV_IOC_SET_DV_PIC_MODE_ID _IOW((DV_M), 0x3, int)
|
|
|
|
/* get single pq(contrast or brightness or colorshift or saturation) */
|
|
#define DV_IOC_GET_DV_SINGLE_PQ_VALUE _IOWR((DV_M), 0x4, struct dv_pq_info_s)
|
|
|
|
/* get all pq(contrast, brightness,colorshift ,saturation) */
|
|
#define DV_IOC_GET_DV_FULL_PQ_VALUE _IOWR((DV_M), 0x5, struct dv_full_pq_info_s)
|
|
|
|
/* set single pq(contrast or brightness or colorshift or saturation) */
|
|
#define DV_IOC_SET_DV_SINGLE_PQ_VALUE _IOWR((DV_M), 0x6, struct dv_pq_info_s)
|
|
|
|
/* set all pq(contrast,brightness ,colorshift , saturation) */
|
|
#define DV_IOC_SET_DV_FULL_PQ_VALUE _IOWR((DV_M), 0x7, struct dv_full_pq_info_s)
|
|
|
|
/* reset all pq item for current picture mode */
|
|
#define DV_IOC_SET_DV_PQ_RESET _IOWR((DV_M), 0x8, enum pq_reset_e)
|
|
|
|
/* set Amlogic_cfg.txt and dv_config.bin dir */
|
|
#define DV_IOC_SET_DV_CONFIG_FILE _IOW((DV_M), 0x9, struct dv_config_file_s)
|
|
|
|
/* set ambient light */
|
|
#define DV_IOC_SET_DV_AMBIENT _IOW((DV_M), 0xa, struct ambient_cfg_s)
|
|
|
|
/*1: disable dv GD, 0: restore dv GD*/
|
|
#define DV_IOC_CONFIG_DV_BL _IOW((DV_M), 0xb, int)
|
|
|
|
/*1: enable dv dark detail, 0: disable dv GD*/
|
|
#define DV_IOC_SET_DV_DARK_DETAIL _IOW((DV_M), 0xc, int)
|
|
|
|
/* set Amlogic_cfg.txt and dv_config.bin data */
|
|
#define DV_IOC_SET_DV_CONFIG_DATA _IOW((DV_M), 0xd, struct dv_config_data_s)
|
|
|
|
#endif
|
|
|