summaryrefslogtreecommitdiff
path: root/tvapi/libtv/tvutils/tvutils.h (plain)
blob: 8805144b6d379ac9c7930d3287d8598c2509c690
1#ifndef __TV_MISC_H__
2#define __TV_MISC_H__
3
4#include "../tv/CFbcCommunication.h"
5#define CC_MIN_ADC_CHANNEL_VAL (0)
6#define CC_MAX_ADC_CHANNEL_VAL (5)
7
8#define CC_I2C_BUS_ON (0)
9#define CC_I2C_BUS_OFF (1)
10
11#define CPQDB_DB_SIZE_ID "tv.db.size.id"
12
13struct erase_info_user {
14 uint32_t start;
15 uint32_t length;
16};
17
18extern int *GetFileAttrIntValueStr(const char *fp);
19extern int ReadADCSpecialChannelValue(int adc_channel_num);
20extern int Tv_MiscRegs(const char *cmd);
21
22extern int TvMisc_SetLVDSSSC(int val);
23extern int TvMisc_SetUserCounterTimeOut(int timeout);
24extern int TvMisc_SetUserCounter(int count);
25extern int TvMisc_SetUserPetResetEnable(int enable);
26extern int TvMisc_SetSystemPetResetEnable(int enable);
27extern int TvMisc_SetSystemPetEnable(int enable);
28extern int TvMisc_SetSystemPetCounter(int count);
29extern void TvMisc_EnableWDT(bool kernelpet_disable, unsigned int userpet_enable, unsigned int kernelpet_timeout, unsigned int userpet_timeout, unsigned int userpet_reset);
30extern void TvMisc_DisableWDT(unsigned int userpet_enable);
31extern int I2C_WriteNbyte(int i2c_no, int dev_addr, int slave_addr, int len, unsigned char data_buf[]);
32extern int I2C_ReadNbyte(int i2c_no, int dev_addr, int slave_addr, int len, unsigned char data_buf[]);
33extern int GetTvDBDefineSize();
34extern int SetFileAttrValue(const char *fp, const char value[]);
35extern int GetFileAttrIntValue(const char *fp);
36
37extern int Get_Fixed_NonStandard(void);
38extern int Set_Fixed_NonStandard(int value);
39
40extern int get_hardware_name(char *hardware);
41
42extern int TvMisc_DeleteDirFiles(const char *strPath, int flag);
43
44extern int cfg_get_one_item(const char *key_str, const char *strDelimit, int item_index, char cfg_str[]);
45extern int Tv_Utils_CheckFs(void);
46extern int Tv_Utils_SetFileAttrStr(const char *file_path, char val_str_buf[]);
47extern int Tv_Utils_GetFileAttrStr(const char *file_path, int buf_size, char val_str_buf[]);
48extern bool Tv_Utils_IsFileExist(const char *file_name);
49extern void monitor_info_name_init ( unsigned char *edidbuf );
50extern void monitor_info_set_name ( unsigned char *edidbuf );
51extern void monitor_info_set_imagesize ( unsigned char *edidbuf );
52extern void monitor_info_edid_checksum ( unsigned char *edidbuf );
53extern int reboot_sys_by_fbc_edid_info();
54extern int reboot_sys_by_fbc_uart_panel_info(CFbcCommunication *fbc = NULL);
55extern int GetPlatformHaveDDFlag();
56
57#define CC_PROJECT_INFO_ITEM_MAX_LEN (64)
58
59typedef struct project_info_s {
60 char version[CC_PROJECT_INFO_ITEM_MAX_LEN];
61 char panel_type[CC_PROJECT_INFO_ITEM_MAX_LEN];
62 char panel_outputmode[CC_PROJECT_INFO_ITEM_MAX_LEN];
63 char panel_rev[CC_PROJECT_INFO_ITEM_MAX_LEN];
64 char panel_name[CC_PROJECT_INFO_ITEM_MAX_LEN];
65 char amp_curve_name[CC_PROJECT_INFO_ITEM_MAX_LEN];
66} project_info_t;
67
68extern unsigned int CalCRC32(unsigned int crc, const unsigned char *ptr, unsigned int buf_len);
69extern int GetProjectInfo(project_info_t *proj_info_ptr, CFbcCommunication *fbcIns = NULL);
70extern int getBootEnv(const char *key, char *value, char *def_val);
71extern void setBootEnv(const char *key, const char *value);
72
73//extern void SSMRewriteEdidInfo ( unsigned char *edidbuf );
74//extern int HandleEdid ( int op_type, int op_direct, unsigned char edid_buf[], unsigned char def_buf[] );
75//extern int SSMSetHdmiEdid();
76#define AML_DBG_REGS_IOC_MAGIC 'R'
77
78typedef struct aml_debug_reg_s {
79 unsigned int addr;
80 unsigned int val;
81 unsigned char mode;
82} aml_debug_reg_t;
83
84typedef struct aml_debug_bit_s {
85 unsigned int addr;
86 unsigned int val;
87 unsigned int start;
88 unsigned int len;
89} aml_debug_bit_t;
90
91template<typename T1, typename T2>
92int ArrayCopy(T1 dst_buf[], T2 src_buf[], int copy_size)
93{
94 int i = 0;
95
96 for (i = 0; i < copy_size; i++) {
97 dst_buf[i] = src_buf[i];
98 }
99
100 return 0;
101};
102
103#endif //__TV_MISC_H__
104