Merge branch 'Branch_S550_Fast_Emmc' of gitlab.sifar.tech:linux-em-group/s530-ntk into branch_s550_fast_emmc

This commit is contained in:
xiaojiazhu 2024-01-03 16:48:27 +08:00
commit 9ee4af14eb
28 changed files with 373 additions and 95 deletions

View File

@ -72,10 +72,16 @@ insmod /etc/lib/modules/$KERVER/extra/fs/exfat/exfat.ko
#mdev -s #mdev -s
# Scan for without insert card if [ -d "/sys/class/block/mmcblk0p1" ]; then
if [ ! -f /tmp/.nvt_mounts ]; then mknod /dev/mmcblk0p1 b `cat /sys/class/block/mmcblk0p1/dev | sed "s/:/\ /g"`
/etc/mdev-script/autosd.sh fi
rm -rf /tmp/.nvt_mounts;
if [ -d "/sys/class/block/mmcblk1p1" ]; then
mknod /dev/mmcblk1p1 b `cat /sys/class/block/mmcblk1p1/dev | sed "s/:/\ /g"`
fi fi
echo "fs" > /proc/nvt_info/bootts # Scan for without insert card
if [ ! -f /tmp/.nvt_mounts ]; then
/etc/mdev-script/autosd.sh
rm -rf /tmp/.nvt_mounts;
fi

View File

@ -201,8 +201,6 @@ ${PREFIX}/lib/modules/$KERVER/hdal/kdrv_videoout/fbdev/nvt_fb.ko
#insmod ${PREFIX}/lib/modules/$KERVER/hdal/comm/usb2dev/nvt_usb2dev.ko #insmod ${PREFIX}/lib/modules/$KERVER/hdal/comm/usb2dev/nvt_usb2dev.ko
#fi #fi
mount /dev/mmcblk1p1 /mnt/sd2
if [ -f /usr/bin/isp_demon ]; then if [ -f /usr/bin/isp_demon ]; then
/usr/bin/isp_demon /usr/bin/isp_demon
else else

View File

@ -259,16 +259,30 @@ UINT32 pll_get_pll_freq(PLL_ID id)
*/ */
UINT32 pll_get_clock_rate(PLL_CLKSEL clk_sel) UINT32 pll_get_clock_rate(PLL_CLKSEL clk_sel)
{ {
UINT32 ui_mask, ui_reg_offset; UINT32 ui_mask, ui_reg_offset;
REGVALUE reg_data; REGVALUE reg_data;
ui_reg_offset = 0x20; // ui_reg_offset = 0x20;
ui_mask = (0x7<<PLL_CLKSEL_IDE_CLKSRC_OFS); // ui_mask = (0x7<<PLL_CLKSEL_IDE_CLKSRC_OFS);
if (clk_sel == PLL_CLKSEL_IDE_CLKSRC) {
ui_reg_offset = 0x20;
ui_mask = (0x7<<PLL_CLKSEL_IDE_CLKSRC_OFS);
} else if (clk_sel == PLL_CLKSEL_IDE_CLKDIV) {
ui_reg_offset = 0x34;
ui_mask = (0xFF);
} else if (clk_sel == PLL_CLKSEL_IDE_OUTIF_CLKDIV) {
ui_reg_offset = 0x34;
ui_mask = (0xFF << 8);
} else {
DBG_WRN("pll_get_clock_rate fail, return 0\r\n");
return 0;
}
reg_data = INREG32(IOADDR_CG_REG_BASE + ui_reg_offset);
reg_data &= ui_mask;
return (UINT32)reg_data; reg_data = INREG32(IOADDR_CG_REG_BASE + ui_reg_offset);
reg_data &= ui_mask;
return (UINT32)reg_data;
} }
void pll_set_clock_rate(PLL_CLKSEL clk_sel, UINT32 ui_value) void pll_set_clock_rate(PLL_CLKSEL clk_sel, UINT32 ui_value)

View File

@ -224,7 +224,9 @@ const T_PANEL_CMD t_cmd_mode_rgb320[] = {
const T_LCD_PARAM t_mode[] = { const T_LCD_PARAM t_mode[] = {
/*********** RGB Serial MODE *************/ /*********** RGB Serial MODE *************/
{ {
// T_PANEL_PARAM // T_PANEL_PARAM
#if 0
{ {
/* Old prototype */ /* Old prototype */
PINMUX_LCDMODE_RGB_SERIAL, //!< LCDMode PINMUX_LCDMODE_RGB_SERIAL, //!< LCDMode
@ -264,6 +266,48 @@ const T_LCD_PARAM t_mode[] = {
0x0A, //!< uiHSyncSYNCwidth 0x0A, //!< uiHSyncSYNCwidth
0x04, //!< uiVSyncSYNCwidth 0x04, //!< uiVSyncSYNCwidth
}, },
#else
{
/* Old prototype */
PINMUX_LCDMODE_RGB_THROUGH, //!< LCDMode
// 18000000 / 3 , //24.0f, //!< fDCLK
5000000,
#if 1
1024 / 3,//PANELWIDTH + 69*2, //!< uiHSyncTotalPeriod
720 / 3,//PANELWIDTH, //!< uiHSyncActivePeriod
69 / 3, //!< uiHSyncBackPorch
384,//PANELHEIGHT + 40, //!< uiVSyncTotalPeriod
344, //!< uiVSyncActivePeriod
2, //!< uiVSyncBackPorchOdd
2, //!< uiVSyncBackPorchEven
720 / 3,//320,//PANELWIDTH, //!< uiBufferWidth
320,//720,//PANELHEIGHT, //!< uiBufferHeight
720 / 3,//320,//PANELWIDTH, //!< uiWindowWidth
320,//720,//PANELHEIGHT, //!< uiWindowHeight
#endif
#if 0
PANELWIDTH + 200, //!< uiHSyncTotalPeriod
PANELWIDTH, //!< uiHSyncActivePeriod
10, //!< uiHSyncBackPorch
PANELHEIGHT + 140, //!< uiVSyncTotalPeriod
PANELHEIGHT, //!< uiVSyncActivePeriod
4, //!< uiVSyncBackPorchOdd
4, //!< uiVSyncBackPorchEven
PANELWIDTH, //!< uiBufferWidth
PANELHEIGHT, //!< uiBufferHeight
PANELWIDTH, //!< uiWindowWidth
PANELHEIGHT, //!< uiWindowHeight
#endif
FALSE, //!< bYCbCrFormat
/* New added parameters */
0x0A, //!< uiHSyncSYNCwidth
0x04, //!< uiVSyncSYNCwidth
},
#endif
// tIDE_PARAM // tIDE_PARAM
{ {
@ -273,8 +317,8 @@ const T_LCD_PARAM t_mode[] = {
{FALSE,FALSE}, //!< dithering[2]; {FALSE,FALSE}, //!< dithering[2];
DISPLAY_DEVICE_TOPPOLY, //!< **DONT-CARE** DISPLAY_DEVICE_TOPPOLY, //!< **DONT-CARE**
IDE_PDIR_RBG, //!< pdir; IDE_PDIR_RBG, //!< pdir;
IDE_LCD_G, //!< odd; IDE_LCD_B, //!< odd;
IDE_LCD_G, //!< even; IDE_LCD_B, //!< even;
TRUE, //!< hsinv; TRUE, //!< hsinv;
TRUE, //!< vsinv; TRUE, //!< vsinv;
FALSE, //!< hvldinv; FALSE, //!< hvldinv;

View File

@ -81,6 +81,11 @@ void SF_StrgUnInit(void)
pMMCDev = NULL; pMMCDev = NULL;
} }
int SF_GetMMCDevHandle(MMC_DEV_TYPE dev_type)
{
return sf_mmc_dev[dev_type]->dcf_handle;
}
void SF_StrgSetDcfHandle(UINT32 strg_id, UINT32 handle) void SF_StrgSetDcfHandle(UINT32 strg_id, UINT32 handle)
{ {
sf_mmc_dev[strg_id]->dcf_handle = handle; sf_mmc_dev[strg_id]->dcf_handle = handle;

View File

@ -87,7 +87,7 @@ SF_ST_MMC_DEV *SF_StrgCheckWorkableDev(void);
void SF_SetMMCDev(SF_ST_MMC_DEV *pDev); void SF_SetMMCDev(SF_ST_MMC_DEV *pDev);
SF_ST_MMC_DEV *SF_GetMMCDev(void); SF_ST_MMC_DEV *SF_GetMMCDev(void);
int sf_mmc_dev_check_start(void); int sf_mmc_dev_check_start(void);
int SF_GetMMCDevHandle(MMC_DEV_TYPE dev_type);

View File

@ -227,15 +227,15 @@ INT32 System_OnBoot(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray)
Load_MenuInfo(); Load_MenuInfo();
#endif #endif
#else #else
#if (BOOT_RESET_MENU_INFO == ENABLE) // #if (BOOT_RESET_MENU_INFO == ENABLE)
//EMMC_AS_PSTORE // //EMMC_AS_PSTORE
#if (defined(_CPU2_LINUX_) && defined(_EMBMEM_EMMC_)) // #if (defined(_CPU2_LINUX_) && defined(_EMBMEM_EMMC_))
System_OnStrgInit_PS(); //because ps uses filesys in this case, so ps init was moved here. // System_OnStrgInit_PS(); //because ps uses filesys in this case, so ps init was moved here.
Load_MenuInfo(); // Load_MenuInfo();
#else // #else
Load_MenuInfo(); //reset value cause the FL_FSStatus as '0', we do so before NVTEVT_STRG_ATTACH finish // Load_MenuInfo(); //reset value cause the FL_FSStatus as '0', we do so before NVTEVT_STRG_ATTACH finish
#endif // #endif
#endif // #endif
#endif #endif
//#NT#2016/12/14#Niven Cho -end //#NT#2016/12/14#Niven Cho -end
#if (BOOT_RESET_MENU_INFO == ENABLE) #if (BOOT_RESET_MENU_INFO == ENABLE)

View File

@ -281,6 +281,7 @@ SXCMD_ITEM("uiprint %", sf_cmd_para_printf, "uiprint")
SXCMD_ITEM("blusw %", cmd_blu_switch, "blusw 0/1") SXCMD_ITEM("blusw %", cmd_blu_switch, "blusw 0/1")
SXCMD_ITEM("wifisw %", cmd_wifi_switch, "wifisw 0/1") SXCMD_ITEM("wifisw %", cmd_wifi_switch, "wifisw 0/1")
SXCMD_ITEM("lcdbk %", sf_set_backlight_status, "lcdbk 0/1") SXCMD_ITEM("lcdbk %", sf_set_backlight_status, "lcdbk 0/1")
SXCMD_ITEM("sfdump %", sf_vos_perf_list_dump, "sfdump")
#endif #endif
#if FS_MULTI_STRG_FUNC /* test cmd */ #if FS_MULTI_STRG_FUNC /* test cmd */

View File

@ -54,7 +54,7 @@ void Strg_CB(UINT32 event, UINT32 param1, UINT32 param2)
SF_MESSAGE_BUF_S stMessageBuf = {0}; SF_MESSAGE_BUF_S stMessageBuf = {0};
#endif #endif
DBG_IND("Strg_CB: strg_id = %d, status = %d\n", param1, param2); printf("Strg_CB: strg_id = %d, status = %d\n", param1, param2);
switch (event) { switch (event) {
// part-1 // part-1
case SYSTEM_CB_CONFIG: case SYSTEM_CB_CONFIG:

View File

@ -1218,20 +1218,12 @@ INT32 System_OnStrgAttach(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray)
} }
#if HUNTING_CAMERA_MCU == ENABLE #if HUNTING_CAMERA_MCU == ENABLE
if((FS_DISK_ERROR == System_GetState(SYS_STATE_FS))){ if((FS_DISK_ERROR == System_GetState(SYS_STATE_FS))){
stMessageBuf.arg1 = CMD_SD_STRG_CB_UNMOUNT_FINISH; stMessageBuf.arg1 = CMD_SD_STRG_CB_UNMOUNT_FINISH;
stMessageBuf.arg2 = strg_id; stMessageBuf.arg2 = strg_id;
stMessageBuf.cmdId = CMD_SD; stMessageBuf.cmdId = CMD_SD;
sf_com_message_send_to_app(&stMessageBuf); sf_com_message_send_to_app(&stMessageBuf);
#if USE_MMC_DEV_CHECK #if USE_MMC_DEV_CHECK
if(strg_id == 1)
{
printf("emmc mounted failed, remount\n");
system("mount /dev/mmcblk1p1 /mnt/sd2");
stMessageBuf.arg1 = CMD_SD_STRG_CB_MOUNT_FINISH;
}
SF_StrgRegister(&stMessageBuf); SF_StrgRegister(&stMessageBuf);
#endif #endif
printf("System_OnStrgAttach send UNMOUNT! dev_id = %d\n", strg_id); printf("System_OnStrgAttach send UNMOUNT! dev_id = %d\n", strg_id);

View File

@ -388,6 +388,7 @@ int NvtMain(void)
{ {
#if HUNTING_CAMERA_MCU == ENABLE #if HUNTING_CAMERA_MCU == ENABLE
sf_cardv_check_power_on_mode(); sf_cardv_check_power_on_mode();
sf_cardv_load_menu_info_start();
#endif #endif
System_InstallID(); System_InstallID();
#if (USB_MODE==ENABLE) #if (USB_MODE==ENABLE)

View File

@ -766,12 +766,40 @@ UINT32 PhotoExe_GetFreePicNum(void)
UINT32 PhotoExe_GetTotalPicNum(void) UINT32 PhotoExe_GetTotalPicNum(void)
{ {
UINT64 uiSpace; UINT64 uiSpace = 0;
UINT32 totalImgNum; UINT32 totalImgNum;
UINT32 reserveSize = 0x80000; // 500KB UINT32 reserveSize = 0x80000; // 500KB
UINT32 CaptureSize; UINT32 CaptureSize;
UINT32 size; UINT32 size;
#if USE_MMC_DEV_CHECK
SF_ST_MMC_DEV *mmc_dev = SF_GetMMCDev();
if(mmc_dev == NULL)
{
DBG_ERR("No MMC_Dev Can use!\n");
return 0;
}
if(mmc_dev->dcf_handle < 0)
{
DBG_ERR("dcf_handle err!\n");
return 0;
}
#endif
#if USE_MMC_DEV_CHECK
if(mmc_dev->dev_type == MMC_DEV_SD)
{
uiSpace = FileSys_GetDiskInfoEx('A', FST_INFO_DISK_SIZE);
}
else if(mmc_dev->dev_type == MMC_DEV_EMMC)
{
uiSpace = FileSys_GetDiskInfoEx('B', FST_INFO_DISK_SIZE);
}
#else
uiSpace = FileSys_GetDiskInfo(FST_INFO_DISK_SIZE); uiSpace = FileSys_GetDiskInfo(FST_INFO_DISK_SIZE);
#endif
//DBG_IND("[cap]Free Space = %d KB\r\n", uiSpace / 1024); //DBG_IND("[cap]Free Space = %d KB\r\n", uiSpace / 1024);

View File

@ -694,7 +694,7 @@ static void qr_page_task_cb(lv_task_t* task){
{ {
UIMenuStoreInfo *puiPara = sf_ui_para_get(); UIMenuStoreInfo *puiPara = sf_ui_para_get();
printf("[qr_page_task_cb]is esim card...%s\n", puiPara->ModuleImei); printf("[qr_page_task_cb]is esim card...%s\n", puiPara->ModuleImei);
if(strlen(puiPara->SimIccidV) == 0 && strlen(puiPara->SimIccidA) == 0) if (strlen(puiPara->SimIccid) == 0 || strlen(puiPara->ModuleImei) == 0)
{ {
lv_label_set_text(labelInit, "Please restart the camera"); lv_label_set_text(labelInit, "Please restart the camera");
return; return;
@ -705,16 +705,16 @@ static void qr_page_task_cb(lv_task_t* task){
{ {
UIMenuStoreInfo *puiPara = sf_ui_para_get(); UIMenuStoreInfo *puiPara = sf_ui_para_get();
printf("[qr_page_task_cb]is sim card...%s\n", puiPara->ModuleImei); printf("[qr_page_task_cb]is sim card...%s\n", puiPara->ModuleImei);
if(strlen(puiPara->SimIccidV) == 0 && strlen(puiPara->SimIccidA) == 0) if (strlen(puiPara->SimIccid) == 0 || strlen(puiPara->ModuleImei) == 0)
{ {
lv_label_set_text(labelInit, "Please insert SIM card and restart the camera"); lv_label_set_text(labelInit, "Please restart the camera");
return; return;
} }
snprintf(qr_date, QR_DATA_LENGTH, qr_code_str, puiPara->ModuleImei, puiPara->SimIccidV, puiPara->SimIccidA, "false"); snprintf(qr_date, QR_DATA_LENGTH, qr_code_str, puiPara->ModuleImei, puiPara->SimIccidV, puiPara->SimIccidA, "false");
} }
else if (ret == -1) else if (ret == -1)
{ {
if(sf_cardv_4G_status_get() == SF_4G_SEARCHING) if (sf_cardv_4G_status_get() == SF_4G_SEARCHING)
{ {
lv_label_set_text(labelInit, "\nQR code loading..."); lv_label_set_text(labelInit, "\nQR code loading...");
} }

View File

@ -14,6 +14,8 @@
#define __DBGFLT__ "*" //*=All, [mark]=CustomClass #define __DBGFLT__ "*" //*=All, [mark]=CustomClass
#include <kwrap/debug.h> #include <kwrap/debug.h>
#include "SF_SysStrgMng.h"
PHOTO_TASK_DATA gPhotoData = { 0 }; PHOTO_TASK_DATA gPhotoData = { 0 };
static UINT32 g_uiFreePicNum = 0; static UINT32 g_uiFreePicNum = 0;
@ -28,7 +30,29 @@ CHAR *Get_FreePicNumString(UINT32 uiValue)
return 0; return 0;
} }
unsigned long fileCount = 0; unsigned long fileCount = 0;
#if USE_MMC_DEV_CHECK
SF_ST_MMC_DEV *mmc_dev = SF_GetMMCDev();
if(mmc_dev == NULL)
{
DBG_ERR("No MMC_Dev Can use!\n");
return NULL;
}
if(mmc_dev->dcf_handle < 0)
{
DBG_ERR("dcf_handle err!\n");
return NULL;
}
#endif
#if USE_MMC_DEV_CHECK
if(mmc_dev->dev_type != MMC_DEV_NO)
{
fileCount = DCF_GetDBInfoEx(mmc_dev->dcf_handle, DCF_INFO_TOL_FILE_COUNT);
}
#else
fileCount = DCF_GetDBInfo(DCF_INFO_TOL_FILE_COUNT); fileCount = DCF_GetDBInfo(DCF_INFO_TOL_FILE_COUNT);
#endif
snprintf(g_cFreePicNumStr, sizeof(g_cFreePicNumStr), "%05ld/%05ld", fileCount, uiValue); snprintf(g_cFreePicNumStr, sizeof(g_cFreePicNumStr), "%05ld/%05ld", fileCount, uiValue);
return g_cFreePicNumStr; return g_cFreePicNumStr;
} }

View File

@ -27,7 +27,7 @@
//#define PLAY_KEY_PRESS_MASK (FLGKEY_KEY_MASK_DEFAULT) //#define PLAY_KEY_PRESS_MASK (FLGKEY_KEY_MASK_DEFAULT)
//#define PLAY_KEY_RELEASE_MASK FLGKEY_KEY_MASK_NULL//(FLGKEY_UP | FLGKEY_DOWN | FLGKEY_LEFT | FLGKEY_RIGHT) //#define PLAY_KEY_RELEASE_MASK FLGKEY_KEY_MASK_NULL//(FLGKEY_UP | FLGKEY_DOWN | FLGKEY_LEFT | FLGKEY_RIGHT)
//#define PLAY_KEY_CONTINUE_MASK FLGKEY_KEY_CONT_MASK_DEFAULT //#define PLAY_KEY_CONTINUE_MASK FLGKEY_KEY_CONT_MASK_DEFAULT
static SF_ST_MMC_DEV *mmc_dev = NULL; extern int System_Get_DCF_Handle(void);
//static lv_obj_t* pMenu = NULL; //static lv_obj_t* pMenu = NULL;
enum SELECTION_SHOW enum SELECTION_SHOW
{ {
@ -60,6 +60,9 @@ extern void PBView_DrawNoFile(void);
static void stop_play(void); static void stop_play(void);
//#NT#2023/11/14#Eric - end //#NT#2023/11/14#Eric - end
#define HANDLE_SD 1
#define HANDLE_EMMC 0
static BOOL g_PlayBgInitFileSys = FALSE; static BOOL g_PlayBgInitFileSys = FALSE;
#if 1 #if 1
@ -221,6 +224,22 @@ static void update_play_Selection_msg(lv_obj_t* obj)
} }
} }
} }
UINT32 cardStatus = System_GetState(SYS_STATE_CARD);
if (cardStatus == CARD_REMOVED && OPTION_PAGE_SELECT_FUNCTION != gOptionPage)
{
ProfileFocused = 0;
ProfileSelected = 0;
lv_obj_set_state(image_button_option_1_scr_uiflowplay, LV_STATE_FOCUSED);
lv_obj_set_state(label_option1_scr_uiflowplay, LV_STATE_FOCUSED);
lv_plugin_img_set_src(image_option1_scr_uiflowplay, LV_PLUGIN_IMG_ID_SF_LIST_SELECTED);
lv_obj_set_pos(image_option1_scr_uiflowplay, 272, 0);
lv_obj_set_hidden(image_option1_scr_uiflowplay, false);
lv_obj_set_state(image_button_option_2_scr_uiflowplay, LV_STATE_DISABLED);
lv_obj_set_state(label_option2_scr_uiflowplay, LV_STATE_DISABLED);
lv_obj_set_hidden(image_option2_scr_uiflowplay, true);
}
} }
@ -279,6 +298,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key)
} }
case LV_USER_KEY_LEFT: case LV_USER_KEY_LEFT:
{ {
/*
if (OPTION_PAGE_SELECT_FUNCTION == gOptionPage) if (OPTION_PAGE_SELECT_FUNCTION == gOptionPage)
{ {
hidde_Selection_page(); hidde_Selection_page();
@ -288,6 +308,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key)
gOptionPage = OPTION_PAGE_SELECT_FUNCTION; gOptionPage = OPTION_PAGE_SELECT_FUNCTION;
show_Selection_page(obj); show_Selection_page(obj);
} }
*/
break; break;
} }
case LV_USER_KEY_RIGHT: case LV_USER_KEY_RIGHT:
@ -307,33 +328,25 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key)
} }
else //GO TO STORAGE OPTIONS else //GO TO STORAGE OPTIONS
{ {
mmc_dev = SF_GetMMCDev();
if (mmc_dev->dev_type == 0)//sd 0, emmc 1
{
ProfileFocused = 1;
}
else
{
ProfileFocused = 0;
}
printf(" ================================== storage option init%d\n", ProfileSelected);
ProfileFocused = ProfileSelected; ProfileFocused = ProfileSelected;
gOptionPage = OPTION_PAGE_FORMAT; gOptionPage = OPTION_PAGE_FORMAT;
show_Selection_page(obj); show_Selection_page(obj);
} }
} }
else { else {
if (1 == ProfileFocused) if (1 == ProfileFocused && ProfileSelected == 0)
{ {
printf(" ================================== switch sd card.\n"); printf(" ================================== switch sd card.\n");
ProfileSelected = 1; ProfileSelected = 1;
FileDB_Refresh(0); Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK);
} }
else else if (0 == ProfileFocused && ProfileSelected == 1)
{ {
printf(" ================================== switch emmc.\n"); printf(" ================================== switch emmc.\n");
ProfileSelected = 0; ProfileSelected = 0;
FileDB_Refresh(1); Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK);
} }
ProfileFocused = 0; ProfileFocused = 0;
hidde_Selection_page(); hidde_Selection_page();
@ -1271,8 +1284,19 @@ static void set_indev_keypad_group(lv_obj_t* obj)
static void UIFlowPlay_ScrOpen(lv_obj_t* obj) static void UIFlowPlay_ScrOpen(lv_obj_t* obj)
{ {
DBG_IND("UIFlowPlay_ScrOpen\r\n"); DBG_IND("UIFlowPlay_ScrOpen\r\n");
int SelectedHandle = System_Get_DCF_Handle();
printf("[UIFlowPlay_ScrOpen][*x] select handle: %d.\n", SelectedHandle);
if (SelectedHandle == HANDLE_SD)
{
ProfileSelected = 1;
}
else if (SelectedHandle == HANDLE_EMMC)
{
ProfileSelected = 0;
}
set_indev_keypad_group(obj); set_indev_keypad_group(obj);
if (UIStorageCheck(STORAGE_CHECK_ERROR, NULL) == TRUE) { if (UIStorageCheck(STORAGE_CHECK_ERROR, NULL) == TRUE) {

View File

@ -45,7 +45,7 @@ static void task_msgbox_timer_cb(lv_task_t* task)
if (0 == autoClose || autoOffTime <= 10) if (0 == autoClose || autoOffTime <= 10)
{ {
printf("[task_msgbox_timer_cb][*x]auto close\n");
lv_task_del(msgbox_timer); lv_task_del(msgbox_timer);
msgbox_timer = NULL; msgbox_timer = NULL;
@ -56,6 +56,7 @@ static void task_msgbox_timer_cb(lv_task_t* task)
} }
if (0 == autoClose) if (0 == autoClose)
{ {
printf("[task_msgbox_timer_cb][*x]set statu flag\n");
sf_set_pir_statu_flag(1); sf_set_pir_statu_flag(1);
// OpenClosingScreen(DISPLAY_FINAL_DO_NOT_SHOW_POWER_OFF); // OpenClosingScreen(DISPLAY_FINAL_DO_NOT_SHOW_POWER_OFF);
//#define DO_NOT_SHOW_POWER_OFF 0 //#define DO_NOT_SHOW_POWER_OFF 0

View File

@ -2354,6 +2354,7 @@ void sf_power_on_para_check_init(void)
puiPara->FristSendDailyAndGps = 1; puiPara->FristSendDailyAndGps = 1;
puiPara->GpsSendFlag = 0; puiPara->GpsSendFlag = 0;
memset(puiPara->SimIccid,'\0',sizeof(puiPara->SimIccid)); memset(puiPara->SimIccid,'\0',sizeof(puiPara->SimIccid));
memset(puiPara->ServiceProvider,'\0',sizeof(puiPara->ServiceProvider));
} }
else if(PowerOnMode == PWR_ON_TIME_SYNC) else if(PowerOnMode == PWR_ON_TIME_SYNC)
{ {

View File

@ -418,7 +418,11 @@ UINT32 sf_battery_adc_value_get_once(void)
} }
else else
{ first_init--; { first_init--;
puiPara->BatteryType = SF_BATT_ALKALINE; if (puiPara->BatteryType == SF_BATT_LI_PACK)
{
puiPara->BatteryType = SF_BATT_ALKALINE;
}
} }
} }
@ -969,7 +973,11 @@ void sf_battery_level_polling(void)
} }
} }
else{ else{
puiPara->BatteryType = SF_BATT_ALKALINE; if(puiPara->BatteryType == SF_BATT_LI_PACK)
{
puiPara->BatteryType = SF_BATT_ALKALINE;
}
} }
//ret = sf_check_low_battery(); //ret = sf_check_low_battery();

View File

@ -964,17 +964,7 @@ unsigned char sf_commu_parse_mcu_data(unsigned char * src, unsigned int len)
{ {
sf_set_pir_statu_flag(0); sf_set_pir_statu_flag(0);
sf_set_module_sleep_flag(0); sf_set_module_sleep_flag(0);
if((PWR_ON_SETUP != sf_poweron_type_get()) && (PWR_ON_USB!= sf_poweron_type_get())) sf_com_message_send_to_cardv(&stMessageBuf);
{
printf("[power off] %s(%d)\n", __FUNCTION__, __LINE__);
sf_set_power_off_flag(1);
//sf_app_battery_stop();
system("watchdog -T 1 -t 5 /dev/watchdog");
}
else
{
sf_com_message_send_to_cardv(&stMessageBuf);
}
} }
else if(0 == stMessageBuf.arg3) //ON->OFF else if(0 == stMessageBuf.arg3) //ON->OFF
{ {

View File

@ -449,7 +449,7 @@ SINT32 sf_hal_ttyusb2_read_buf(SF_TTY_DATA_TYPE_S *recv)
} }
else if (0 == s32ret) { else if (0 == s32ret) {
waitTime--; waitTime--;
MLOGW("FIFO select timeout [%d]\n",waitTime); //MLOGW("FIFO select timeout [%d]\n",waitTime);
continue; continue;
} }
} }

View File

@ -237,7 +237,9 @@ const T_PANEL_CMD t_cmd_mode_rgb320[] = {
const T_LCD_PARAM t_mode[] = { const T_LCD_PARAM t_mode[] = {
/*********** RGB Serial MODE *************/ /*********** RGB Serial MODE *************/
{ {
// T_PANEL_PARAM // T_PANEL_PARAM
#if 0
{ {
/* Old prototype */ /* Old prototype */
PINMUX_LCDMODE_RGB_SERIAL, //!< LCDMode PINMUX_LCDMODE_RGB_SERIAL, //!< LCDMode
@ -277,6 +279,48 @@ const T_LCD_PARAM t_mode[] = {
0x0A, //!< uiHSyncSYNCwidth 0x0A, //!< uiHSyncSYNCwidth
0x04, //!< uiVSyncSYNCwidth 0x04, //!< uiVSyncSYNCwidth
}, },
#else
{
/* Old prototype */
PINMUX_LCDMODE_RGB_THROUGH, //!< LCDMode
// 18000000 / 3 , //24.0f, //!< fDCLK
5000000,
#if 1
1024 / 3,//PANELWIDTH + 69*2, //!< uiHSyncTotalPeriod
720 / 3,//PANELWIDTH, //!< uiHSyncActivePeriod
69 / 3, //!< uiHSyncBackPorch
384,//PANELHEIGHT + 40, //!< uiVSyncTotalPeriod
344, //!< uiVSyncActivePeriod
2, //!< uiVSyncBackPorchOdd
2, //!< uiVSyncBackPorchEven
720 / 3,//320,//PANELWIDTH, //!< uiBufferWidth
320,//720,//PANELHEIGHT, //!< uiBufferHeight
720 / 3,//320,//PANELWIDTH, //!< uiWindowWidth
320,//720,//PANELHEIGHT, //!< uiWindowHeight
#endif
#if 0
PANELWIDTH + 200, //!< uiHSyncTotalPeriod
PANELWIDTH, //!< uiHSyncActivePeriod
10, //!< uiHSyncBackPorch
PANELHEIGHT + 140, //!< uiVSyncTotalPeriod
PANELHEIGHT, //!< uiVSyncActivePeriod
4, //!< uiVSyncBackPorchOdd
4, //!< uiVSyncBackPorchEven
PANELWIDTH, //!< uiBufferWidth
PANELHEIGHT, //!< uiBufferHeight
PANELWIDTH, //!< uiWindowWidth
PANELHEIGHT, //!< uiWindowHeight
#endif
FALSE, //!< bYCbCrFormat
/* New added parameters */
0x0A, //!< uiHSyncSYNCwidth
0x04, //!< uiVSyncSYNCwidth
},
#endif
// tIDE_PARAM // tIDE_PARAM
{ {
@ -286,8 +330,8 @@ const T_LCD_PARAM t_mode[] = {
{FALSE,FALSE}, //!< dithering[2]; {FALSE,FALSE}, //!< dithering[2];
DISPLAY_DEVICE_TOPPOLY, //!< **DONT-CARE** DISPLAY_DEVICE_TOPPOLY, //!< **DONT-CARE**
IDE_PDIR_RBG, //!< pdir; IDE_PDIR_RBG, //!< pdir;
IDE_LCD_G, //!< odd; IDE_LCD_B, //!< odd;
IDE_LCD_G, //!< even; IDE_LCD_B, //!< even;
TRUE, //!< hsinv; TRUE, //!< hsinv;
TRUE, //!< vsinv; TRUE, //!< vsinv;
FALSE, //!< hvldinv; FALSE, //!< hvldinv;

View File

@ -202,4 +202,6 @@ void sf_set_cammode_statu(char is);
BOOL sf_set_backlight_status(unsigned char argc, char **argv); BOOL sf_set_backlight_status(unsigned char argc, char **argv);
UINT8 sf_get_net_generation(void); UINT8 sf_get_net_generation(void);
void sf_set_net_generation(UINT8 value); void sf_set_net_generation(UINT8 value);
UINT32 sf_cardv_load_menu_info_start(void);
BOOL sf_vos_perf_list_dump(unsigned char argc, char **argv);
#endif #endif

View File

@ -134,6 +134,12 @@ static SF_THREAD_S WaiParaTskCfg =
.IsRun = 0, .IsRun = 0,
.TskId = -1, .TskId = -1,
}; };
static SF_THREAD_S LoadParaTskCfg =
{
.IsRun = 0,
.TskId = -1,
};
int sf_pir_statu_read(void) int sf_pir_statu_read(void)
{ {
static UINT8 state = 0; static UINT8 state = 0;
@ -278,6 +284,7 @@ void sf_mode_detect(void)
} }
else if((sf_get_pir_statu_flag()) && (CMD_FORMAT_SD_STA != sf_get_card_statu())) else if((sf_get_pir_statu_flag()) && (CMD_FORMAT_SD_STA != sf_get_card_statu()))
{ {
printf("[sf_mode_detect][*x] empezar going to pir................................\n");
pwroffcnt++; pwroffcnt++;
//printf("[%s:%d]pwroffcnt=%d\n",__FUNCTION__,__LINE__,pwroffcnt); //printf("[%s:%d]pwroffcnt=%d\n",__FUNCTION__,__LINE__,pwroffcnt);
//sf_enter_auto_mode_count_down_show(4 - pwroffcnt); //sf_enter_auto_mode_count_down_show(4 - pwroffcnt);
@ -3453,4 +3460,42 @@ void sf_set_net_generation(UINT8 value)
{ {
printf("[%s:%d]value(%d) invalid,no set.\n", __FUNCTION__, __LINE__, value); printf("[%s:%d]value(%d) invalid,no set.\n", __FUNCTION__, __LINE__, value);
} }
}
void* sf_cardv_load_menu_info_thread(void *arg)
{
vos_perf_list_mark(__func__, __LINE__, 0);
SLOGI("thread run\n");
LoadParaTskCfg.IsRun = 1;
Load_MenuInfo();
SLOGI("thread end\n");
LoadParaTskCfg.IsRun = 0;
vos_perf_list_mark(__func__, __LINE__, 0);
return NULL;
}
UINT32 sf_cardv_load_menu_info_start(void)
{
SINT32 ret = 1;
if(LoadParaTskCfg.IsRun)
{
SLOGE("thread has already run !!!\n");
return 1;
}
ret = pthread_create(&LoadParaTskCfg.TskId, NULL, sf_cardv_load_menu_info_thread, NULL);
if(ret != SF_SUCCESS)
{
MLOGD("thread creat fail!\n");
return ret;
}
return SF_SUCCESS;
}
BOOL sf_vos_perf_list_dump(unsigned char argc, char **argv)
{
vos_perf_list_dump();
sleep(1);
system("dmesg");
return TRUE;
} }

View File

@ -804,14 +804,7 @@ void sf_mcu_dataready_ck(UINT8 startMode)
gModuleSleep = 0; //power off 4G module gModuleSleep = 0; //power off 4G module
sf_set_power_off_flag(1); sf_set_power_off_flag(1);
printf("[power off] %s(%d)\n", __FUNCTION__, __LINE__); printf("[power off] %s(%d)\n", __FUNCTION__, __LINE__);
if((startMode == 1) && (PWR_ON_AUTO == sf_cardv_convert_power_on_mode())) Ux_PostEvent(NVTEVT_SYSTEM_SHUTDOWN, 1, 0); //shutdown start
{
system("watchdog -T 1 -t 5 /dev/watchdog");
}
else
{
Ux_PostEvent(NVTEVT_SYSTEM_SHUTDOWN, 1, 0); //shutdown start
}
} }
} }

View File

@ -17,7 +17,7 @@
pwm2{pinmux = <0x0000000>;}; pwm2{pinmux = <0x0000000>;};
ccnt{pinmux = <0x0>;}; ccnt{pinmux = <0x0>;};
audio{pinmux = <0x0>;}; audio{pinmux = <0x0>;};
lcd{pinmux = <0x10000000>;}; lcd{pinmux = <0x10000006>;};/* rgb through */
tv{pinmux = <0x0>;}; tv{pinmux = <0x0>;};
eth{pinmux = <0x0>;}; eth{pinmux = <0x0>;};
misc{pinmux = <0x0>;}; misc{pinmux = <0x0>;};

View File

@ -405,20 +405,20 @@ static THREAD_RETTYPE thread_videoout(void *ptr)
pxlfmt) != HD_OK){ pxlfmt) != HD_OK){
goto exit; goto exit;
} }
HD_URECT rect = (HD_URECT){0, 0, 720, 320}; // HD_URECT rect = (HD_URECT){0, 0, 720, 320};
//HD_URECT rect = (HD_URECT){0, 0, videoout_syscaps.output_dim.w, videoout_syscaps.output_dim.h}; HD_URECT rect = (HD_URECT){0, 0, videoout_syscaps.output_dim.w, videoout_syscaps.output_dim.h};
if(flow_boot_logo_videoout_set_param_in_win(path_id, rect) != HD_OK){ if(flow_boot_logo_videoout_set_param_in_win(path_id, rect) != HD_OK){
goto exit; goto exit;
} }
hd_videoout_start(path_id); hd_videoout_start(path_id);
exit: exit:
vos_flag_set(task_param->flag, FLAG_VIDEOOUT_TASK_EXIT); vos_flag_set(task_param->flag, FLAG_VIDEOOUT_TASK_EXIT);
LINUX_BOOT_MSG("%s exit\n", __func__); LINUX_BOOT_MSG("%s exit\n", __func__);
THREAD_RETURN(0); THREAD_RETURN(0);
} }
static THREAD_RETTYPE thread_videodec(void *ptr) static THREAD_RETTYPE thread_videodec(void *ptr)

View File

@ -12,7 +12,9 @@
#endif #endif
#include <gsensor.h> #include <gsensor.h>
#include "UIApp/AppDisp_PipView.h" #include "UIApp/AppDisp_PipView.h"
#if HUNTING_CAMERA_MCU == ENABLE
#include "sys_fastboot.h"
#endif
#define THIS_DBGLVL 2 // 0=FATAL, 1=ERR, 2=WRN, 3=UNIT, 4=FUNC, 5=IND, 6=MSG, 7=VALUE, 8=USER #define THIS_DBGLVL 2 // 0=FATAL, 1=ERR, 2=WRN, 3=UNIT, 4=FUNC, 5=IND, 6=MSG, 7=VALUE, 8=USER
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
#define __MODULE__ SysMainCmd #define __MODULE__ SysMainCmd
@ -201,6 +203,15 @@ static BOOL Cmd_PowerOff_Test(unsigned char argc, char **argv)
return TRUE; return TRUE;
} }
#if HUNTING_CAMERA_MCU == ENABLE
static BOOL sf_log_fastboot_msg_en(unsigned char argc, char **argv)
{
fastboot_msg_en(ENABLE);
DBG_DUMP("log ENABLE\r\n");
return TRUE;
}
#endif
SXCMD_BEGIN(sys_cmd_tbl, "system command") SXCMD_BEGIN(sys_cmd_tbl, "system command")
SXCMD_ITEM("mem %", cmd_sys_mem, "system memory layout") SXCMD_ITEM("mem %", cmd_sys_mem, "system memory layout")
SXCMD_ITEM("pip %", Cmd_user_pip, "pip view style") SXCMD_ITEM("pip %", Cmd_user_pip, "pip view style")
@ -214,7 +225,9 @@ SXCMD_ITEM("curl", Cmd_user_CurlTest, "curl command test")
#endif #endif
SXCMD_ITEM("power_off %", Cmd_PowerOff_Test, "flowpreview power off test") SXCMD_ITEM("power_off %", Cmd_PowerOff_Test, "flowpreview power off test")
#if HUNTING_CAMERA_MCU == ENABLE
SXCMD_ITEM("log %", sf_log_fastboot_msg_en, "log on")
#endif
SXCMD_END() SXCMD_END()

View File

@ -237,7 +237,9 @@ const T_PANEL_CMD t_cmd_mode_rgb320[] = {
const T_LCD_PARAM t_mode[] = { const T_LCD_PARAM t_mode[] = {
/*********** RGB Serial MODE *************/ /*********** RGB Serial MODE *************/
{ {
// T_PANEL_PARAM // T_PANEL_PARAM
#if 0
{ {
/* Old prototype */ /* Old prototype */
PINMUX_LCDMODE_RGB_SERIAL, //!< LCDMode PINMUX_LCDMODE_RGB_SERIAL, //!< LCDMode
@ -277,6 +279,48 @@ const T_LCD_PARAM t_mode[] = {
0x0A, //!< uiHSyncSYNCwidth 0x0A, //!< uiHSyncSYNCwidth
0x04, //!< uiVSyncSYNCwidth 0x04, //!< uiVSyncSYNCwidth
}, },
#else
{
/* Old prototype */
PINMUX_LCDMODE_RGB_THROUGH, //!< LCDMode
// 18000000 / 3 , //24.0f, //!< fDCLK
5000000,
#if 1
1024 / 3,//PANELWIDTH + 69*2, //!< uiHSyncTotalPeriod
720 / 3,//PANELWIDTH, //!< uiHSyncActivePeriod
69 / 3, //!< uiHSyncBackPorch
384,//PANELHEIGHT + 40, //!< uiVSyncTotalPeriod
344, //!< uiVSyncActivePeriod
2, //!< uiVSyncBackPorchOdd
2, //!< uiVSyncBackPorchEven
720 / 3,//320,//PANELWIDTH, //!< uiBufferWidth
320,//720,//PANELHEIGHT, //!< uiBufferHeight
720 / 3,//320,//PANELWIDTH, //!< uiWindowWidth
320,//720,//PANELHEIGHT, //!< uiWindowHeight
#endif
#if 0
PANELWIDTH + 200, //!< uiHSyncTotalPeriod
PANELWIDTH, //!< uiHSyncActivePeriod
10, //!< uiHSyncBackPorch
PANELHEIGHT + 140, //!< uiVSyncTotalPeriod
PANELHEIGHT, //!< uiVSyncActivePeriod
4, //!< uiVSyncBackPorchOdd
4, //!< uiVSyncBackPorchEven
PANELWIDTH, //!< uiBufferWidth
PANELHEIGHT, //!< uiBufferHeight
PANELWIDTH, //!< uiWindowWidth
PANELHEIGHT, //!< uiWindowHeight
#endif
FALSE, //!< bYCbCrFormat
/* New added parameters */
0x0A, //!< uiHSyncSYNCwidth
0x04, //!< uiVSyncSYNCwidth
},
#endif
// tIDE_PARAM // tIDE_PARAM
{ {
@ -286,8 +330,8 @@ const T_LCD_PARAM t_mode[] = {
{FALSE,FALSE}, //!< dithering[2]; {FALSE,FALSE}, //!< dithering[2];
DISPLAY_DEVICE_TOPPOLY, //!< **DONT-CARE** DISPLAY_DEVICE_TOPPOLY, //!< **DONT-CARE**
IDE_PDIR_RBG, //!< pdir; IDE_PDIR_RBG, //!< pdir;
IDE_LCD_G, //!< odd; IDE_LCD_B, //!< odd;
IDE_LCD_G, //!< even; IDE_LCD_B, //!< even;
TRUE, //!< hsinv; TRUE, //!< hsinv;
TRUE, //!< vsinv; TRUE, //!< vsinv;
FALSE, //!< hvldinv; FALSE, //!< hvldinv;