You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1007 lines
59 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/*
* Copyright (c) Hisilicon Technologies Co., Ltd. 2019-2020. All rights reserved.
* Description: IAPI head file for PDM
* Author: Hisilicon
* Create: 2019-8-8
*/
#ifndef __UAPI_PDM_H__
#define __UAPI_PDM_H__
#include "uapi_disp.h"
#include "uapi_video.h"
#include "uapi_panel.h"
#include "uapi_cec.h"
#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif
#define UAPI_PDM_MANUFATURE_NAME_LEN 16 /* manufature name length */ /* CNcomment:manufature 名字字长 */
#define UAPI_PDM_MODEL_NAME_LEN 16 /* model name length */ /* CNcomment:model名字字长 */
#define UAPI_PDM_SERIAL_NUM_LEN 64 /* serial number length */ /* CNcomment:串码长度 */
#define UAPI_PDM_MAC_ADDR_LEN 20 /* mac address length */ /* CNcomment:mac地址长度 */
#define UAPI_PDM_CHIP_SET_LEN 16 /* chip set len */ /* CNcomment:chip set长度 */
#define UAPI_PDM_EPI_DATA_LEN 24 /* EPI data length */ /* CNcomment:EPI数据长度 */
#define UAPI_PDM_FUNCTION_MASK_LEN 256 /* function mask length */ /* CNcomment:函数掩码长度 */
#define UAPI_PDM_PQ_FILE_NAME_LEN 32 /* PQ file name length */ /* CNcomment:pq文件名长度 */
/*
* PDM pdm tcon infomatino
* CNcomment:tcon 信息
*/
typedef struct {
td_u8 name[UAPI_PDM_PQ_FILE_NAME_LEN]; /* name */ /* CNcomment:tcon信息文件名 */
} uapi_pdm_iapi_pdm_tcon_info;
/*
* PDM hdmi TX color space parameter
* CNcomment:hdmi输出颜色空间的参数
*/
typedef enum {
UAPI_HDMITX_COLORSPACE_RGB444, /* type of hdmi colorspace is RGB444 */ /* CNcomment:hdmi输出类型RGB444 */
UAPI_HDMITX_COLORSPACE_YUV422, /* type of hdmi colorspace is YUV42 */ /* CNcomment:hdmi输出类型YUV422 */
UAPI_HDMITX_COLORSPACE_YUV444, /* type of hdmi colorspace is YUV444 */ /* CNcomment:hdmi输出类型YUV444 */
UAPI_HDMITX_COLORSPACE_YUV420, /* type of hdmi colorspace is YUV420 */ /* CNcomment:hdmi输出类型YUV420 */
} uapi_hdmitx_color_space;
/*
* PDM hdmi RX cec config
* CNcomment:hdmi输入端口cec配置
*/
typedef struct {
td_u32 cec_enable; /* If need cec function (1—yes 0—no */ /* CNcomment:需要cec功能设为1否则为0 */
td_u32 cec_wakeup_enable; /* enable or disable hdmirx cec wakeup function(1—yes 0—no */
/* CNcommencec唤醒功能使能与否 */
} uapi_pdm_hdmirx_cec_cfg;
/*
* PDM hdmi config information
* CNcomment: hdmi配置信息
*/
typedef struct {
td_u32 hdcp_enable; /* enable or disable HDCP function */ /* CNcomment:HDCP功能是否使能 */
td_u32 hdcp_mode; /* 0--AUTO, 1--HDCP 1.4 2--HDCP 2.x */ /* CNcoment:选择模式 0为AUTO, 1为HDCP 1.4, 2为HDCP 2.x */
td_u32 cec_enable; /* enable or disable CEC function */ /* CNcomment:是否使能CEC功能 */
uapi_cec_device_type cec_mode; /* cec mode select */ /* CNcomment:cec模式选择 */
} uapi_pdm_hdmi_config_info;
/*
* PDM basic info
* CNcomment:pdm的basic info
*/
typedef struct { /* First block, size 1K bytes, to store the basic insformation of device. */
/* CNcomment:第一个分区1K大小存设备基本信息 */
td_u32 tag; /* The value 4 is fixed to 0x494E464F 'I':0x49 'N':0x4E 'F':0x46 'O':0x4F.
It is used to identify the effectiveness of this device info section. If the
number transfered by ASCII is not 'INFO', the SDK will treat this partition as
an illegal partition, and it cannot identify and process device info. */
/* CNcomment:device info分区的识别码字段, 为INFO的4个ASCII码:0x494E464F */
td_u32 major_device_info_version; /* Version of the Huanglong's device_info structure modification */
/* CNcomment:vendor更新版本version号 */
td_u32 minor_device_info_version; /* Version of the device Vendor's device_info structure modification */
/* CNcomment:device供应商更新版本version号 */
td_u32 hardware_vendor_id; /* Hardware vendor id */ /* CNcomment:硬件供应商ID号 */
td_u32 major_hardware_version; /* Major hardware version number */ /* CNcomment:硬件版本major号 */
td_u32 minor_hardware_version; /* Minor hardware version number */ /* CNcomment:硬件版本minor号 */
td_u32 software_vendor_id; /* Software vendor id CNcomment:软件供应商ID号 */
td_char manufacture_name[UAPI_PDM_MANUFATURE_NAME_LEN]; /* 16 len Hardware manufacturer name, endwith '\0' */
/* CNcomment:软件供应商ID号 */
td_char model_name[UAPI_PDM_MODEL_NAME_LEN]; /* 16 length device model name, end with '\0' */
/* CNcomment:device模块名 */
td_u32 model_id; /* device model ID */ /* CNcomment:device模块ID */
td_u32 product_code; /* Production code */ /* CNcomment:产品编码 */
td_u32 production_year; /* Production Year */ /* CNcomment:生产年份 */
td_u32 production_week; /* Production Week */ /* CNcomment:生产周数 */
td_u64 device_id; /* device ID */ /* CNcomment:device ID */
/* 32 length device serial number or GUID, store as string value, end with '\0'. When serial number use GUID
format, such as "123e4567-e89b-12d3-a456-426655440000", the storaged string must remove the dash and
the end character('\0'), the storaged string is "123e4567e89b12d3a456426655440000" */
/* CNcomment:32字节长的产品序列号/GUID以'\0'结尾的字符串形式保存如果产品编号用GUID格式则需要做修剪例如
"123e4567-e89b-12d3-a456-426655440000" -> "123e4567e89b12d3a456426655440000" */
td_char serial_number[UAPI_PDM_SERIAL_NUM_LEN];
td_u32 serial_number_int; /* device serial number, store as integer value */
/* CNcomment:device产品序列号int方式存储 */
td_char chip_set[UAPI_PDM_CHIP_SET_LEN]; /* 16 length Chipset model, such as "reserved13", end with '\0' */
/* CNcomment:芯片组名称 */
td_u8 function_mask[UAPI_PDM_FUNCTION_MASK_LEN]; /* 256byte Mask of function list, each byte can
identify one function */
/* CNcomment:用于功能开关用于适配HDMI的相关开关 */
td_u32 basic_info_crc32; /* The CRC32 of basic information(first block) */ /* CNcomment: basic info 的CRC校验码 */
} uapi_pdm_basic_info;
/*
* PDM pdm amp info
* CNcomment:amp信息类型
*/
typedef struct {
td_u32 device_type; /* device types */ /* CNcomment:设备类型 */
td_u32 device_addr; /* i2c addr of amp */ /* CNCOMMENT:amp的i2c地址 */
td_u32 gpio_output_polarity; /* polarity of gpio output */ /* CNcomment:gpio输出极性 */
td_u32 reset_gpio_num; /* reset gpio number */ /* CNcomment:reset gpio 编号 */
td_u32 hw_mute_gpio_num; /* mute gpio number */ /* CNcomment:屏蔽的gpio编号 */
td_u32 reset_polarity; /* reset polarityy */ /* CNcomment:复位gpioo极性 */
td_u32 hw_mute_polarity; /* mute polarity */ /* CNcomment:屏蔽极性 */
td_u32 i2c_num; /* i2c number */ /* CNcomment:I2C编号 */
} uapi_pdm_amp_info;
/*
* PDM pmoc memory flag
* CNcomment:pmoc内存是能标志位
*/
typedef enum {
UAPI_PDM_PMOC_MEMORY_FLAG_RUN, /* run flage */ /* CNcomment:记忆待机运行标志位 */
UAPI_PDM_PMOC_MEMORY_FLAG_SUSPEND, /* suspend flage */ /* CNcomment:记忆待机进待机标志位 */
} uapi_pdm_pmoc_memory_flag;
/*
* PDM config information
* CNcomment:pdm deviceinfo分区的配置信息
*/
typedef enum {
UAPI_PDM_HDMI_ID_0 = 0,
UAPI_PDM_HDMI_ID_1 = 1,
UAPI_PDM_HDMI_ID_MAX
} uapi_pdm_hdmi_id;
typedef struct {
td_u8 mac_addr[UAPI_PDM_MAC_ADDR_LEN]; /* byte for MAC address */ /* CNcomment:用于存mac地址 */
td_u32 mem_size; /* RAM memory size, unit: MB */ /* CNcomment:RAM大小单位MB */
td_u32 flash_size; /* Flash memory size, unit: MB */ /* CNcomment:FLASH大小单位MB */
td_bool uart_enable; /* enable uart */ /* CNcomment:使能uart */
td_u32 wol_mode; /* wake up on lan mode */ /* CNcomment:网络唤醒模式位 */
uapi_pdm_pmoc_memory_flag pmoc_flag; /* the mode of memory stand by */ /* CNcomment:记忆待机模式选择 */
td_u32 boot_log_level; /* control log level */ /* CNcomment:控制boot打印级别 */
td_u32 panel_abnormal_count; /* record abnormal count to handle error scence */
/* CNcomment:记录异常panel计数用于处理异常场景 */
uapi_pdm_amp_info amp_info; /* amplifier's info */ /* CNcomment:功放的信息 */
/* include HDCP&CEC config CNcomment:包含HDMI的HDCP和CEC配置信息 */
uapi_pdm_hdmi_config_info hdmi_cfg_info[UAPI_PDM_HDMI_ID_MAX]; /* hdmi config info */ /* CNcomment:hdmi配置信息 */
uapi_pdm_hdmirx_cec_cfg hdmirx_cfg; /* hdmi rx config */ /* CNcomment:HDMIRX CEC 模式配置信息 */
} uapi_pdm_config_info;
/*
* PDM hdcp infomation
* CNcomment:device info分区的hdcp信息
*/
typedef struct {
/* Second block, size 1K Bytes, to store the HDCP key information */ /* CNcomment:第二个分区1K存HDCP的信息 */
td_u32 hdcp_14_tx_key_offset; /* HDCP 1.4 TX key offset from the begining of this partition,
value is fixed at 0x4000 */
/* CNcomment:HDCP 1.4 TX key字段以此分区开始的偏移量默认0x4000 */
td_u32 hdcp_14_tx_key_length; /* HDCP 1.4 TX key length, if length == 0, current hdcp key is invalid */
/* CNcomment:HDCP 1.4 TX key字段的长度若为0表示无效 */
td_u32 hdcp_14_rx_key_offset; /* HDCP 1.4 RX key offset from the begining of this partition.
value is fixed at 0x4800 */ /* HDCP 1.4 RX key */
/* CNcomment:字段以此分区开始的偏移量默认0x4800 */
td_u32 hdcp_14_rx_key_length; /* HDCP 1.4 RX key length, if length=0, current hdcp key is invalid */
/* CNcomment:HDCP 1.4 RX key字段的长度若为0表示无效 */
td_u32 hdcp_2x_rx_key_offset; /* HDCP 2.x RX key offset */ /* CNcomment:HDCP 2.X RX key偏移 */
td_u32 hdcp_2x_rx_key_length; /* HDCP 2.x RX key length, if length=0, current hdcp key is invalid */
/* CNcomment:HDCP 2.x RX key字段的长度若为0表示无效 */
td_u32 hdcp_info_crc32; /* The CRC32 of HDCP key information(second block) */
/* CNcomment:hdcp info的CRC校验码 */
} uapi_pdm_hdcp_info;
/*
* PDM hdcp key id
* CNcomment:hdcp的id
*/
typedef enum {
UAPI_PDM_HDCP_KEY_ID_TX_14, /* HDCP KEY TX ID 14 */ /* CNcomment:hdcp id为TX14 */
UAPI_PDM_HDCP_KEY_ID_RX_14, /* HDCP KEY RX ID 14 */ /* CNcomment:hdcp id为RX14 */
UAPI_PDM_HDCP_KEY_ID_RX_23, /* HDCP KEY RX ID 23 */ /* CNcomment:hdcp id为RX23 */
UAPI_PDM_HDCP_KEY_ID_MAX /* no use number */ /* CNcomment:无效的值 */
} uapi_pdm_hdcp_key_id;
/*
* PDM UI formate
* CNcomment:ui格式类型
*/
typedef enum {
UAPI_UI_FORMAT_ARG8888, /* format of ui is ARG8888 */ /* CNcomment:ui格式为ARG888 */
UAPI_UI_FORMAT_ARG1555, /* format of ui is ARG1555 */ /* CNcomment:ui格式为ARG1555 */
UAPI_UI_FORMAT_MAX, /* no use para for protect44 */ /* CNcomment:无用的保护参数 */
} uapi_ui_format;
/*
* PDM disp flag
* CNcomment:主副显
*/
typedef enum {
UAPI_PDM_MAIN_DISP, /* main display */ /* CNcomment:主显示 */
UAPI_PDM_SECONDARY_DISP_1, /* secondary display1 */ /* CNcomment: 副显示1 */
UAPI_PDM_SECONDARY_DISP_2, /* secondary display2 */ /* CNcomment: 副显示2 */
UAPI_PDM_DISP_MAX, /* no use number */ /* CNcomment: 无效的值 */
} uapi_pdm_disp_flag;
/*
* PDM Defines the base config parameter
* CNcomment:基本配置参数结构体
*/
/*
* Define the struct about allm mode.
* CNcomment:定义allm的模式
*/
typedef enum {
UAPI_PDM_DISP_ALLM_MODE_AUTO = 0, /* allm auto mode. */ /* CNcomment: ALLM自动决策模式 */
UAPI_PDM_DISP_ALLM_MODE_ON, /* allm on. */ /* CNcomment: ALLM打开模式 */
UAPI_PDM_DISP_ALLM_MODE_OFF, /* allm off */ /* CNcomment: ALLM关闭模式 */
UAPI_PDM_DISP_ALLM_MODE_MAX,
} uapi_pdm_disp_allm_mode;
typedef struct {
uapi_disp_intf_type intf_type; /* interface type */ /* CNcomment: 接口类型 */
union {
uapi_disp_hdmitx_id hdmitx; /* hdmitx id */ /* CNcomment: HDMITX 序号 */
uapi_disp_bt1120 bt1120; /* bt1120 id */ /* CNcomment: BT1120序号 */
uapi_disp_intf_ypbpr y_pb_pr; /* intf config of YPBPR */ /* CNcomment: YPBPR接口配置 */
uapi_disp_intf_rgb rgb; /* intf config of RGB */ /* CNcomment: RGB接口配置 */
uapi_disp_intf_vga vga; /* intf config of VGA */ /* CNcomment: VGA接口配置 */
uapi_disp_intf_cvbs cvbs; /* intf config of CVBS */ /* CNcomment: CVBS接口配置 */
uapi_disp_intf_svideo svideo; /* intf config of SVIDEO */ /* CNcomment: SVIDEO接口配置 */
uapi_disp_panel_id panel; /* PANEL id */ /* CNcomment: pannel 接口配置 */
} intf;
} uapi_pdm_disp_intf;
typedef struct {
td_u32 disp_enable; /* display enabel */ /* CNcomment:disp 使能 */
uapi_disp src_disp; /* source display */ /* CNcomment:源display枚举 */
td_u32 logo_index; /* correspond logo to current disp */
/* CNcomment:当前disp对应的logo index */
td_u32 brightness; /* Brightness */ /* CNcomment:亮度 */
td_u32 contrast; /* Contrast */ /* CNcomment:对比度 */
td_u32 saturation; /* Saturation */ /* CNcomment:饱和度 */
td_u32 hue_plus; /* HuePlus */ /* CNcomment:色度 */
td_u32 wcg_temperature; /* Color Temperature */ /* CNcomment:色温 */
uapi_disp_color bg_color; /* Background Color */ /* CNcomment:背景色 */
uapi_pdm_disp_intf intf[UAPI_DISP_INTF_TYPE_MAX]; /* configuration of display interface */
/* CNcomment:显示接口配置 */
td_u32 panel_index; /* panel index */ /* CNcomment:panel索引 */
uapi_disp_timing disp_timing; /* Display timeing */ /* CNcomment:显示时序 */
uapi_video_format format; /* Format */ /* CNcomment:制式 */
uapi_disp_pixel_format pixel_format_out_mode; /* HDMI output vedio mode */ /* CNcomment:HDMI输出视频模式 */
uapi_pixel_bit_depth bitwidth_out_mode; /* color bit width output mode */
/* CNcomment:颜色位宽输出模式 */
uapi_disp_color_space output_color_gamut; /* Color Gamut */ /* CNcomment:色域空间 */
uapi_disp_hdr_type hdr_type; /* HDR type */ /* CNcomment:HDR类型 */
uapi_ui_format ui_format; /* graphic layer UI Pixel format */
/* CNcomment:图形层UI的像素格式 */
td_u32 virt_screen_width; /* Virtual screen width */ /* CNcomment:虚拟屏幕宽 */
td_u32 virt_screen_height; /* Virtual screen height */ /* CNcomment:虚拟屏幕高 */
uapi_disp_offset disp_offset; /* Display margin info */
/* CNcomment:调整显示区域显示空白区域 */
uapi_video_aspect_info aspect_ratio; /* The device aspect ratio */ /* CNcomment:设备宽高比 */
td_u32 vic; /* video identify code */ /* CNcomment:视频识别码 */
td_u32 hdr_match_content; /* hdr match content */ /* CNcomment:HDR类型 */
td_u32 scenario_mode; /* dispmng scene mode */ /* CNcomment:输出场景 */
uapi_pdm_disp_flag disp_flag; /* disp flag */ /* CNcomment:主副显 */
uapi_video_rotation rotation_angle; /* rotation angle */ /* CNcomment:旋转角度 */
td_bool horizontal_mirror_image; /* horizontal mirror image */ /* CNcomment:水平镜像 */
td_bool vertical_mirror_image; /* vertical mirror image */ /* CNcomment:垂直镜像 */
td_u32 touchpad_id; /* touchpad id */ /* CNcomment:触摸屏ID */
uapi_pdm_disp_allm_mode allm_mode;
td_bool arr_enable;
td_bool qms_enable;
td_bool vrr_enable;
} uapi_pdm_disp_param;
/*
* PDM define pmoc poweron mode
* CNcomment:定义pmoc pweron模式
*/
typedef enum {
UAPI_PDM_PMOC_STANDBY, /* pmoc standby */ /* CNcomment:PMOC开机进待机模式 */
UAPI_PDM_PMOC_POWERON, /* pmoc poweron */ /* CNcomment:PMOC开机上电模式 */
UAPI_PDM_PMOC_MEMORY_STANDBY /* pmoc memory standby */ /* CNcomment:PMOC记忆待机模式 */
} uapi_pdm_pmoc_poweron_mode;
/*
* PDM pmoc parameter
* CNcomment:定义pmoc参数类型、
*/
typedef struct {
/* Restore the standby mode, 1: enable; 0: disable */ /* CNcomment:恢复关机前的待机状态1:使能; 0:不使能 */
uapi_pdm_pmoc_poweron_mode power_on_mode;
} uapi_pdm_pmoc_param;
/*
* brief: Get total logo number.
* CNcomment: 获取logo number CNend
* attention N/A
* param[out] total_index the number of logo CNcomment:logo个数 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_logo_total_index(td_u32 *total_index);
/*
* brief: get the config information which is stored in Device Info partition.
* CNcomment:获取存在deviceinfo里面的配置信息 CNend
* attention N/A
* param[out] cfg_info the pointer of hdcp info buffer CNcomment:hdcp信息的指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_cfg_info(uapi_pdm_config_info *cfg_info);
/*
* brief: write the config information which is stored in Device Info partition.
* CNcomment:写存在 deviceinfo里的配置信息 CNend
* attention N/A
* param[in] cfg_info the pointer of cfg info buffer CNcomment:配置信息的指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_update_cfg_info(uapi_pdm_config_info *cfg_info);
/*
* brief: get the hdcp information which is stored in Device Info partition.
* CNcomment:获取deviceinfo里的hdcp信息 CNend
* attention N/A
* param[out] hdcp_info the pointer of hdcp info buffer CNcomment:DHCP信息的指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_hdcp_info(uapi_pdm_hdcp_info *hdcp_info);
/*
* brief: write the hdcp information which is stored in Device Info partition.
* CNcomment:在设置HDCP_KEY之前需要获取位于deviceinfo里的HDCP信息得到key的长度以此为更新key的长度
* 如果key的长度为0那么按update的数据长度为准 CNend
* attention N/A
* param[in] hdcp_info the pointer of hdcp info buffer CNcomment:hdcp 信息buffer的指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_update_hdcp_info(uapi_pdm_hdcp_info *hdcp_info);
/*
* brief: get the basic information which is stored in Device Info partition.
* CNcomment:获取保存在deviceinfo中的basic信息 CNend
* attention N/A
* param[out] basic_info the pointer of system info buffer CNcomment:sysinfo buffer的指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_basic_info(uapi_pdm_basic_info *basic_info);
/*
* brief:write the basic information which is stored in Device Info partition.
* CNcomment:更新位于deviceinfo中的basic信息 CNend
* attention N/A
* param[in] basic_info the pointer of basic info buffer CNcomment:Basicinfo buffer的指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_update_basic_info(uapi_pdm_basic_info *basic_info);
/*
* brief:get the HDCP key which is stored in Device Info partition.
* CNcomment:获取deviceinfo分区中的H0CP KEY信息 CNend
* attention N/A
* param[in] id the id of HDCP key CNcomment:HDCP的id CNend
* param[in] buf_len the length of key CNcomment:key的长度 CNend
* param[out] key the pointer of HDCP key CNcomment:存储HDCP buffer的指针 CNend
* param[out] read_len the pointer of HDCP key length CNcomment:获取到HDCP KEY的长度 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_hdcp_key(const uapi_pdm_hdcp_key_id id, td_u32 buf_len, td_u8 *key, td_s32 *read_len);
/*
* brief:write the HDCP key to Device Info partition.
* CNcomment:写deviceinfo中的HDCP KEY信息 CNend
* attention N/A
* param[in] id the id of HDCP key CNcomment:HDCP的id CNend
* param[in] key the pointer of HDCP key CNcomment:HDCP 的buffer地址 CNend
* param[in] len the length of HDCP key CNcomment:HDCP key的长度 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_update_hdcp_key(uapi_pdm_hdcp_key_id id, td_u8 *key, td_s32 len);
/*
* brief:Obtains the disp configuration information.
* CNcomment:获取display配置区信息 CNend
* attention N/A
* param[in] disp_index type of baseparam you want. :所期望的disp编号 CNend
* param[out] param_data Pointer to the display parameters. :参数指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_disp_param(uapi_disp disp_index, uapi_pdm_disp_param *param_data);
/*
* brief:Modifies the disp configuration information.
* CNcomment:更新BASE配置区信息 CNend
* attention N/A
* param[in] disp_index index of baseparam you want. :所期望的base序号 CNend
* param[in] param_data Pointer to the basic parameters. :参数指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_update_disp_param(uapi_disp disp_index, uapi_pdm_disp_param *param_data);
/*
* brief:Obtains the pmoc configuration information.
* CNcomment:获取pmoc配置区信息 CNend
* attention N/A
* param[out] param_data Pointer to the display parameters. CNcomment:参数指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_pmoc_param(uapi_pdm_pmoc_param *param_data);
/*
* brief:Modifies the pmoc configuration information.
* CNcomment:更新pmoc配置区信息 CNend
* attention N/A
* param[in] param_data Pointer to the pmoc parameters. CNcomment:参数指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_update_pmoc_param(uapi_pdm_pmoc_param *param_data);
/*
* brief:Obtains the logo data from the flash memory.
* CNcomment:获取LOGO内容区信息 CNend
* attention N/A
* param[in] content Pointer to the logo data that is getted from the flash memory :内容buf指针 CNend
* param[in] buf_size Size of the lcontent to be getted :内容长度 CNend
* param[in] index index of the logo data to be getted :LOGO 编号 CNend
* param[out] read_len Size of the logo data to be getted :实际读取的内容长度 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_logo_content(td_u32 index, td_u8 *content, td_u32 buf_size, td_u32 *read_len);
/*
* brief:Modifies the logo data.
* CNcomment:更新LOGO内容区信息 CNend
* attention N/A
* Update data in logo partition, You must invoke UAPI_PDM_UpdateLogoParam to update logo parameter before
* invoke this function
* 更新logo内容在此函数之前必须先调用UAPI_PDM_UpdateLogoParam函数更新logo参数 CNend
* param[in] content Pointer to the logo data that is written from the flash memory :内容buf指针 CNend
* param[in] size Size of the logo data to be written :内容长度 CNend
* param[in] index index of the logo data to be written :LOGO 编号 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_update_logo_content(td_u32 logo_index, td_u8 *content, td_u32 logo_size);
/*
* brief:Get specific Reserve mem data. when the target buffer less than Reserve mem, this function
* can only get "size" size data or the whole data will be obtained.
* CNcomment:获取指定保留内存区数据.在目的buffer小于保留内存区大小时函数仅可获取到u32Size大小数据否则将获取整个保留
内存数据
* CNend attention N/A param[in] name Pointer to the reserve memery name :指向保留内存区名字的字符串指针 CNend
* param[in] buf_pointer Pointer to the out buffer used to get data :指向获取存储数据的输出buffer指针 CNend
* param[in] size The size of the pBuf : pBuf 大小 CNend
* param[in] name The name of partition : pBuf 大小 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID para invalid. CNcomment:无效参数 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_reserve_mem_data(const td_char *name, td_void *buf_pointer, td_u32 size);
/*
* brief:set feature authorized license.
* CNcomment:设置特性授权证书到flash中. CNend
* attention N/A
* param[in] src Pointer to the source buffer that stores license data :指向存储了license数据的buffer的地址 CNend
* param[in] src_len source data length :传入的数据长度 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID para invalid. CNcomment:无效参数 CNend
* retval :SOC_ERR_PDM_DEV_OPEN_ERR para invalid. CNcomment:无法打开设备节点 CNend
* see N/A
*/
td_s32 uapi_pdm_set_feature_license(td_u8 *src, td_u32 src_len);
/*
* brief:get feature authorized license.
* CNcomment:从flash中获取特性授权证书. CNend
* attention N/A
* param[in] dst Pointer to the destination buffer that stores license data :指向将要存放license数据的
* buffer的地址 CNend
* param[in] dst_len dst buffer size .:目标buffer能存储的数据长度 CNend
* param[out] read_len read size .:实际读取的数据长度 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID para invalid. CNcomment:无效参数 CNend
* retval :SOC_ERR_PDM_DEV_OPEN_ERR para invalid. CNcomment:无法打开设备节点 CNend
* see N/A
*/
td_s32 uapi_pdm_get_feature_license(td_u8 *dst, td_u32 dst_len, td_u32 *read_len);
/*
* brief:Get panel param of special panel index.
* CNcomment:获取特定索引值的屏参数据 CNend
* attention N/A
* param[in] u32Index Panel index value :panel index索引值 CNend
* param[in] pstPanelParm Pointer to the data of panel param :屏参数据指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_panel_info(td_u32 index, uapi_panel_info *panel_parm);
/*
* brief:Set current panel index data.
* CNcomment:设置系统使用的屏参索引信息 CNend
* attention N/A
* This will effective after restart system 接口需要重启后生效 CNend
* param[in] u32Index Panel index value :panel index索引值 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_set_panel_info(td_u32 index, uapi_panel_info *panel_parm);
/*
* brief:Get PQ config file path of special panel index.
* CNcomment:获取特定索引值的PQ配置文件路径 CNend
* attention N/A
* param[in] u32Index Panel index value :panel index索引值 CNend
* param[in] u32LenIn Length of the memory which pcPqPath point to :pcPqPath指针指向的内存大小 min sizeof is 160 CNend
* param[out] pu32LenOut Pointer to the length of PqPath :pqbinpath buf大小固定为160不包含结束符 CNend
* param[out] pcPqPath Pointer to the data of PQ config file path, max sizeof is 160
* CNcomment:PQ配置文件路径数据指针,pqbinpath的最大字符串大小是160 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_panel_pq_path(td_u32 index, td_u32 len_in, td_u32 *len_out, td_s8 *pc_pq_path);
/*
* brief:Get back light PWM value of special panel index.
* CNcomment:获取特定索引值的静态背光PWM值 CNend
* attention N/A
* param[in] u32Index Panel index value :panel index索引值 CNend
* param[in] pu32BlPwm Pointer to the data of back light PWM :静态背光PWM数据指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_panel_bl_level(td_u32 index, td_u32 *bl_pwm);
/*
* brief:Set back light PWM value of special panel index.
* CNcomment:设置特定索引值的静态背光PWM值 CNend
* attention N/A
* param[in] u32Index Panel index value :panel index索引值 CNend
* param[in] u32BlPwm back light PWM value :静态背光PWM值 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_set_panel_bl_level(td_u32 index, td_u32 bl_pwm);
/*
* brief:Get back light PWM range value of special panel index.
* CNcomment:获取特定索引值的静态背光PWM范围值 CNend
* attention N/A
* param[in] u32Index Panel index value :panel index索引值 CNend
* param[in] pu32BlPwmUserMin Pointer to the data that is back light PWM minimum value静态背光PWM最小值数据指针 CNend
* param[in] pu32BlPwmUserMax Pointer to the data that is back light PWM maximum value静态背光PWM最大值数据指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_panel_bl_level_range(td_u32 index, td_u32 *bl_pwm_user_min, td_u32 *bl_pwm_user_max);
/*
* brief:Get back light PWM range value of special panel index.
* CNcomment:设置特定索引值的静态背光PWM范围值 CNend
* attention N/A
* param[in] u32Index Panel index value :panel index索引值 CNend
* param[in] pu32BlPwmUserMin Pointer to the data that is back light PWM minimum value静态背光PWM最小值数据指针 CNend
* param[in] pu32BlPwmUserMax Pointer to the data that is back light PWM maximum value静态背光PWM最大值数据指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_set_panel_bl_level_range(td_u32 index, td_u32 bl_pwm_user_min, td_u32 bl_pwm_user_max);
/*
* brief:Get the total index of Tcon bin.
* CNcomment:获取总的Tcon Bin 数量 CNend
* attention N/A
* param[in] pu32TotalNum Total Index Num CNcomment: 总数 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* see N/A
*/
td_s32 uapi_pdm_get_tcon_total_index(td_u32 *total_num);
/*
* brief:Get Tcon small bin name of special tcon index.
* CNcomment:获取特定索引值对应的Tcon 小bin的信息 CNend
* attention N/A
* param[in] u32TconIndex Tcon Index Num CNcomment: tcon index 索引值 CNend
* param[out] pstTconInfo Pointer to the Tcon Bin Info CNcomment: 获取tcon bin 信息的参数指针 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* see N/A
*/
td_s32 uapi_pdm_get_tcon_bin_info(td_u32 tcon_index, uapi_pdm_iapi_pdm_tcon_info *tcon_info);
/*
* brief:Get the silence flag from the flash memory.
* CNcomment:获取Silence标记 CNend
* attention N/A
* param[out] silence silence flag CNcomment: 静默标记 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* see N/A
*/
td_s32 uapi_pdm_get_silence_flag(td_bool *silence);
/*
* brief:Setting the silence state.
* CNcomment:设置静默状态 CNend
* attention N/A
* param[in] module_id The moudle ID CNcomment: 模块ID CNend
* param[in] silence silence flag CNcomment: 静默标记 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* see N/A
*/
td_s32 uapi_pdm_set_silence_flag(td_bool silence);
/*
* brief:Obtains the bootmusic data from the flash memory.
* CNcomment:获取BOOTMUSIC内容区信息 CNend
* attention N/A
* param[in] content Pointer to the bootmusic data that is gotted from the flash memory :内容buf指针 CNend
* param[in] size Size of the bootmusic data to be gotted :内容长度 CNend
* param[in] index index of the bootmusic data to be gotted :BOOTMUSIC 编号 CNend
* param[out] read_len Size of the bootmusic data to be gotted :实际读取的内容长度 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_bootmusic_content(td_u32 index, td_u8 *content, td_u32 buf_size, td_u32 *read_len);
/*
* brief:Modifies the bootmusic data.
* CNcomment:更新BOOTMUSIC内容区信息 CNend
* attention N/A
* Update data in bootmusic partition, You must invoke UAPI_PDM_UpdatebootmusicParam to update bootmusic
* parameter before invoke this function
* 更新bootmusic内容在此函数之前必须先调用UAPI_PDM_UpdatebootmusicParam函数更新bootmusic参数 CNend
* param[in] content Pointer to the bootmusic data that is written from the flash memory :内容buf指针 CNend
* param[in] size Size of the bootmusic data to be written :内容长度 CNend
* param[in] index index of the bootmusic data to be written :bootmusic 编号 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_WRITE Write flash pation error. CNcomment:写Flash分区失败 CNend
* retval :SOC_ERR_PDM_MTD_ERASE Erase flash pation error. CNcomment:擦除Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_update_bootmusic_content(td_u32 bm_index, td_u8 *content, td_u32 bm_size);
/*
* brief: Get total bootmusic number.
* CNcomment: 获取bootmusic number CNend
* attention N/A
* param[out] total_index the number of bootmusic CNcomment:bootmusic个数 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_GET_MTDINFO_ERR Get flash pation infomation error. CNcomment:获取Flash分区信息失败 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* retval :SOC_ERR_PDM_MEM_ALLC Alloc memory error. CNcomment:分配内存失败 CNend
* retval :SOC_ERR_PDM_MTD_READ Read flash pation error. CNcomment:读取Flash分区失败 CNend
* retval :SOC_ERR_PDM_INVALID_OPT The operation is invalid. CNcomment:无效操作 CNend
* see N/A
*/
td_s32 uapi_pdm_get_bootmusic_total_index(td_u32 *total_index);
/*
* brief:get boot music index of specify music to be played.
* CNcomment:获取指定播放的开机音乐索引值 CNend
* attention N/A
* param[out] snd_index the index of the music you want to play CNcomment: 播放音频的索引 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* see N/A
*/
td_s32 uapi_pdm_get_bootmusic_index(td_u32 *snd_index);
/*
* brief:set boot music index to specify music to be played.
* CNcomment:设置指定播放的开机音乐索引值 CNend
* attention N/A
* param[in] snd_index the index of the music you want to play CNcomment: 播放音频的索引 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID The parameters is invalid. CNcomment:无效参数 CNend
* see N/A
*/
td_s32 uapi_pdm_set_bootmusic_index(td_u32 snd_index);
/*
* brief:get the volume of specify music to be played.
* CNcomment:获取指定播放的开机音乐的音量 CNend
* attention N/A
* param[out] volume the volume of the music you want to play CNcomment: 播放开机音乐的音量 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* see N/A
*/
td_s32 uapi_pdm_get_bootmusic_volume(td_u32 *volume);
/*
* brief:set the volume to specify music to be played.
* CNcomment:设置指定播放开机音乐的音量 CNend
* attention N/A
* param[in] volume the volume of the music you want to play CNcomment: 播放开机音乐的音量 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID The parameters is invalid. CNcomment:无效参数 CNend
* see N/A
*/
td_s32 uapi_pdm_set_bootmusic_volume(td_u32 volume);
/*
* brief:get the enable of boot music.
* CNcomment:获取开机音乐的使能状态 CNend
* attention N/A
* param[out] enable the enable of the boot music CNcomment: 开机音乐使能状态 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* see N/A
*/
td_s32 uapi_pdm_get_bootmusic_enable(td_bool *enable);
/*
* brief:set the enable to boot music.
* CNcomment:设置开机音乐的使能状态 CNend
* attention N/A
* param[in] enable the enable of the boot music CNcomment: 开机音乐使能状态 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID The parameters is invalid. CNcomment:无效参数 CNend
* see N/A
*/
td_s32 uapi_pdm_set_bootmusic_enable(td_bool enable);
/*
* brief:get the custom data from extend area.
* CNcomment:从extend 区获取自定义 数据 CNend
* attention N/A
* param[in] addr address of the extend data to be gotted :获取extend内容的起始地址 CNend
* param[in] buf Pointer to the the extend data to be gotted from the flash memory :内容buf指针 CNend
* param[in] buf_size Size of the buf data to be gotted :内容长度 CNend
* param[out] read_size read_size of the extend data to be gotted :extend实际内容长度 编号 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID The parameters is invalid. CNcomment:无效参数 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* see N/A
*/
td_s32 uapi_pdm_get_extend_data(td_u32 addr, td_void *buf, td_u32 buf_size, td_u32 *read_size);
/*
* brief: custom data write extend data.
* CNcomment:自定义数据 写入到extend 区CNend
* attention N/A
* param[in] addr address of the extend data to be written :获取extend内容的起始地址 CNend
* param[in] buf Pointer to the the extend data to be written from the flash memory :内容buf指针 CNend
* param[in] buf_size Size of the buf data to be written :内容长度 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID The parameters is invalid. CNcomment:无效参数 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* see N/A
*/
td_s32 uapi_pdm_set_extend_data(td_u32 addr, const td_void *buf, td_u32 buf_size);
/*
* brief: get extend area of total size.
* CNcomment:获取extend 区大小CNend
* attention N/A
* param[out] Point to user extend area that get total size: 获取extend 区大小 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID The parameters is invalid. CNcomment:无效参数 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* see N/A
*/
td_s32 uapi_pdm_get_extend_total_size(td_u32 *total_size);
/*
* brief: get ta revoked list.
* CNcomment:获取ta 废弃列表CNend
* attention N/A
* param[in] buf Pointer to the the ta_revoked to be gotted from the flash memory :内容buf指针 CNend
* param[in] buf_size Size of the buf data to be gotted :内容长度 CNend
* param[out] read_size read_size of the ta_revoked to be gotted :extend实际内容长度 编号 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID The parameters is invalid. CNcomment:无效参数 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* see N/A
*/
td_s32 uapi_pdm_get_ta_revoked_list(td_void *buf, td_u32 buf_size, td_u32 *read_size);
/*
* brief: set ta revoked list.
* CNcomment:ta 废弃列表写入deviceinfo CNend
* attention N/A
* param[in] buf Pointer to the the ta_revoked to be written from the flash memory :内容buf指针 CNend
* param[in] buf_size Size of the buf data to be written :内容长度 CNend
* retval :TD_SUCCESS Success. CNcomment:成功 CNend
* retval :SOC_ERR_PDM_PTR_NULL Pointer is null. CNcomment:空指针 CNend
* retval :SOC_ERR_PDM_PARAM_INVALID The parameters is invalid. CNcomment:无效参数 CNend
* retval :SOC_ERR_PDM_MTD_OPEN Open flash pation error. CNcomment:打开Flash分区失败 CNend
* see N/A
*/
td_s32 uapi_pdm_set_ta_revoked_list(const td_void *buf, td_u32 buf_size);
#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif
#endif