summaryrefslogtreecommitdiff
Diffstat
-rw-r--r--Android.mk14
-rw-r--r--screen_source/Android.mk31
-rw-r--r--screen_source/aml_screen.cpp296
-rw-r--r--screen_source/v4l2_vdin.cpp676
-rw-r--r--screen_source/v4l2_vdin.h144
-rw-r--r--tv_callback.h18
-rw-r--r--tv_input.cpp263
-rw-r--r--tvapi/android/Android.mk2
-rw-r--r--tvapi/android/include/ITv.h98
-rw-r--r--tvapi/android/include/ITvClient.h56
-rw-r--r--tvapi/android/include/ITvService.h66
-rw-r--r--tvapi/android/include/Tv.h158
-rw-r--r--tvapi/android/include/tvcmd.h1212
-rw-r--r--tvapi/android/jni/Android.mk135
-rw-r--r--tvapi/android/jni/cfbc_jni.cpp18
-rw-r--r--tvapi/android/jni/cfbc_test.cpp86
-rw-r--r--tvapi/android/jni/com_droidlogic_app_tv_TvControlManager.cpp (renamed from tvapi/android/jni/android_amlogic_tv.cpp)929
-rw-r--r--tvapi/android/libtvbinder/Android.mk48
-rw-r--r--tvapi/android/libtvbinder/ITv.cpp292
-rw-r--r--tvapi/android/libtvbinder/ITvClient.cpp116
-rw-r--r--tvapi/android/libtvbinder/ITvService.cpp100
-rw-r--r--tvapi/android/libtvbinder/Tv.cpp378
-rw-r--r--tvapi/android/tv/Android.mk23
-rw-r--r--tvapi/android/tv/CTv.cpp104
-rw-r--r--tvapi/android/tv/CTv.h54
-rw-r--r--tvapi/android/tvserver/Android.mk164
-rw-r--r--tvapi/android/tvserver/TvService.cpp8911
-rw-r--r--tvapi/android/tvserver/TvService.h170
-rw-r--r--tvapi/android/tvserver/main.cpp46
-rw-r--r--tvapi/android/tvserver/tv_callback.h18
-rw-r--r--[-rwxr-xr-x]tvapi/build/include/.gitignore0
-rw-r--r--tvapi/build/include/xxxconfig.h1
-rw-r--r--tvapi/docs/tv.uml12156
-rw-r--r--tvapi/libtv/Android.mk12
-rw-r--r--tvapi/libtv/audio/CAudioCustomerCtrl.cpp126
-rw-r--r--tvapi/libtv/audio/CAudioCustomerCtrl.h31
-rw-r--r--tvapi/libtv/audio/CTvAudio.cpp30
-rw-r--r--tvapi/libtv/audio/CTvAudio.h76
-rw-r--r--tvapi/libtv/audio/audio_alsa.cpp2073
-rw-r--r--tvapi/libtv/audio/audio_alsa.h257
-rw-r--r--tvapi/libtv/audio/audio_android.cpp1035
-rw-r--r--tvapi/libtv/audio/audio_android.h78
-rw-r--r--tvapi/libtv/audio/audio_android_effect.cpp591
-rw-r--r--tvapi/libtv/audio/audio_android_effect.h65
-rw-r--r--tvapi/libtv/audio/audio_api.cpp2470
-rw-r--r--tvapi/libtv/audio/audio_api.h323
-rw-r--r--tvapi/libtv/audio/audio_effect.cpp356
-rw-r--r--tvapi/libtv/audio/audio_effect.h58
-rw-r--r--tvapi/libtv/include/amstream.h526
-rw-r--r--tvapi/libtv/include/amvecm.h136
-rw-r--r--tvapi/libtv/include/cm.h308
-rw-r--r--tvapi/libtv/include/hdmirx_cec.h316
-rw-r--r--tvapi/libtv/include/ve.h461
-rw-r--r--tvapi/libtv/tv/AutoBackLight.cpp425
-rw-r--r--tvapi/libtv/tv/CAutoPQparam.cpp150
-rw-r--r--tvapi/libtv/tv/CAutoPQparam.h41
-rw-r--r--tvapi/libtv/tv/CAv.cpp116
-rw-r--r--tvapi/libtv/tv/CAv.h24
-rw-r--r--tvapi/libtv/tv/CFbcCommunication.cpp443
-rw-r--r--tvapi/libtv/tv/CFbcCommunication.h25
-rw-r--r--tvapi/libtv/tv/CFrontEnd.cpp198
-rw-r--r--tvapi/libtv/tv/CFrontEnd.h19
-rw-r--r--tvapi/libtv/tv/CTv.cpp13003
-rw-r--r--tvapi/libtv/tv/CTv.h1453
-rw-r--r--tvapi/libtv/tv/CTvBooking.cpp324
-rw-r--r--tvapi/libtv/tv/CTvBooking.h166
-rw-r--r--tvapi/libtv/tv/CTvEpg.cpp24
-rw-r--r--tvapi/libtv/tv/CTvEv.h12
-rw-r--r--tvapi/libtv/tv/CTvLog.h8
-rw-r--r--tvapi/libtv/tv/CTvRecord.cpp552
-rw-r--r--tvapi/libtv/tv/CTvRecord.h92
-rw-r--r--tvapi/libtv/tv/CTvSatellite.h42
-rw-r--r--tvapi/libtv/tv/CTvScanner.cpp335
-rw-r--r--tvapi/libtv/tv/CTvScanner.h26
-rw-r--r--tvapi/libtv/tv/CTvScreenCapture.cpp1279
-rw-r--r--tvapi/libtv/tv/CTvScreenCapture.h351
-rw-r--r--tvapi/libtv/tv/CTvSubtitle.cpp361
-rw-r--r--tvapi/libtv/tv/CTvSubtitle.h484
-rw-r--r--tvapi/libtv/tv/CTvVchipCheck.cpp6
-rw-r--r--tvapi/libtv/tv/CUpgradeFBC.cpp4
-rw-r--r--tvapi/libtv/tv/CUpgradeFBC.h282
-rw-r--r--tvapi/libtv/tv/ScreenCatch.cpp379
-rw-r--r--tvapi/libtv/tvconfig/CIniFile.cpp706
-rw-r--r--tvapi/libtv/tvconfig/tvconfig.conf58
-rw-r--r--tvapi/libtv/tvconfig/tvconfig.cpp106
-rw-r--r--tvapi/libtv/tvconfig/tvconfig.h40
-rw-r--r--tvapi/libtv/tvdb/CTvChannel.cpp694
-rw-r--r--tvapi/libtv/tvdb/CTvChannel.h574
-rw-r--r--tvapi/libtv/tvdb/CTvDatabase.cpp25
-rw-r--r--tvapi/libtv/tvdb/CTvDatabase.h188
-rw-r--r--tvapi/libtv/tvdb/CTvDimension.cpp86
-rw-r--r--tvapi/libtv/tvdb/CTvDimension.h194
-rw-r--r--tvapi/libtv/tvdb/CTvEvent.cpp483
-rw-r--r--tvapi/libtv/tvdb/CTvEvent.h170
-rw-r--r--tvapi/libtv/tvdb/CTvGroup.cpp88
-rw-r--r--tvapi/libtv/tvdb/CTvGroup.h60
-rw-r--r--tvapi/libtv/tvdb/CTvProgram.cpp1806
-rw-r--r--tvapi/libtv/tvdb/CTvProgram.h1066
-rw-r--r--tvapi/libtv/tvdb/CTvRegion.cpp366
-rw-r--r--tvapi/libtv/tvdb/CTvRegion.h84
-rw-r--r--tvapi/libtv/tvin/CHDMIRxCEC.cpp38
-rw-r--r--tvapi/libtv/tvin/CSourceConnectDetect.cpp478
-rw-r--r--tvapi/libtv/tvin/CSourceConnectDetect.h73
-rw-r--r--tvapi/libtv/tvin/CTvin.cpp203
-rw-r--r--tvapi/libtv/tvin/CTvin.h191
-rw-r--r--tvapi/libtv/tvsetting/CBlobDevice.cpp54
-rw-r--r--tvapi/libtv/tvsetting/CBlobDevice.h100
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceE2prom.cpp403
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceE2prom.h152
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceFile.cpp160
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceFile.h52
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceRam.cpp258
-rw-r--r--tvapi/libtv/tvsetting/CBlobDeviceRam.h74
-rw-r--r--tvapi/libtv/tvsetting/CTvSetting.cpp4658
-rw-r--r--tvapi/libtv/tvsetting/CTvSetting.h30
-rw-r--r--tvapi/libtv/tvsetting/CTvSettingCfg.h782
-rw-r--r--tvapi/libtv/tvsetting/CTvSettingDeviceFactory.cpp10
-rw-r--r--tvapi/libtv/tvsetting/TvKeyData.cpp2726
-rw-r--r--tvapi/libtv/tvsetting/TvKeyData.h64
-rw-r--r--tvapi/libtv/tvsetting/audio_cfg.cpp2575
-rw-r--r--tvapi/libtv/tvsetting/audio_cfg.h239
-rw-r--r--tvapi/libtv/tvutils/CCondition.h2
-rw-r--r--tvapi/libtv/tvutils/CFile.cpp65
-rw-r--r--tvapi/libtv/tvutils/CFile.h3
-rw-r--r--tvapi/libtv/tvutils/CHdmiCecCmd.cpp2
-rw-r--r--tvapi/libtv/tvutils/CMsgQueue.cpp31
-rw-r--r--tvapi/libtv/tvutils/CMsgQueue.h3
-rw-r--r--tvapi/libtv/tvutils/CSerialCommunication.h96
-rw-r--r--tvapi/libtv/tvutils/CSerialPort.cpp18
-rw-r--r--tvapi/libtv/tvutils/CSqlite.cpp8
-rw-r--r--tvapi/libtv/tvutils/CSqlite.h12
-rw-r--r--tvapi/libtv/tvutils/CThread.cpp2
-rw-r--r--tvapi/libtv/tvutils/CTvInput.cpp25
-rw-r--r--tvapi/libtv/tvutils/CTvInput.h4
-rw-r--r--tvapi/libtv/tvutils/serial_base.h34
-rw-r--r--tvapi/libtv/tvutils/serial_operate.cpp66
-rw-r--r--tvapi/libtv/tvutils/serial_operate.h70
-rw-r--r--tvapi/libtv/tvutils/tvutils.cpp3931
-rw-r--r--tvapi/libtv/tvutils/tvutils.h222
-rw-r--r--tvapi/libtv/tvutils/zepoll.cpp2
-rw-r--r--tvapi/libtv/version/version.cpp188
-rw-r--r--tvapi/libtv/version/version.h22
-rw-r--r--tvapi/libtv/vpp/CPQdb.cpp3509
-rw-r--r--tvapi/libtv/vpp/CPQdb.h340
-rw-r--r--tvapi/libtv/vpp/CVpp.cpp5602
-rw-r--r--tvapi/libtv/vpp/CVpp.h230
-rw-r--r--tvapi/tvtests/Android.mk98
-rw-r--r--tvapi/tvtests/android_tvtest.cpp2
-rw-r--r--tvapi/tvtests/comm_test.cpp4
-rw-r--r--tvapi/tvtests/ssm_test.cpp420
-rw-r--r--tvapi/tvtests/tvconfig_test.cpp854
151 files changed, 45277 insertions, 47437 deletions
diff --git a/tvapi/libtv/tv/CFbcCommunication.cpp b/tvapi/libtv/tv/CFbcCommunication.cpp
index 08bc0e3..cf63278 100644
--- a/tvapi/libtv/tv/CFbcCommunication.cpp
+++ b/tvapi/libtv/tv/CFbcCommunication.cpp
@@ -8,17 +8,13 @@
static CFbcCommunication *gSingletonFBC = NULL;
CFbcCommunication *GetSingletonFBC()
{
- if (GetPlatformHaveFBCFlag() == 1) {
- if (gSingletonFBC == NULL) {
- gSingletonFBC = new CFbcCommunication();
- gSingletonFBC->start();
- }
-
- return gSingletonFBC;
+ if (gSingletonFBC == NULL) {
+ gSingletonFBC = new CFbcCommunication();
+ gSingletonFBC->start();
}
- LOGE("%s, the platform has no fbc!!!\n", __FUNCTION__);
- return NULL;
+ return gSingletonFBC;
+
}
CFbcCommunication::CFbcCommunication()
@@ -61,7 +57,7 @@ int CFbcCommunication::start()
#endif
}
- if(mEpoll.create() < 0) {
+ if (mEpoll.create() < 0) {
return -1;
}
@@ -109,7 +105,7 @@ void CFbcCommunication::testUart()
sleep(1);
//LOGD("to read........\n");
mSerialPort.readFile(read_buf, 12);
- for(idx = 0; idx < 12; idx++)
+ for (idx = 0; idx < 12; idx++)
LOGD("the data is:0x%x\n", read_buf[idx]);
LOGD("end....\n");
}
@@ -118,23 +114,23 @@ void CFbcCommunication::showTime(struct timeval *_time)
{
struct timeval curTime;
- if(_time == NULL) {
+ if (_time == NULL) {
gettimeofday(&curTime, NULL);
} else {
curTime.tv_sec = _time->tv_sec;
curTime.tv_usec = _time->tv_usec;
}
- if(curTime.tv_usec > 100000) {
+ if (curTime.tv_usec > 100000) {
LOGD("[%d.%d]", curTime.tv_sec, curTime.tv_usec);
- } else if(curTime.tv_usec > 10000) {
+ } else if (curTime.tv_usec > 10000) {
LOGD("[%d.0%d]", curTime.tv_sec, curTime.tv_usec);
- } else if(curTime.tv_usec > 1000) {
+ } else if (curTime.tv_usec > 1000) {
LOGD("[%d.00%d]", curTime.tv_sec, curTime.tv_usec);
- } else if(curTime.tv_usec > 100) {
+ } else if (curTime.tv_usec > 100) {
LOGD("[%d.000%d]", curTime.tv_sec, curTime.tv_usec);
- } else if(curTime.tv_usec > 10) {
+ } else if (curTime.tv_usec > 10) {
LOGD("[%d.0000%d]", curTime.tv_sec, curTime.tv_usec);
- } else if(curTime.tv_usec > 1) {
+ } else if (curTime.tv_usec > 1) {
LOGD("[%d.00000%d]", curTime.tv_sec, curTime.tv_usec);
}
}
@@ -171,7 +167,7 @@ void CFbcCommunication::sendAckCmd(bool isOk)
ackcmd[3] = 0x00;
ackcmd[4] = 0x80;//ack flag
ackcmd[5] = 0xff;//cmd id
- if(isOk) {
+ if (isOk) {
ackcmd[6] = 0xfe;
ackcmd[7] = 0x7f;
} else {
@@ -195,7 +191,7 @@ unsigned int CFbcCommunication::GetCrc32(unsigned char *InStr, unsigned int len)
{
//开始计算CRC32校验便
unsigned int Crc = 0xffffffff;
- for(int i = 0; i < len; i++) {
+ for (int i = 0; i < len; i++) {
Crc = (Crc >> 8) ^ mCrc32Table[(Crc & 0xFF) ^ InStr[i]];
}
@@ -209,7 +205,7 @@ unsigned int CFbcCommunication::Calcrc32(unsigned int crc, const unsigned char *
0xedb88320, 0xf00f9344, 0xd6d6a3e8, 0xcb61b38c, 0x9b64c2b0, 0x86d3d2d4, 0xa00ae278, 0xbdbdf21c
};
unsigned int crcu32 = crc;
- if(buf_len < 0)
+ if (buf_len < 0)
return 0;
if (!ptr) return 0;
crcu32 = ~crcu32;
@@ -224,7 +220,7 @@ unsigned int CFbcCommunication::Calcrc32(unsigned int crc, const unsigned char *
int CFbcCommunication::sendDataOneway(int devno, unsigned char *pData, int dataLen, int flags)
{
int ret = -1;
- switch(devno) {
+ switch (devno) {
case COMM_DEV_CEC: {
ret = mHdmiCec.writeFile(pData, dataLen);
break;
@@ -252,7 +248,7 @@ int CFbcCommunication::addToRequestList()
int CFbcCommunication::sendDataAndWaitReply(int devno, int waitForDevno, int waitForCmd, unsigned char *pData, int dataLen, int timeout, unsigned char *pReData, int *reDataLen, int flags)
{
int ret = sendDataOneway(devno, pData, dataLen, flags);
- if(ret < 0) return ret;
+ if (ret < 0) return ret;
mReplyList.WaitDevNo = waitForDevno;
mReplyList.WaitCmd = waitForCmd;
@@ -268,7 +264,7 @@ int CFbcCommunication::sendDataAndWaitReply(int devno, int waitForDevno, int wai
mLock.unlock();
//
- if(mReplyList.reDataLen > 0) { //data have come in
+ if (mReplyList.reDataLen > 0) { //data have come in
*reDataLen = mReplyList.reDataLen;
memcpy(pReData, mReplyList.replyData, mReplyList.reDataLen);
mReplyList.reDataLen = 0;
@@ -302,14 +298,14 @@ int CFbcCommunication::handleCmd(COMM_DEV_TYPE_E fromDev, int *pData, int *pRetV
fbc_command_t cmd_type = VPU_CMD_NULL;
int ret_value = 0;
- if((fromDev != COMM_DEV_SERIAL && fromDev != COMM_DEV_CEC) || pData == NULL || pRetValue == NULL) {
+ if ((fromDev != COMM_DEV_SERIAL && fromDev != COMM_DEV_CEC) || pData == NULL || pRetValue == NULL) {
//LOGD("para error and returned!");
return -1;
}
cmd_type = (fbc_command_t)pData[0];
LOGD("the cmd type is:0x%02x\n", cmd_type);
- switch(cmd_type) {
+ switch (cmd_type) {
case VPU_CMD_RED_GAIN_DEF:
cfbc_Set_Gain_Red(fromDev, pData[2]);
break;
@@ -352,7 +348,7 @@ int CFbcCommunication::uartReadStream(unsigned char *retData, int rd_max_len, in
readLen = mSerialPort.readFile(retData + bufIndex, rd_max_len - haveRead);
haveRead += readLen;
bufIndex += readLen;
- if(haveRead == rd_max_len) {
+ if (haveRead == rd_max_len) {
return haveRead;
}
@@ -361,7 +357,7 @@ int CFbcCommunication::uartReadStream(unsigned char *retData, int rd_max_len, in
if (((clock() - start_tm) / (CLOCKS_PER_SEC / 1000)) > timeout) {
return haveRead;
}
- } while(true);
+ } while (true);
return haveRead;
}
@@ -373,7 +369,7 @@ int CFbcCommunication::uartReadData(unsigned char *retData, int *retLen)
int bufIndex = 0;
int readLen = 0;
- if(retData == NULL) {
+ if (retData == NULL) {
LOGD("the retData is NULL\n");
return 0;
}
@@ -382,10 +378,10 @@ int CFbcCommunication::uartReadData(unsigned char *retData, int *retLen)
memset(tempBuf, 0, sizeof(tempBuf));
do {
readLen = mSerialPort.readFile(tempBuf + 0, 1);
- if(tempBuf[0] == 0x5A) {
+ if (tempBuf[0] == 0x5A) {
bufIndex = 1;
readLen = mSerialPort.readFile(tempBuf + 1, 1);
- if(tempBuf[1] == 0x5A) {
+ if (tempBuf[1] == 0x5A) {
bufIndex = 2;
LOGD("leading code coming...\n");
break;
@@ -395,7 +391,7 @@ int CFbcCommunication::uartReadData(unsigned char *retData, int *retLen)
} else {
continue;
}
- } while(true);
+ } while (true);
//data len 2 byte
int needRead = 2, haveRead = 0;
@@ -403,10 +399,10 @@ int CFbcCommunication::uartReadData(unsigned char *retData, int *retLen)
readLen = mSerialPort.readFile(tempBuf + bufIndex, needRead - haveRead);
haveRead += readLen;
bufIndex += readLen;
- if(haveRead == needRead) {
+ if (haveRead == needRead) {
break;
}
- } while(true);
+ } while (true);
//little endian
cmdLen = (tempBuf[3] << 8) + tempBuf[2];
@@ -418,16 +414,16 @@ int CFbcCommunication::uartReadData(unsigned char *retData, int *retLen)
readLen = mSerialPort.readFile(tempBuf + bufIndex, needRead - haveRead);
haveRead += readLen;
bufIndex += readLen;
- if(readLen > 0) {
+ if (readLen > 0) {
LOGD("data readLen is:%d\n", readLen);
}
- if(haveRead == needRead) {
+ if (haveRead == needRead) {
break;
}
- } while(true);
+ } while (true);
unsigned int crc = 0;
- if(cmdLen > 4) {
+ if (cmdLen > 4) {
crc = Calcrc32(0, tempBuf, cmdLen - 4);//not include crc 4byte
}
unsigned int bufCrc = tempBuf[cmdLen - 4] |
@@ -436,7 +432,7 @@ int CFbcCommunication::uartReadData(unsigned char *retData, int *retLen)
tempBuf[cmdLen - 1] << 24;
int idx = 0;
- if(crc == bufCrc) {
+ if (crc == bufCrc) {
memcpy(retData, tempBuf, cmdLen % 512);
*retLen = cmdLen;
return cmdLen;
@@ -447,19 +443,19 @@ int CFbcCommunication::uartReadData(unsigned char *retData, int *retLen)
int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData, int dataLen)
{
- switch(fromDev) {
+ switch (fromDev) {
case COMM_DEV_CEC: {
- if(mReplyList.WaitDevNo == fromDev && mReplyList.WaitCmd == pData[1]) {
+ if (mReplyList.WaitDevNo == fromDev && mReplyList.WaitCmd == pData[1]) {
mReplyList.reDataLen = dataLen;
memcpy(mReplyList.replyData, pData, dataLen);
mReplyList.WaitReplyCondition.signal();
- } else if(0) {
+ } else if (0) {
}
break;
}
case COMM_DEV_SERIAL: {
LOGD("to signal wait dataLen:0x%x, cmdId:0x%x\n", dataLen, pData[5]);
- if(mReplyList.WaitDevNo == fromDev && mReplyList.WaitCmd == pData[5]) {
+ if (mReplyList.WaitDevNo == fromDev && mReplyList.WaitCmd == pData[5]) {
mReplyList.reDataLen = dataLen;
memcpy(mReplyList.replyData, pData, dataLen);
mReplyList.WaitReplyCondition.signal();
@@ -467,7 +463,7 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
unsigned char cmd = pData[5];
//just test
const char *value;
- if(!mbSendKeyCode) {
+ if (!mbSendKeyCode) {
value = config_get_str("FBCUART", "fbc_key_event_handle", "null");
if ( strcmp ( value, "true" ) == 0 )
mbSendKeyCode = true;
@@ -477,7 +473,7 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
switch (cmd) {
case 0x14:
if (mbSendKeyCode ) {
- if(pData[6] >= 12 && pData[6] <= 16 ) { //left ---enter
+ if (pData[6] >= 12 && pData[6] <= 16 ) { //left ---enter
unsigned char key = pData[6] ;
LOGD(" key:0x%x\n", key);
@@ -487,15 +483,15 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
//14 key 105 DPAD_LEFT
//15 key 106 DPAD_RIGHT
int checkKey = 0;
- if(key == 16)
+ if (key == 16)
checkKey = 28 ;
- else if(key == 12)
+ else if (key == 12)
checkKey = 103 ;
- else if(key == 13)
+ else if (key == 13)
checkKey = 108 ;
- else if(key == 14)
+ else if (key == 14)
checkKey = 105 ;
- else if(key == 15)
+ else if (key == 15)
checkKey = 106 ;
mTvInput.sendkeyCode(checkKey);
}
@@ -515,14 +511,14 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
static int checkKey = 0, last_checkKey = 0;
- switch(pData[6]) { //different key
+ switch (pData[6]) { //different key
case 12: //DPAD_UP
st_key_up = pData[5];
- if(st_key_up == 0x1D) { //CMD_INPUT_DOWN
+ if (st_key_up == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 103;
mTvInput.sendkeyCode(checkKey);
- } else if(st_key_up == 0x1E) { //CMD_INPUT_UP
+ } else if (st_key_up == 0x1E) { //CMD_INPUT_UP
//checkKey = 103;
//mTvInput.sendkeyCode_Up(checkKey);
}
@@ -530,23 +526,37 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
case 13: //DPAD_DOWN
st_key_down = pData[5];
- if(st_key_down == 0x1D) { //CMD_INPUT_DOWN
+ if (st_key_down == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 108;
mTvInput.sendkeyCode(checkKey);
- } else if(st_key_down == 0x1E) { //CMD_INPUT_UP
+ } else if (st_key_down == 0x1E) { //CMD_INPUT_UP
//checkKey = 108;
//mTvInput.sendkeyCode_Up(checkKey);
}
break;
case 14: //DPAD_LEFT
- st_key_left = pData[5];
- if(st_key_left == 0x1D) { //CMD_INPUT_DOWN
+ st = pData[5];
+ if (st == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 105;
- mTvInput.sendkeyCode(checkKey);
- } else if(st_key_left == 0x1E) { //CMD_INPUT_UP
+ lastTime = 0;
+ mbFbcKeyEnterDown = 1;//true
+ mFbcEnterKeyDownTime = mTvInput.getNowMs();
+ mTvInput.sendKeyRepeatStart(15, 1200, 1500);//code 4, dis 3, repeatTime 2
+ } else if (st == 0x1E) { //CMD_INPUT_UP
+ checkKey = 105;
+ if (mbFbcKeyEnterDown == 1) {
+ mbFbcKeyEnterDown = 0;//false
+ mTvInput.sendKeyRepeatStop();
+ int disFbcEnterKeyDown = mTvInput.getNowMs() - mFbcEnterKeyDownTime;
+ LOGD("disFbcEnterKeyDown = %d", disFbcEnterKeyDown);
+ if (disFbcEnterKeyDown > 1200) { //long down
+ } else {
+ mTvInput.sendkeyCode(105);
+ }
+ }
//checkKey = 105;
//mTvInput.sendkeyCode_Up(checkKey);
}
@@ -554,11 +564,11 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
case 15: //DPAD_RIGHT
st_key_right = pData[5];
- if(st_key_right == 0x1D) { //CMD_INPUT_DOWN
+ if (st_key_right == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 106;
mTvInput.sendkeyCode(checkKey);
- } else if(st_key_right == 0x1E) { //CMD_INPUT_UP
+ } else if (st_key_right == 0x1E) { //CMD_INPUT_UP
//checkKey = 106;
//mTvInput.sendkeyCode_Up(checkKey);
}
@@ -566,21 +576,21 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
case 16: //DPAD_ENTER
st = pData[5];
- if(st == 0x1D) { //CMD_INPUT_DOWN
+ if (st == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 28;
lastTime = 0;
mbFbcKeyEnterDown = 1;//true
mFbcEnterKeyDownTime = mTvInput.getNowMs();
mTvInput.sendKeyRepeatStart(158, 1200, 1500);//code 4, dis 3, repeatTime 2
- } else if(st == 0x1E) { //CMD_INPUT_UP
+ } else if (st == 0x1E) { //CMD_INPUT_UP
checkKey = 28;
- if(mbFbcKeyEnterDown == 1) {
+ if (mbFbcKeyEnterDown == 1) {
mbFbcKeyEnterDown = 0;//false
mTvInput.sendKeyRepeatStop();
int disFbcEnterKeyDown = mTvInput.getNowMs() - mFbcEnterKeyDownTime;
LOGD("disFbcEnterKeyDown = %d", disFbcEnterKeyDown);
- if(disFbcEnterKeyDown > 1200) { //long down
+ if (disFbcEnterKeyDown > 1200) { //long down
} else {
mTvInput.sendkeyCode(28);
}
@@ -590,12 +600,12 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
case 20: //7key power
st_key_right = pData[5];
- if(st_key_right == 0x1D) { //CMD_INPUT_DOWN
+ if (st_key_right == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 116;
//mTvInput.sendIRkeyCode_Down(checkKey);
mTvInput.sendIRkeyCode(checkKey);
- } else if(st_key_right == 0x1E) { //CMD_INPUT_UP
+ } else if (st_key_right == 0x1E) { //CMD_INPUT_UP
checkKey = 116;
//mTvInput.sendIRkeyCode_Up(checkKey);
}
@@ -603,11 +613,11 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
case 26: //7key source
st_key_right = pData[5];
- if(st_key_right == 0x1D) { //CMD_INPUT_DOWN
+ if (st_key_right == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 466;
mTvInput.sendIRkeyCode_Down(checkKey);
- } else if(st_key_right == 0x1E) { //CMD_INPUT_UP
+ } else if (st_key_right == 0x1E) { //CMD_INPUT_UP
checkKey = 466;
mTvInput.sendIRkeyCode_Up(checkKey);
}
@@ -615,11 +625,11 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
case 27: //7key menu
st_key_right = pData[5];
- if(st_key_right == 0x1D) { //CMD_INPUT_DOWN
+ if (st_key_right == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 139;
mTvInput.sendkeyCode(checkKey);
- } else if(st_key_right == 0x1E) { //CMD_INPUT_UP
+ } else if (st_key_right == 0x1E) { //CMD_INPUT_UP
//checkKey = 139;
//mTvInput.sendkeyCode_Up(checkKey);
}
@@ -627,11 +637,11 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
case 40: //7key vol -
st_key_right = pData[5];
- if(st_key_right == 0x1D) { //CMD_INPUT_DOWN
+ if (st_key_right == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 114;
mTvInput.sendIRkeyCode_Down(checkKey);
- } else if(st_key_right == 0x1E) { //CMD_INPUT_UP
+ } else if (st_key_right == 0x1E) { //CMD_INPUT_UP
checkKey = 114;
mTvInput.sendIRkeyCode_Up(checkKey);
}
@@ -639,15 +649,88 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
case 41: //7key vol +
st_key_right = pData[5];
- if(st_key_right == 0x1D) { //CMD_INPUT_DOWN
+ if (st_key_right == 0x1D) { //CMD_INPUT_DOWN
last_checkKey = checkKey;
checkKey = 115;
mTvInput.sendIRkeyCode_Down(checkKey);
- } else if(st_key_right == 0x1E) { //CMD_INPUT_UP
+ } else if (st_key_right == 0x1E) { //CMD_INPUT_UP
checkKey = 115;
mTvInput.sendIRkeyCode_Up(checkKey);
}
break;
+ case 201: //SARADC_DPAD_UP
+ st_key_up = pData[5];
+ if (st_key_up == 0x1D) { //CMD_INPUT_DOWN
+ last_checkKey = checkKey;
+ checkKey = 950;
+ mTvInput.sendkeyCode_Down(checkKey);
+ } else if (st_key_up == 0x1E) { //CMD_INPUT_UP
+ mTvInput.sendkeyCode_Up(checkKey);
+ }
+ break;
+
+ case 202: //SARADC_DOWN
+ st_key_down = pData[5];
+ if (st_key_down == 0x1D) { //CMD_INPUT_DOWN
+ last_checkKey = checkKey;
+ checkKey = 951;
+ mTvInput.sendkeyCode_Down(checkKey);
+ } else if (st_key_down == 0x1E) { //CMD_INPUT_UP
+ mTvInput.sendkeyCode_Up(checkKey);
+ }
+ break;
+
+ case 203: //SARADC_LEFT
+ st = pData[5];
+ if (st == 0x1D) { //CMD_INPUT_DOWN
+ last_checkKey = checkKey;
+ checkKey = 952;
+ lastTime = 0;
+ mbFbcKeyEnterDown = 1;//true
+ mFbcEnterKeyDownTime = mTvInput.getNowMs();
+ mTvInput.sendkeyCode_Down(checkKey);
+ mTvInput.sendKeyRepeatStart(955, 1200, 1500);//code 4, dis 3, repeatTime 2
+ } else if (st == 0x1E) { //CMD_INPUT_UP
+ checkKey = 952;
+ if (mbFbcKeyEnterDown == 1) {
+ mbFbcKeyEnterDown = 0;//false
+ mTvInput.sendKeyRepeatStop();
+ int disFbcEnterKeyDown = mTvInput.getNowMs() - mFbcEnterKeyDownTime;
+ LOGD("disFbcEnterKeyDown = %d", disFbcEnterKeyDown);
+ if (disFbcEnterKeyDown > 1200) { //long down
+ mTvInput.sendkeyCode_Up(955);
+ mTvInput.sendkeyCode_Up(952);
+ } else {
+ mTvInput.sendkeyCode_Up(checkKey);
+ }
+ }
+ }
+ break;
+
+
+ case 204: //SARADC_RIGHT
+ st_key_right = pData[5];
+ if (st_key_right == 0x1D) { //CMD_INPUT_DOWN
+ last_checkKey = checkKey;
+ checkKey = 953;
+ mTvInput.sendkeyCode_Down(checkKey);
+ } else if (st_key_right == 0x1E) { //CMD_INPUT_UP
+ mTvInput.sendkeyCode_Up(checkKey);
+
+ }
+ break;
+
+ case 205: //SARADC_ENTER
+ st_key_right = pData[5];
+ if (st_key_right == 0x1D) { //CMD_INPUT_DOWN
+ last_checkKey = checkKey;
+ checkKey = 954;
+ mTvInput.sendkeyCode_Down(checkKey);
+ } else if (st_key_right == 0x1E) { //CMD_INPUT_UP
+ mTvInput.sendkeyCode_Up(checkKey);
+ }
+
+ break;
}
#endif
}
@@ -662,14 +745,14 @@ int CFbcCommunication::processData(COMM_DEV_TYPE_E fromDev, unsigned char *pData
bool CFbcCommunication::threadLoop()
{
unsigned char readFrameBuf[512];
- while(!exitPending()) { //requietexit() or requietexitWait() not call
- while(mUpgradeFlag == 1) {
+ while (!exitPending()) { //requietexit() or requietexitWait() not call
+ while (mUpgradeFlag == 1) {
usleep(1000 * 1000);
}
int num = mEpoll.wait();
- while(mUpgradeFlag == 1) {
+ while (mUpgradeFlag == 1) {
usleep(1000 * 1000);
}
@@ -679,7 +762,7 @@ bool CFbcCommunication::threadLoop()
* EPOLLIN event
*/
if ((mEpoll)[i].events & EPOLLIN) {
- if(fd == mHdmiCec.getFd()) { //ce-----------------------------c
+ if (fd == mHdmiCec.getFd()) { //ce-----------------------------c
int bufIndex = 0;
int needRead = 4;
int haveRead = 0;
@@ -689,23 +772,30 @@ bool CFbcCommunication::threadLoop()
haveRead += readLen;
bufIndex += readLen;
//if(haveRead == needRead) break;
- } while(0);
+ } while (0);
- if(readLen > 0) {
+ if (readLen > 0) {
processData(COMM_DEV_CEC, readFrameBuf, readLen);
} else {
}
- } else if(fd == mSerialPort.getFd()) {
+ } else if (fd == mSerialPort.getFd()) {
//seria---------------------------l
int cmdLen = 0, idx = 0;
LOGD("serial data come");
memset(readFrameBuf, 0, 512);
int ret = uartReadData(readFrameBuf, &cmdLen);
- if(ret == -1) { //data error
+ if (ret == -1) { //data error
sendAckCmd(false);
- } else if(readFrameBuf[4] == 0x80) { //ack
+ } else if (readFrameBuf[4] == 0x80) { //ack
LOGD("is ack come");
+#ifdef TV_RESEND_UMUTE_TO_FBC
+ if (((readFrameBuf[7] << 8) | readFrameBuf[6]) == 0x8001 &&
+ readFrameBuf[5] == AUDIO_CMD_SET_MUTE) {
+ LOGD("resend unmute to 101 avoid 101 receiving unmute timeout\n");
+ Fbc_Set_Value_INT8(COMM_DEV_SERIAL, AUDIO_CMD_SET_MUTE, 1);
+ }
+#endif
} else { //not ack
sendAckCmd(true);
processData(COMM_DEV_SERIAL, readFrameBuf, cmdLen);
@@ -735,7 +825,7 @@ int CFbcCommunication::Fbc_Set_Value_INT8(COMM_DEV_TYPE_E toDev, int cmd_type, i
return 0;
}
LOGD("%s cmd =0x%x, value=%d", __FUNCTION__, cmd_type, value);
- if(toDev == COMM_DEV_CEC) {
+ if (toDev == COMM_DEV_CEC) {
unsigned char cmd[16], rxbuf[16];
int rxlen = 0, idx = 0;
memset(cmd, 0, 16);
@@ -744,7 +834,7 @@ int CFbcCommunication::Fbc_Set_Value_INT8(COMM_DEV_TYPE_E toDev, int cmd_type, i
cmd[1] = cmd_type;
cmd[2] = value;
sendDataOneway(COMM_DEV_CEC, cmd, 4, 0);
- } else if(toDev == COMM_DEV_SERIAL) {
+ } else if (toDev == COMM_DEV_SERIAL) {
int crc32value = 0;
unsigned char write_buf[512];
unsigned char rxbuf[512];
@@ -778,7 +868,7 @@ int CFbcCommunication::Fbc_Set_Value_INT32(COMM_DEV_TYPE_E toDev, int cmd_type,
return 0;
}
- if(toDev == COMM_DEV_SERIAL) {
+ if (toDev == COMM_DEV_SERIAL) {
int crc32value = 0;
unsigned char write_buf[512];
unsigned char rxbuf[512];
@@ -818,7 +908,7 @@ int CFbcCommunication::Fbc_Get_Value_INT8(COMM_DEV_TYPE_E fromDev, int cmd_type,
LOGD("%s cmd =0x%x", __FUNCTION__, cmd_type);
- if(fromDev == COMM_DEV_CEC) {
+ if (fromDev == COMM_DEV_CEC) {
unsigned char cmd[16], rxbuf[16];
int rxlen = 0, idx = 0;
memset(cmd, 0, 16);
@@ -827,7 +917,7 @@ int CFbcCommunication::Fbc_Get_Value_INT8(COMM_DEV_TYPE_E fromDev, int cmd_type,
cmd[1] = cmd_type;
sendDataAndWaitReply(COMM_DEV_CEC, COMM_DEV_CEC, cmd[1], cmd, 4, 0, rxbuf, &rxlen, 0);
*value = rxbuf[6];
- } else if(fromDev == COMM_DEV_SERIAL) {
+ } else if (fromDev == COMM_DEV_SERIAL) {
int crc32value = 0, idx = 0, rxlen = 0;
unsigned char write_buf[16];
unsigned char rxbuf[16];
@@ -863,21 +953,21 @@ int CFbcCommunication::Fbc_Set_BatchValue(COMM_DEV_TYPE_E toDev, unsigned char *
return 0;
}
- if( 512 <= count) {
+ if ( 512 <= count) {
return -1;
}
- if(toDev == COMM_DEV_CEC) {
+ if (toDev == COMM_DEV_CEC) {
unsigned char cmd[512], rxbuf[512];
int rxlen = 0, idx = 0;
memset(cmd, 0, 512);
memset(rxbuf, 0, 512);
cmd[0] = 0x40;
- for(idx = 0; idx < count; idx++) {
+ for (idx = 0; idx < count; idx++) {
cmd[idx + 1] = cmd_buf[idx];
}
sendDataOneway(COMM_DEV_CEC, cmd, count + 1, 0);
- } else if(toDev == COMM_DEV_SERIAL) {
+ } else if (toDev == COMM_DEV_SERIAL) {
int crc32value = 0;
unsigned char write_buf[512];
unsigned char rxbuf[512];
@@ -892,7 +982,7 @@ int CFbcCommunication::Fbc_Set_BatchValue(COMM_DEV_TYPE_E toDev, unsigned char *
//Ack byte : 0x80-> ack package;0x00->normal package;
write_buf[4] = 0x00;
- for(idx = 0; idx < count; idx++) {
+ for (idx = 0; idx < count; idx++) {
write_buf[idx + 5] = cmd_buf[idx];
}
//crc32 little Endian
@@ -912,12 +1002,12 @@ int CFbcCommunication::Fbc_Get_BatchValue(COMM_DEV_TYPE_E fromDev, unsigned char
return 0;
}
- if( 512 <= count) {
+ if ( 512 <= count) {
return -1;
}
int ret = 0;
// TODO: read value
- if(fromDev == COMM_DEV_CEC) {
+ if (fromDev == COMM_DEV_CEC) {
unsigned char cmd[512], rxbuf[512];
int rxlen = 0, idx = 0;
memset(cmd, 0, 512);
@@ -926,8 +1016,8 @@ int CFbcCommunication::Fbc_Get_BatchValue(COMM_DEV_TYPE_E fromDev, unsigned char
cmd[1] = cmd_buf[0];
sendDataAndWaitReply(COMM_DEV_CEC, COMM_DEV_CEC, cmd[1], cmd, count + 1, 0, rxbuf, &rxlen, 0);
- if(rxlen > 2) {
- for(idx = 0; idx < rxlen; idx++) {
+ if (rxlen > 2) {
+ for (idx = 0; idx < rxlen; idx++) {
cmd_buf[idx] = cmd[idx + 1];
}
}
@@ -947,7 +1037,7 @@ int CFbcCommunication::Fbc_Get_BatchValue(COMM_DEV_TYPE_E fromDev, unsigned char
//Ack byte
write_buf[4] = 0x00;
//cmd ID
- for(idx = 0; idx < count; idx++) {
+ for (idx = 0; idx < count; idx++) {
write_buf[idx + 5] = cmd_buf[idx];
}
//crc32 little Endian
@@ -958,8 +1048,8 @@ int CFbcCommunication::Fbc_Get_BatchValue(COMM_DEV_TYPE_E fromDev, unsigned char
write_buf[count + 8] = (crc32value >> 24) & 0xFF;
sendDataAndWaitReply(COMM_DEV_SERIAL, COMM_DEV_SERIAL, write_buf[5], write_buf, write_buf[2], 2000, rxbuf, &rxlen, 0);
- if(rxlen > 9) {
- for(idx = 0; idx < (rxlen - 9); idx++) {
+ if (rxlen > 9) {
+ for (idx = 0; idx < (rxlen - 9); idx++) {
cmd_buf[idx] = rxbuf[idx + 5];
}
}
@@ -1041,12 +1131,43 @@ int CFbcCommunication::cfbc_Get_WB_Initial(COMM_DEV_TYPE_E fromDev, int *value)
int CFbcCommunication::cfbc_Set_ColorTemp_Mode(COMM_DEV_TYPE_E fromDev, int value)
{
- return Fbc_Set_Value_INT8(fromDev, VPU_CMD_COLOR_TEMPERATURE_DEF, value);
+ int fbcValue = value;
+ switch (value) {
+ case 0: //standard
+ fbcValue = 1;
+ break;
+ case 1: //warm
+ fbcValue = 2;
+ break;
+ case 2: //cold
+ fbcValue = 0;
+ break;
+ default:
+ break;
+ }
+ LOGD("before set fbcValue = %d", fbcValue);
+ return Fbc_Set_Value_INT8(fromDev, VPU_CMD_COLOR_TEMPERATURE_DEF, fbcValue);
}
int CFbcCommunication::cfbc_Get_ColorTemp_Mode(COMM_DEV_TYPE_E fromDev, int *value)
{
- return Fbc_Get_Value_INT8(fromDev, VPU_CMD_COLOR_TEMPERATURE_DEF | 0x80, value);
+ Fbc_Get_Value_INT8(fromDev, VPU_CMD_COLOR_TEMPERATURE_DEF | 0x80, value);
+
+ switch (*value) {
+ case 0: //cold
+ *value = 2;
+ break;
+ case 1: //standard
+ *value = 0;
+ break;
+ case 2: //warm
+ *value = 1;
+ break;
+ default:
+ break;
+ }
+
+ return 0;
}
int CFbcCommunication::cfbc_Set_Test_Pattern(COMM_DEV_TYPE_E fromDev, int value)
@@ -1302,7 +1423,7 @@ int CFbcCommunication::cfbc_Get_FBC_Factory_SN(COMM_DEV_TYPE_E fromDev, char Fac
if (rx_len <= 0) {
return -1;
}
- strncpy(FactorySN, (char *)(cmd + 1), 17);
+ strncpy(FactorySN, (char *)(cmd + 1), rx_len);
LOGD("panelModel=%s", FactorySN);
return 0;
@@ -1455,6 +1576,17 @@ int CFbcCommunication::cfbc_Get_Gamma(COMM_DEV_TYPE_E fromDev, int *value)
return 0;
}
+int CFbcCommunication::cfbc_Set_VMute(COMM_DEV_TYPE_E fromDev, unsigned char value)
+{
+ unsigned char cmd[512];
+ memset(cmd, 0, 512);
+
+ cmd[0] = VPU_CMD_USER_VMUTE;
+ cmd[1] = value;
+ LOGD("cfbc_Set_VMute=%d", cmd[1]);
+
+ return Fbc_Set_BatchValue(fromDev, cmd, 2);
+}
int CFbcCommunication::cfbc_Set_WhiteBalance_OnOff(COMM_DEV_TYPE_E fromDev, unsigned char value)
{
unsigned char cmd[512];
@@ -1498,6 +1630,35 @@ int CFbcCommunication::cfbc_Set_WB_Batch(COMM_DEV_TYPE_E fromDev, unsigned char
return Fbc_Set_BatchValue(fromDev, cmd, 8);
}
+int CFbcCommunication::cfbc_TestPattern_Select(COMM_DEV_TYPE_E fromDev, int value)
+{
+ int ret = -1;
+ unsigned char cmd[512];
+ memset(cmd, 0, 512);
+
+ LOGD("Call vpp 63 2 1\n");
+ cmd[0] = VPU_CMD_SRCIF;
+ cmd[1] = 2;
+ cmd[2] = 1;
+
+ ret = Fbc_Set_BatchValue(fromDev, cmd, 3);//close csc0
+
+ if (ret == 0) {
+ LOGD("Call vpp 9 11 1\n");
+ memset(cmd, 0, 512);
+ cmd[0] = VPU_CMD_ENABLE;
+ cmd[1] = 11;
+ cmd[2] = 1;
+ ret = Fbc_Set_BatchValue(fromDev, cmd, 3);
+ if (ret == 0) {
+ memset(cmd, 0, 512);
+ LOGD("Call vpp 42 1-17\n");
+ Fbc_Set_Value_INT8(fromDev, VPU_CMD_PATTEN_SEL, value);
+ }
+ }
+
+ return ret;
+}
int CFbcCommunication::cfbc_WhiteBalance_GrayPattern_OnOff(COMM_DEV_TYPE_E fromDev, int onOff)
{
int ret = -1;
@@ -1575,6 +1736,22 @@ int CFbcCommunication::cfbc_WhiteBalance_SetGrayPattern(COMM_DEV_TYPE_E fromDev,
return ret;
}
+int CFbcCommunication::cfbc_Set_Auto_Backlight_OnOff(COMM_DEV_TYPE_E fromDev, unsigned char value)
+{
+ unsigned char cmd[512];
+ memset(cmd, 0, 512);
+
+ cmd[0] = CMD_SET_AUTO_BACKLIGHT_ONFF;
+ cmd[1] = value;
+ LOGD("cfbc_Set_naturelight_onoff\n");
+ return Fbc_Set_BatchValue(fromDev, cmd, 2);
+}
+
+int CFbcCommunication::cfbc_Get_Auto_Backlight_OnOff(COMM_DEV_TYPE_E fromDev, int *value)
+{
+ LOGD("cfbc_get_naturelight_onoff\n");
+ return Fbc_Get_Value_INT8(fromDev, CMD_GET_AUTO_BACKLIGHT_ONFF, value);
+}
int CFbcCommunication::cfbc_Get_WB_Batch(COMM_DEV_TYPE_E fromDev, unsigned char mode, unsigned char *r_gain, unsigned char *g_gain, unsigned char *b_gain, unsigned char *r_offset, unsigned char *g_offset, unsigned char *b_offset)
{
unsigned char cmd[512];
@@ -1618,8 +1795,7 @@ int CFbcCommunication::cfbc_Set_AUTO_ELEC_MODE(COMM_DEV_TYPE_E fromDev, int valu
int CFbcCommunication::cfbc_Get_AUTO_ELEC_MODE(COMM_DEV_TYPE_E fromDev, int *value)
{
- LOGD("%s cmd =0x%x~~~~~~~~~", __FUNCTION__, VPU_CMD_SET_ELEC_MODE);
- return Fbc_Get_Value_INT8(fromDev, VPU_CMD_GET_ELEC_MODE, value);
+ return 0;
}
int CFbcCommunication::cfbc_Set_Thermal_state(COMM_DEV_TYPE_E fromDev, int value)
@@ -1631,8 +1807,8 @@ int CFbcCommunication::cfbc_Set_Thermal_state(COMM_DEV_TYPE_E fromDev, int value
int CFbcCommunication::cfbc_Set_LightSensor_N310(COMM_DEV_TYPE_E fromDev, int value)
{
+ return Fbc_Set_Value_INT8(fromDev, 0x84, value);
// return Fbc_Set_Value_INT8(fromDev, CMD_LIGHT_SENSOR, value);
- return 0;
}
int CFbcCommunication::cfbc_Get_LightSensor_N310(COMM_DEV_TYPE_E fromDev, int *value)
@@ -1643,8 +1819,8 @@ int CFbcCommunication::cfbc_Get_LightSensor_N310(COMM_DEV_TYPE_E fromDev, int *v
int CFbcCommunication::cfbc_Set_Dream_Panel_N310(COMM_DEV_TYPE_E fromDev, int value)
{
+ return Fbc_Set_Value_INT8(fromDev, 0x83, value);
// return Fbc_Set_Value_INT8(fromDev, CMD_DREAM_PANEL, value);
- return 0;
}
int CFbcCommunication::cfbc_Get_Dream_Panel_N310(COMM_DEV_TYPE_E fromDev, int *value)
@@ -1655,8 +1831,8 @@ int CFbcCommunication::cfbc_Get_Dream_Panel_N310(COMM_DEV_TYPE_E fromDev, int *v
int CFbcCommunication::cfbc_Set_MULT_PQ_N310(COMM_DEV_TYPE_E fromDev, int value)
{
+ return Fbc_Set_Value_INT8(fromDev, 0x81, value);
// return Fbc_Set_Value_INT8(fromDev, CMD_MUTI_PQ, value);
- return 0;
}
int CFbcCommunication::cfbc_Get_MULT_PQ_N310(COMM_DEV_TYPE_E fromDev, int *value)
@@ -1667,8 +1843,8 @@ int CFbcCommunication::cfbc_Get_MULT_PQ_N310(COMM_DEV_TYPE_E fromDev, int *value
int CFbcCommunication::cfbc_Set_MEMC_N310(COMM_DEV_TYPE_E fromDev, int value)
{
+ return Fbc_Set_Value_INT8(fromDev, 0x82, value);
// return Fbc_Set_Value_INT8(fromDev, CMD_MEMC, value);
- return 0;
}
int CFbcCommunication::cfbc_Get_MEMC_N310(COMM_DEV_TYPE_E fromDev, int *value)
@@ -1676,7 +1852,54 @@ int CFbcCommunication::cfbc_Get_MEMC_N310(COMM_DEV_TYPE_E fromDev, int *value)
// return Fbc_Get_Value_INT8(fromDev, CMD_MEMC|0x80, value);
return 0;
}
+int CFbcCommunication::cfbc_Set_Bluetooth_IIS_onoff(COMM_DEV_TYPE_E fromDev, int value)
+{
+ return Fbc_Set_Value_INT8(fromDev, CMD_BLUETOOTH_I2S_STATUS, value);
+}
+int CFbcCommunication::cfbc_Get_Bluetooth_IIS_onoff(COMM_DEV_TYPE_E fromDev, int *value)
+{
+ return Fbc_Get_Value_INT8(fromDev, CMD_BLUETOOTH_I2S_STATUS | 0x80, value);
+}
+int CFbcCommunication::cfbc_Set_Led_onoff(COMM_DEV_TYPE_E fromDev, int val_1, int val_2, int val_3)
+{
+ unsigned char cmd[512];
+ memset(cmd, 0, 512);
+
+ cmd[0] = CMD_SET_LED_MODE;
+ cmd[1] = val_1;
+ cmd[2] = val_2;
+ cmd[3] = val_3;
+
+ return Fbc_Set_BatchValue(fromDev, cmd, 4);
+}
+int CFbcCommunication::cfbc_Set_LockN_state(COMM_DEV_TYPE_E fromDev, int value)
+{
+ LOGD("%s cmd =0x%x, data%d ~~~~~~~~~\n", __FUNCTION__, CMD_SET_LOCKN_DISABLE, value);
+ return Fbc_Set_Value_INT8(fromDev, CMD_SET_LOCKN_DISABLE, value);
+}
+
+int CFbcCommunication::cfbc_SET_SPLIT_SCREEN_DEMO(COMM_DEV_TYPE_E fromDev, int value)
+{
+ LOGD("%s,cmd[%#x], data[%d]\n", __FUNCTION__, CMD_SET_SPLIT_SCREEN_DEMO, value);
+ return Fbc_Set_Value_INT8(fromDev, CMD_SET_SPLIT_SCREEN_DEMO, value);
+}
+
+int CFbcCommunication::cfbc_Set_AP_STANDBY_N310(COMM_DEV_TYPE_E fromDev, int value)
+{
+ return Fbc_Set_Value_INT8(fromDev, CMD_PANEL_ON_OFF, value);
+ // return 0;
+}
+
+int CFbcCommunication::cfbc_Get_AP_STANDBY_N310(COMM_DEV_TYPE_E fromDev, int *value)
+{
+ return Fbc_Get_Value_INT8(fromDev, CMD_PANEL_ON_OFF | 0x80, value);
+ // return 0;
+}
+int CFbcCommunication::cfbc_Set_Fbc_Uboot_Stage(COMM_DEV_TYPE_E fromDev, int value)
+{
+ return Fbc_Set_Value_INT8(fromDev, CMD_SET_UBOOT_STAGE, value);
+}
void CFbcCommunication::CFbcMsgQueue::handleMessage ( CMessage &msg )
{