From 3e2e82948507013206799bfe083bb037b03801a4 Mon Sep 17 00:00:00 2001 From: payton Date: Tue, 2 Jan 2024 21:50:06 +0800 Subject: [PATCH 01/16] =?UTF-8?q?1.=E5=8F=82=E6=95=B0=E5=8A=A0=E8=BD=BD?= =?UTF-8?q?=E6=8F=90=E5=89=8D=E5=88=B0ui=E6=98=BE=E7=A4=BA=E5=89=8D?= =?UTF-8?q?=EF=BC=9B2.=E5=A2=9E=E5=8A=A0dump=E6=89=93=E5=8D=B0=E6=97=B6?= =?UTF-8?q?=E5=BA=8Flog=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../source/cardv/SrcCode/System/SysMain_Exe.c | 18 ++++---- .../source/cardv/SrcCode/System/SysMain_cmd.c | 1 + .../source/cardv/SrcCode/System/main.c | 1 + .../lib/source/sifar/code/include/sf_common.h | 2 + .../sifar/code/source/common/sf_common.c | 44 +++++++++++++++++++ 5 files changed, 57 insertions(+), 9 deletions(-) diff --git a/code/application/source/cardv/SrcCode/System/SysMain_Exe.c b/code/application/source/cardv/SrcCode/System/SysMain_Exe.c index 0ec1eeb50..604baf7fa 100755 --- a/code/application/source/cardv/SrcCode/System/SysMain_Exe.c +++ b/code/application/source/cardv/SrcCode/System/SysMain_Exe.c @@ -227,15 +227,15 @@ INT32 System_OnBoot(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray) Load_MenuInfo(); #endif #else -#if (BOOT_RESET_MENU_INFO == ENABLE) - //EMMC_AS_PSTORE - #if (defined(_CPU2_LINUX_) && defined(_EMBMEM_EMMC_)) - System_OnStrgInit_PS(); //because ps uses filesys in this case, so ps init was moved here. - Load_MenuInfo(); - #else - Load_MenuInfo(); //reset value cause the FL_FSStatus as '0', we do so before NVTEVT_STRG_ATTACH finish - #endif -#endif +// #if (BOOT_RESET_MENU_INFO == ENABLE) +// //EMMC_AS_PSTORE +// #if (defined(_CPU2_LINUX_) && defined(_EMBMEM_EMMC_)) +// System_OnStrgInit_PS(); //because ps uses filesys in this case, so ps init was moved here. +// Load_MenuInfo(); +// #else +// Load_MenuInfo(); //reset value cause the FL_FSStatus as '0', we do so before NVTEVT_STRG_ATTACH finish +// #endif +// #endif #endif //#NT#2016/12/14#Niven Cho -end #if (BOOT_RESET_MENU_INFO == ENABLE) diff --git a/code/application/source/cardv/SrcCode/System/SysMain_cmd.c b/code/application/source/cardv/SrcCode/System/SysMain_cmd.c index 814ef68dd..868b25067 100755 --- a/code/application/source/cardv/SrcCode/System/SysMain_cmd.c +++ b/code/application/source/cardv/SrcCode/System/SysMain_cmd.c @@ -281,6 +281,7 @@ SXCMD_ITEM("uiprint %", sf_cmd_para_printf, "uiprint") SXCMD_ITEM("blusw %", cmd_blu_switch, "blusw 0/1") SXCMD_ITEM("wifisw %", cmd_wifi_switch, "wifisw 0/1") SXCMD_ITEM("lcdbk %", sf_set_backlight_status, "lcdbk 0/1") +SXCMD_ITEM("sfdump %", sf_vos_perf_list_dump, "sfdump") #endif #if FS_MULTI_STRG_FUNC /* test cmd */ diff --git a/code/application/source/cardv/SrcCode/System/main.c b/code/application/source/cardv/SrcCode/System/main.c index 38f2c5cc8..8d94cf74d 100755 --- a/code/application/source/cardv/SrcCode/System/main.c +++ b/code/application/source/cardv/SrcCode/System/main.c @@ -388,6 +388,7 @@ int NvtMain(void) { #if HUNTING_CAMERA_MCU == ENABLE sf_cardv_check_power_on_mode(); + sf_cardv_load_menu_info_start(); #endif System_InstallID(); #if (USB_MODE==ENABLE) diff --git a/code/lib/source/sifar/code/include/sf_common.h b/code/lib/source/sifar/code/include/sf_common.h index 4694c25be..45c796223 100755 --- a/code/lib/source/sifar/code/include/sf_common.h +++ b/code/lib/source/sifar/code/include/sf_common.h @@ -202,4 +202,6 @@ void sf_set_cammode_statu(char is); BOOL sf_set_backlight_status(unsigned char argc, char **argv); UINT8 sf_get_net_generation(void); 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 diff --git a/code/lib/source/sifar/code/source/common/sf_common.c b/code/lib/source/sifar/code/source/common/sf_common.c index 668eb0c87..d235ece84 100755 --- a/code/lib/source/sifar/code/source/common/sf_common.c +++ b/code/lib/source/sifar/code/source/common/sf_common.c @@ -134,6 +134,12 @@ static SF_THREAD_S WaiParaTskCfg = .IsRun = 0, .TskId = -1, }; + +static SF_THREAD_S LoadParaTskCfg = +{ + .IsRun = 0, + .TskId = -1, +}; int sf_pir_statu_read(void) { static UINT8 state = 0; @@ -3453,4 +3459,42 @@ void sf_set_net_generation(UINT8 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; } \ No newline at end of file From 02af726fb72ced0744726857da18959e2361f2f1 Mon Sep 17 00:00:00 2001 From: xiehongyan Date: Wed, 3 Jan 2024 10:43:18 +0800 Subject: [PATCH 02/16] =?UTF-8?q?9842,10801=20=E4=BA=8C=E7=BB=B4=E7=A0=81?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=80=BB=E8=BE=91=E9=97=AE=E9=A2=98,=20?= =?UTF-8?q?=E5=9B=9E=E6=94=BE=E7=95=8C=E9=9D=A2=E8=AE=BE=E7=BD=AE=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E6=9C=AA=E6=8F=92=E5=8D=A1=E5=8F=98=E7=81=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c | 8 +-- .../UIFlowPhoto/UIFlowPhotoEventCallback.c | 2 +- .../UIFlowPlay/UIFlowPlayEventCallback.c | 51 +++++++++++++------ 3 files changed, 40 insertions(+), 21 deletions(-) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c index 871e907e3..d095bcf26 100644 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c @@ -694,7 +694,7 @@ static void qr_page_task_cb(lv_task_t* task){ { UIMenuStoreInfo *puiPara = sf_ui_para_get(); 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"); return; @@ -705,16 +705,16 @@ static void qr_page_task_cb(lv_task_t* task){ { UIMenuStoreInfo *puiPara = sf_ui_para_get(); 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; } snprintf(qr_date, QR_DATA_LENGTH, qr_code_str, puiPara->ModuleImei, puiPara->SimIccidV, puiPara->SimIccidA, "false"); } 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..."); } diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c index 7909f6344..926504ab6 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c @@ -697,7 +697,7 @@ static void update_storage_sd_card(void) { static int cnt = 0; if(cnt++<1){ - lv_label_set_text(label_6_scr_uiflowphoto, "Loarding..."); + lv_label_set_text(label_6_scr_uiflowphoto, ""); }else{ g_SysStrg_Chg = false; cnt = 0; diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c index 3a5e2587a..d72764187 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c @@ -27,7 +27,7 @@ //#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_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; enum SELECTION_SHOW { @@ -60,6 +60,9 @@ extern void PBView_DrawNoFile(void); static void stop_play(void); //#NT#2023/11/14#Eric - end +#define HANDLE_SD 1 +#define HANDLE_EMMC 0 + static BOOL g_PlayBgInitFileSys = FALSE; #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_option2_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); + } } @@ -307,33 +326,23 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key) } 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; gOptionPage = OPTION_PAGE_FORMAT; show_Selection_page(obj); } } else { - if (1 == ProfileFocused) + if (1 == ProfileFocused && ProfileSelected == 0) { printf(" ================================== switch sd card.\n"); 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"); ProfileSelected = 0; - FileDB_Refresh(1); + Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); } ProfileFocused = 0; hidde_Selection_page(); @@ -1272,7 +1281,17 @@ static void set_indev_keypad_group(lv_obj_t* obj) static void UIFlowPlay_ScrOpen(lv_obj_t* obj) { DBG_IND("UIFlowPlay_ScrOpen\r\n"); - + int SelectedHandle = System_Get_DCF_Handle(); + printf("[UIFlowPlay_ScrOpen][*x] select handle: %d.", SelectedHandle); + if (SelectedHandle == HANDLE_SD) + { + ProfileSelected = 1; + } + else if (SelectedHandle == HANDLE_EMMC) + { + ProfileSelected = 0; + } + set_indev_keypad_group(obj); if (UIStorageCheck(STORAGE_CHECK_ERROR, NULL) == TRUE) { From f3606cd1908ba85635c0d1f9438f17aa5a98eb14 Mon Sep 17 00:00:00 2001 From: xiehongyan Date: Wed, 3 Jan 2024 11:56:53 +0800 Subject: [PATCH 03/16] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E5=9B=9E=E6=94=BE?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E5=B7=A6=E9=94=AE=E5=9B=9E=E9=80=80=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c | 8 +++++++- .../UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c | 3 ++- code/lib/source/sifar/code/source/common/sf_common.c | 1 + 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c index 0f48c6eee..cf47ed9c1 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c @@ -298,6 +298,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key) } case LV_USER_KEY_LEFT: { + /* if (OPTION_PAGE_SELECT_FUNCTION == gOptionPage) { hidde_Selection_page(); @@ -307,6 +308,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key) gOptionPage = OPTION_PAGE_SELECT_FUNCTION; show_Selection_page(obj); } + */ break; } case LV_USER_KEY_RIGHT: @@ -337,12 +339,16 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key) printf(" ================================== switch sd card.\n"); ProfileSelected = 1; Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); + int SelectedHandle = System_Get_DCF_Handle(); + printf("[Option_play_Selection_Key][*x] select handle: %d.\n", SelectedHandle); } else if (0 == ProfileFocused && ProfileSelected == 1) { printf(" ================================== switch emmc.\n"); ProfileSelected = 0; Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); + int SelectedHandle = System_Get_DCF_Handle(); + printf("[Option_play_Selection_Key][*x] select handle: %d.\n", SelectedHandle); } ProfileFocused = 0; hidde_Selection_page(); @@ -1282,7 +1288,7 @@ static void UIFlowPlay_ScrOpen(lv_obj_t* obj) { DBG_IND("UIFlowPlay_ScrOpen\r\n"); int SelectedHandle = System_Get_DCF_Handle(); - printf("[UIFlowPlay_ScrOpen][*x] select handle: %d.", SelectedHandle); + printf("[UIFlowPlay_ScrOpen][*x] select handle: %d.\n", SelectedHandle); if (SelectedHandle == HANDLE_SD) { ProfileSelected = 1; diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c index 09c1522d5..40d64b6b4 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c @@ -45,7 +45,7 @@ static void task_msgbox_timer_cb(lv_task_t* task) if (0 == autoClose || autoOffTime <= 10) { - + printf("[task_msgbox_timer_cb][*x]auto close\n"); lv_task_del(msgbox_timer); msgbox_timer = NULL; @@ -56,6 +56,7 @@ static void task_msgbox_timer_cb(lv_task_t* task) } if (0 == autoClose) { + printf("[task_msgbox_timer_cb][*x]set statu flag\n"); sf_set_pir_statu_flag(1); // OpenClosingScreen(DISPLAY_FINAL_DO_NOT_SHOW_POWER_OFF); //#define DO_NOT_SHOW_POWER_OFF 0 diff --git a/code/lib/source/sifar/code/source/common/sf_common.c b/code/lib/source/sifar/code/source/common/sf_common.c index 668eb0c87..84de572a5 100755 --- a/code/lib/source/sifar/code/source/common/sf_common.c +++ b/code/lib/source/sifar/code/source/common/sf_common.c @@ -278,6 +278,7 @@ void sf_mode_detect(void) } 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++; //printf("[%s:%d]pwroffcnt=%d\n",__FUNCTION__,__LINE__,pwroffcnt); //sf_enter_auto_mode_count_down_show(4 - pwroffcnt); From 94b1d4b7e600ad523a52264829d1ee0820c53f2c Mon Sep 17 00:00:00 2001 From: xiaojiazhu Date: Wed, 3 Jan 2024 13:33:17 +0800 Subject: [PATCH 04/16] Fixed:Key event of comfirm screen do not send to current screen. --- .../source/cardv/SrcCode/System/SysMain.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/application/source/cardv/SrcCode/System/SysMain.c b/code/application/source/cardv/SrcCode/System/SysMain.c index 505827410..7441a328a 100644 --- a/code/application/source/cardv/SrcCode/System/SysMain.c +++ b/code/application/source/cardv/SrcCode/System/SysMain.c @@ -696,12 +696,6 @@ void UserMainProc(void) g_keyboard_pressed = false; leftKeyPressingTime_ms = 0; } - //call input task immediately for read key state - if(indev_keypad){ - _lv_user_task_handler_lock(); - indev_keypad->driver.read_task->task_cb(indev_keypad->driver.read_task); - _lv_user_task_handler_unlock(); - } /* workaround to extend key release event for lvgl */ if((paramArray[0] > NVTEVT_KEY_RELEASE_START) && (paramArray[0] < NVTEVT_KEY_RELEASE_END)){ @@ -723,6 +717,12 @@ void UserMainProc(void) DBG_WRN("evt = %lx\r\n", evt); } } + //call input task immediately for read key state + if(indev_keypad){ + _lv_user_task_handler_lock(); + indev_keypad->driver.read_task->task_cb(indev_keypad->driver.read_task); + _lv_user_task_handler_unlock(); + } if(paramArray[0] == NVTEVT_KEY_CONTINUE){ uint32_t nvt_user_key = lv_user_keymap_find(evt); #define MENU_UNLUCK 0 From ffb0d6be0d0e1c78b4296ae4b1072d90e643778e Mon Sep 17 00:00:00 2001 From: xiehongyan Date: Wed, 3 Jan 2024 13:39:14 +0800 Subject: [PATCH 05/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=9B=9E=E6=94=BE?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E2=88=9A=E7=9A=84=E4=BD=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c index cf47ed9c1..6c9eefcca 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c @@ -233,7 +233,7 @@ static void update_play_Selection_msg(lv_obj_t* obj) 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_option2_scr_uiflowplay, 272, 0); + 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); From f8ef234da98272b7abf4522178ce21c3555eec73 Mon Sep 17 00:00:00 2001 From: payton Date: Wed, 3 Jan 2024 14:37:48 +0800 Subject: [PATCH 06/16] =?UTF-8?q?1.=E4=BF=AE=E5=A4=8D=E5=9B=9E=E6=94=BE?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E6=9C=89=E7=BA=A2=E6=9D=A1=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nvt-na51089/ide/ide_platform.c | 28 ++++++++--- .../disp_if8b_lcd1_psd200_st7789v/panel.c | 48 ++++++++++++++++++- .../disp_if8b_lcd1_psd200_st7789v/panel.c | 48 ++++++++++++++++++- .../nvt-top.dtsi | 2 +- .../cardv/SrcCode/FastFlow/flow_boot_logo.c | 18 +++---- .../disp_if8b_lcd1_psd200_st7789v/panel.c | 48 ++++++++++++++++++- 6 files changed, 169 insertions(+), 23 deletions(-) diff --git a/BSP/u-boot/drivers/video/novatek/drv_videoout/nvt-na51089/ide/ide_platform.c b/BSP/u-boot/drivers/video/novatek/drv_videoout/nvt-na51089/ide/ide_platform.c index c2992ed82..e57df4ca1 100755 --- a/BSP/u-boot/drivers/video/novatek/drv_videoout/nvt-na51089/ide/ide_platform.c +++ b/BSP/u-boot/drivers/video/novatek/drv_videoout/nvt-na51089/ide/ide_platform.c @@ -259,16 +259,30 @@ UINT32 pll_get_pll_freq(PLL_ID id) */ UINT32 pll_get_clock_rate(PLL_CLKSEL clk_sel) { - UINT32 ui_mask, ui_reg_offset; - REGVALUE reg_data; + UINT32 ui_mask, ui_reg_offset; + REGVALUE reg_data; - ui_reg_offset = 0x20; - ui_mask = (0x7<;}; ccnt{pinmux = <0x0>;}; audio{pinmux = <0x0>;}; - lcd{pinmux = <0x10000000>;}; + lcd{pinmux = <0x10000006>;};/* rgb through */ tv{pinmux = <0x0>;}; eth{pinmux = <0x0>;}; misc{pinmux = <0x0>;}; diff --git a/rtos/code/application/source/cardv/SrcCode/FastFlow/flow_boot_logo.c b/rtos/code/application/source/cardv/SrcCode/FastFlow/flow_boot_logo.c index b3d9d564f..18da2147c 100755 --- a/rtos/code/application/source/cardv/SrcCode/FastFlow/flow_boot_logo.c +++ b/rtos/code/application/source/cardv/SrcCode/FastFlow/flow_boot_logo.c @@ -405,20 +405,20 @@ static THREAD_RETTYPE thread_videoout(void *ptr) pxlfmt) != HD_OK){ 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}; - if(flow_boot_logo_videoout_set_param_in_win(path_id, rect) != HD_OK){ - goto exit; - } + 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){ + goto exit; + } - hd_videoout_start(path_id); + hd_videoout_start(path_id); 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__); - THREAD_RETURN(0); + LINUX_BOOT_MSG("%s exit\n", __func__); + THREAD_RETURN(0); } static THREAD_RETTYPE thread_videodec(void *ptr) diff --git a/rtos/code/hdal/ext_devices/panel/display_panel/disp_if8b_lcd1_psd200_st7789v/panel.c b/rtos/code/hdal/ext_devices/panel/display_panel/disp_if8b_lcd1_psd200_st7789v/panel.c index 0bcdee274..194738662 100755 --- a/rtos/code/hdal/ext_devices/panel/display_panel/disp_if8b_lcd1_psd200_st7789v/panel.c +++ b/rtos/code/hdal/ext_devices/panel/display_panel/disp_if8b_lcd1_psd200_st7789v/panel.c @@ -237,7 +237,9 @@ const T_PANEL_CMD t_cmd_mode_rgb320[] = { const T_LCD_PARAM t_mode[] = { /*********** RGB Serial MODE *************/ { + // T_PANEL_PARAM +#if 0 { /* Old prototype */ PINMUX_LCDMODE_RGB_SERIAL, //!< LCDMode @@ -277,6 +279,48 @@ const T_LCD_PARAM t_mode[] = { 0x0A, //!< uiHSyncSYNCwidth 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 { @@ -286,8 +330,8 @@ const T_LCD_PARAM t_mode[] = { {FALSE,FALSE}, //!< dithering[2]; DISPLAY_DEVICE_TOPPOLY, //!< **DONT-CARE** IDE_PDIR_RBG, //!< pdir; - IDE_LCD_G, //!< odd; - IDE_LCD_G, //!< even; + IDE_LCD_B, //!< odd; + IDE_LCD_B, //!< even; TRUE, //!< hsinv; TRUE, //!< vsinv; FALSE, //!< hvldinv; From 70dbaaad798bdd3f6241cfa230192d89049a5622 Mon Sep 17 00:00:00 2001 From: payton Date: Wed, 3 Jan 2024 14:38:10 +0800 Subject: [PATCH 07/16] =?UTF-8?q?1.rtos=E5=A2=9E=E5=8A=A0log=20cmd?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../source/cardv/SrcCode/System/SysMain_cmd.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/rtos/code/application/source/cardv/SrcCode/System/SysMain_cmd.c b/rtos/code/application/source/cardv/SrcCode/System/SysMain_cmd.c index 67c32b4fc..b28800439 100644 --- a/rtos/code/application/source/cardv/SrcCode/System/SysMain_cmd.c +++ b/rtos/code/application/source/cardv/SrcCode/System/SysMain_cmd.c @@ -12,7 +12,9 @@ #endif #include #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 __MODULE__ SysMainCmd @@ -201,6 +203,15 @@ static BOOL Cmd_PowerOff_Test(unsigned char argc, char **argv) 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_ITEM("mem %", cmd_sys_mem, "system memory layout") SXCMD_ITEM("pip %", Cmd_user_pip, "pip view style") @@ -214,7 +225,9 @@ SXCMD_ITEM("curl", Cmd_user_CurlTest, "curl command test") #endif 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() From c23b991eccb6c1f2e2a624830e29ab94ceb5917f Mon Sep 17 00:00:00 2001 From: xiehongyan Date: Wed, 3 Jan 2024 15:34:31 +0800 Subject: [PATCH 08/16] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=94=B5=E6=B1=A0?= =?UTF-8?q?=E5=88=87=E6=8D=A2=E5=90=8E=E4=B8=8D=E4=BF=9D=E5=AD=98=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c | 7 +++---- .../source/sf_app/code/source/battery/sf_battery.c | 12 ++++++++++-- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c index 6c9eefcca..f00674c89 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c @@ -339,16 +339,14 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key) printf(" ================================== switch sd card.\n"); ProfileSelected = 1; Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); - int SelectedHandle = System_Get_DCF_Handle(); - printf("[Option_play_Selection_Key][*x] select handle: %d.\n", SelectedHandle); + } else if (0 == ProfileFocused && ProfileSelected == 1) { printf(" ================================== switch emmc.\n"); ProfileSelected = 0; Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); - int SelectedHandle = System_Get_DCF_Handle(); - printf("[Option_play_Selection_Key][*x] select handle: %d.\n", SelectedHandle); + } ProfileFocused = 0; hidde_Selection_page(); @@ -1286,6 +1284,7 @@ static void set_indev_keypad_group(lv_obj_t* obj) static void UIFlowPlay_ScrOpen(lv_obj_t* obj) { + DBG_IND("UIFlowPlay_ScrOpen\r\n"); int SelectedHandle = System_Get_DCF_Handle(); printf("[UIFlowPlay_ScrOpen][*x] select handle: %d.\n", SelectedHandle); diff --git a/code/application/source/sf_app/code/source/battery/sf_battery.c b/code/application/source/sf_app/code/source/battery/sf_battery.c index 648f16b7b..d22a8d23c 100755 --- a/code/application/source/sf_app/code/source/battery/sf_battery.c +++ b/code/application/source/sf_app/code/source/battery/sf_battery.c @@ -418,7 +418,11 @@ UINT32 sf_battery_adc_value_get_once(void) } else { 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{ - puiPara->BatteryType = SF_BATT_ALKALINE; + if(puiPara->BatteryType == SF_BATT_LI_PACK) + { + puiPara->BatteryType = SF_BATT_ALKALINE; + } + } //ret = sf_check_low_battery(); From 637119f1ac3f0b2b9ca29e44fe600424d5e9d529 Mon Sep 17 00:00:00 2001 From: payton Date: Wed, 3 Jan 2024 16:42:11 +0800 Subject: [PATCH 09/16] =?UTF-8?q?1.=E6=8B=8D=E6=91=84=E5=90=8E=E8=BF=9B?= =?UTF-8?q?=E8=A1=8C=E5=86=85=E5=AD=98=E9=87=8A=E6=94=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../source/cardv/SrcCode/Mode/UIModePhoto.c | 8 +++++++- .../source/cardv/SrcCode/System/SysMain_Exe.c | 5 +---- .../UIFlowMenuCommonItemEventCallback.c | 7 +------ .../UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c | 1 + code/lib/source/sifar/code/include/sf_common.h | 1 + code/lib/source/sifar/code/source/common/sf_common.c | 10 +++++++++- 6 files changed, 20 insertions(+), 12 deletions(-) diff --git a/code/application/source/cardv/SrcCode/Mode/UIModePhoto.c b/code/application/source/cardv/SrcCode/Mode/UIModePhoto.c index 33fad98f9..a1809ba38 100755 --- a/code/application/source/cardv/SrcCode/Mode/UIModePhoto.c +++ b/code/application/source/cardv/SrcCode/Mode/UIModePhoto.c @@ -2,7 +2,9 @@ #include "PrjInc.h" #include "Mode/UIModePhoto.h" - +#if HUNTING_CAMERA_MCU == ENABLE +#include "sf_common.h" +#endif #if(WIFI_FUNC==ENABLE) #include "UIModeWifi.h" #endif @@ -58,6 +60,10 @@ void ModePhoto_Open(void) } } #endif + + #if HUNTING_CAMERA_MCU == ENABLE + sf_mem_free(); + #endif #endif } void ModePhoto_Close(void) diff --git a/code/application/source/cardv/SrcCode/System/SysMain_Exe.c b/code/application/source/cardv/SrcCode/System/SysMain_Exe.c index 604baf7fa..15cdfc886 100755 --- a/code/application/source/cardv/SrcCode/System/SysMain_Exe.c +++ b/code/application/source/cardv/SrcCode/System/SysMain_Exe.c @@ -409,10 +409,7 @@ INT32 System_OnBoot(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray) } #endif #if HUNTING_CAMERA_MCU == ENABLE - printf("[%s]:%d sf s\n", __FUNCTION__, __LINE__); - system("sync"); - system("echo 3 >/proc/sys/vm/drop_caches"); - printf("[%s]:%d sf e\n", __FUNCTION__, __LINE__); + sf_mem_free(); #endif return NVTEVT_CONSUME; } diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/UIFlowMenuCommonItemEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/UIFlowMenuCommonItemEventCallback.c index a0aef5332..5bc06161c 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/UIFlowMenuCommonItemEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/UIFlowMenuCommonItemEventCallback.c @@ -949,12 +949,7 @@ static void UIFlowMenuCommonItem_ScrOpen(lv_obj_t* obj) gMenuLuck = MENU_UNLUCK; #if HUNTING_CAMERA_MCU == ENABLE sf_set_menu_open(TRUE); - - printf("[%s]:%d sf s\n", __FUNCTION__, __LINE__); - system("sync"); - system("echo 3 >/proc/sys/vm/drop_caches"); - printf("[%s]:%d sf e\n", __FUNCTION__, __LINE__); - + sf_mem_free(); #endif } diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c index b56488920..199e95c93 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c @@ -1797,6 +1797,7 @@ void UIFlowPhoto_UpdateInfo(lv_obj_t* obj, const LV_USER_EVENT_NVTMSG_DATA* msg) { sf_wifi_server_stop_shoot_respond(0); } + sf_mem_free(); } #if HUNTING_CAMERA_MCU == ENABLE sf_set_cap_statu(FALSE); diff --git a/code/lib/source/sifar/code/include/sf_common.h b/code/lib/source/sifar/code/include/sf_common.h index 45c796223..9a89bcc59 100755 --- a/code/lib/source/sifar/code/include/sf_common.h +++ b/code/lib/source/sifar/code/include/sf_common.h @@ -204,4 +204,5 @@ UINT8 sf_get_net_generation(void); 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); +void sf_mem_free(void); #endif diff --git a/code/lib/source/sifar/code/source/common/sf_common.c b/code/lib/source/sifar/code/source/common/sf_common.c index 9933b4dce..c5c78bdd1 100755 --- a/code/lib/source/sifar/code/source/common/sf_common.c +++ b/code/lib/source/sifar/code/source/common/sf_common.c @@ -3498,4 +3498,12 @@ BOOL sf_vos_perf_list_dump(unsigned char argc, char **argv) sleep(1); system("dmesg"); return TRUE; -} \ No newline at end of file +} + +void sf_mem_free(void) +{ + printf("[%s]:%d sf s\n", __FUNCTION__, __LINE__); + system("sync"); + system("echo 3 >/proc/sys/vm/drop_caches"); + printf("[%s]:%d sf e\n", __FUNCTION__, __LINE__); +} From 5b0ad73b4090eec5824dc840bbf205f712da67cb Mon Sep 17 00:00:00 2001 From: xiaojiazhu Date: Wed, 3 Jan 2024 16:48:01 +0800 Subject: [PATCH 10/16] Fixed:Message screen key event can not send to father screen. --- .../source/cardv/SrcCode/NVTUserCommand.h | 1 + .../UIFlowPhoto/UIFlowPhotoEventCallback.c | 1 + .../UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c | 13 ++++++++++++- .../UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c | 6 +++++- 4 files changed, 19 insertions(+), 2 deletions(-) diff --git a/code/application/source/cardv/SrcCode/NVTUserCommand.h b/code/application/source/cardv/SrcCode/NVTUserCommand.h index 0dc590cf6..71201744a 100755 --- a/code/application/source/cardv/SrcCode/NVTUserCommand.h +++ b/code/application/source/cardv/SrcCode/NVTUserCommand.h @@ -103,6 +103,7 @@ typedef enum { #if defined(_UI_STYLE_LVGL_) NVTEVT_UPDATE_LVGL = 0x80000001, ///< Update lvgl task handel #endif + NVTEVT_MSG_SCREEN_KEY = 0x80000002, /* INSERT NEW EVENT HRER */ diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c index b56488920..75c298193 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c @@ -73,6 +73,7 @@ static BOOL g_PhotoBgInitFileSys = FALSE; static BOOL g_SysStrg_Chg = FALSE; //#NT#2023/11/21#Eric - end +static void UIFlowPhoto_Key(lv_obj_t* obj, uint32_t key); static void sf_show_send_text(lv_obj_t* obj, const unsigned short status); static lv_obj_t *g_preview_info_msgbox = NULL; static lv_obj_t *g_preview_info_label = NULL; diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c index 9ba5948f5..33df57bce 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c @@ -2409,7 +2409,6 @@ static void UIFlowPlay_Key(lv_obj_t* obj, uint32_t key) static void UIFlowPlay_NVTMSG(lv_obj_t* obj, const LV_USER_EVENT_NVTMSG_DATA* msg) { - switch(msg->event) { case NVTEVT_CB_MOVIE_FINISH: @@ -2481,6 +2480,18 @@ static void UIFlowPlay_NVTMSG(lv_obj_t* obj, const LV_USER_EVENT_NVTMSG_DATA* ms break; } + case NVTEVT_MSG_SCREEN_KEY: + if (1 == msg->paramNum) + { + uint32_t key = msg->paramArray[0]; + if (SELECTION_SHOW_TURE == gSeletionShow) { + Option_play_Selection_Key(obj, key); + } else { + /* handle key event */ + UIFlowPlay_Key(obj, key); + } + } + break; default: break; diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c index 09c1522d5..3a10a4884 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgEventCallback.c @@ -325,7 +325,11 @@ void message_box_wrnmsg_OnKey(lv_obj_t* msgbox, uint32_t key) { // static uint32_t key22 = LV_KEY_END; // key22 = key; - // lv_event_send(lv_obj_get_parent(UIFlowWrnMsg), LV_USER_EVENT_KEY_RELEASE, &key22); + if(lv_plugin_scr_count() >= 2){ + lv_event_send(lv_plugin_scr_by_index(lv_plugin_scr_count() - 2), LV_USER_EVENT_NVTMSG, gen_nvtmsg_data(NVTEVT_MSG_SCREEN_KEY, 1, key)); + }else{ + lv_event_send(lv_plugin_scr_act(), LV_USER_EVENT_NVTMSG, gen_nvtmsg_data(NVTEVT_MSG_SCREEN_KEY, 1, key)); + } return; switch(key) { From ac7c19a327e22e50a2ae67a1ef93c623d807beae Mon Sep 17 00:00:00 2001 From: payton Date: Wed, 3 Jan 2024 16:51:47 +0800 Subject: [PATCH 11/16] =?UTF-8?q?1.Linux=E5=90=AF=E5=8A=A8=E6=97=B6?= =?UTF-8?q?=E8=8E=B7=E5=8F=96rtos=E4=B8=8B=E7=9A=84=E7=94=B5=E6=B1=A0?= =?UTF-8?q?=E6=A0=BC=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- code/application/source/cardv/SrcCode/System/main.c | 10 +++++++++- code/lib/source/sifar/code/include/sf_common.h | 1 + .../lib/source/sifar/code/source/common/sf_common.c | 13 ++++++++++++- .../source/cardv/SrcCode/System/sys_linuxboot.c | 3 ++- 4 files changed, 24 insertions(+), 3 deletions(-) diff --git a/code/application/source/cardv/SrcCode/System/main.c b/code/application/source/cardv/SrcCode/System/main.c index 8d94cf74d..0c7c274ce 100755 --- a/code/application/source/cardv/SrcCode/System/main.c +++ b/code/application/source/cardv/SrcCode/System/main.c @@ -332,11 +332,13 @@ UINT8 sf_cardv_check_power_on_mode(void) char *pStrOtsOk = "Mode="; char *pStrUpFw = "UpFw="; char *pStrUpMcu = "mcu="; + char *pStrSF = "sf="; char *temp = NULL; UINT8 startup = 0; UINT8 UpFw = 0; UINT8 Upmcu = 0; + UINT8 sftmp = 0; system("cat /proc/cmdline > /tmp/Mode.txt"); fp = fopen("/tmp/Mode.txt","r"); @@ -371,7 +373,13 @@ UINT8 sf_cardv_check_power_on_mode(void) sscanf(temp, "%hhd", &Upmcu); sf_set_mcu_update_flag(Upmcu); } - SLOGI("StartMode=%d,UpFw=%d Upmcu=%d\r\n", startup, UpFw, Upmcu); + temp = strstr(pStrSrc, pStrSF); + if ( temp != NULL) { + temp += strlen("sf="); + sscanf(temp, "%hhd", &sftmp); + sf_cardv_battery_level_set(sftmp); + } + SLOGI("StartMode=%d,UpFw=%d Upmcu=%d sftmp=%d\r\n", startup, UpFw, Upmcu, sftmp); free(pStrSrc); } diff --git a/code/lib/source/sifar/code/include/sf_common.h b/code/lib/source/sifar/code/include/sf_common.h index 9a89bcc59..4e5a64c44 100755 --- a/code/lib/source/sifar/code/include/sf_common.h +++ b/code/lib/source/sifar/code/include/sf_common.h @@ -205,4 +205,5 @@ 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); void sf_mem_free(void); +void sf_cardv_battery_level_set(UINT32 val); #endif diff --git a/code/lib/source/sifar/code/source/common/sf_common.c b/code/lib/source/sifar/code/source/common/sf_common.c index c5c78bdd1..3661bee63 100755 --- a/code/lib/source/sifar/code/source/common/sf_common.c +++ b/code/lib/source/sifar/code/source/common/sf_common.c @@ -2521,7 +2521,18 @@ UINT32 sf_cardv_battery_level_get(void) return (UINT32)sf_LatestBattLevel; } - +/************************************************* + Function: sf_battery_level_set + Description: set battery level + Input: N/A + Output: N/A + Return: N/A + Others: N/A +*************************************************/ +void sf_cardv_battery_level_set(UINT32 val) +{ + sf_LatestBattLevel = val; +} /************************************************* Function: sf_battery_value_get Description: get battery value x% diff --git a/rtos/code/application/source/cardv/SrcCode/System/sys_linuxboot.c b/rtos/code/application/source/cardv/SrcCode/System/sys_linuxboot.c index aa75b4ee1..1615806e6 100644 --- a/rtos/code/application/source/cardv/SrcCode/System/sys_linuxboot.c +++ b/rtos/code/application/source/cardv/SrcCode/System/sys_linuxboot.c @@ -25,6 +25,7 @@ #include "sys_fastboot.h" #if HUNTING_CAMERA_MCU == ENABLE #include "sf_mcu.h" +#include "sf_battery.h" #endif #define CFG_BOOTARG_EXTRA_MAX_LEN 0x100 /* for init.d script parsing by (dmesg | grep xxx) */ @@ -854,7 +855,7 @@ static int make_bootargs(LINUXTMP_PARTITION *p_linuxtmp, unsigned int bootts_beg // } // } - snprintf(PowerOnModeStr, sizeof(PowerOnModeStr), "Mode=%d UpFw=%d mcu=%d",sf_get_power_on_mode(), sf_in_update() , sf_in_mcu_update()); + snprintf(PowerOnModeStr, sizeof(PowerOnModeStr), "Mode=%d UpFw=%d mcu=%d sf=%d",sf_get_power_on_mode(), sf_in_update() , sf_in_mcu_update(), sf_battery_level_get()); linuxboot_set_extra_bootarg(PowerOnModeStr); #endif p_linuxtmp->bootargs_addr = p_linuxtmp->tmp_curr; From ace86859f8ee7f72efd14fc8bbb6f8e7c2031bb8 Mon Sep 17 00:00:00 2001 From: xiehongyan Date: Wed, 3 Jan 2024 18:50:17 +0800 Subject: [PATCH 12/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=9B=9E=E6=94=BE?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E5=88=87=E6=8D=A2emmc=E5=92=8Csd=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cardv/SrcCode/UIApp/Play/UIAppPlay_Exe.c | 16 +++++++++---- .../UIFlowPlay/UIFlowPlayEventCallback.c | 23 ++++++++++--------- 2 files changed, 23 insertions(+), 16 deletions(-) diff --git a/code/application/source/cardv/SrcCode/UIApp/Play/UIAppPlay_Exe.c b/code/application/source/cardv/SrcCode/UIApp/Play/UIAppPlay_Exe.c index 6144b5d24..f3f818aeb 100755 --- a/code/application/source/cardv/SrcCode/UIApp/Play/UIAppPlay_Exe.c +++ b/code/application/source/cardv/SrcCode/UIApp/Play/UIAppPlay_Exe.c @@ -34,6 +34,7 @@ IMAGEAPP_PLAY_CFG_DISP_INFO gPlay_Disp_Info; static HD_COMMON_MEM_INIT_CONFIG g_play_mem_cfg = {0}; static UINT32 g_PlayExifBufPa = 0, g_PlayExifBufVa = 0; +DCF_HANDLE ChangeHandle = -1; static ER PlayExe_InitExif(void) { @@ -258,10 +259,11 @@ INT32 PlayExe_OnOpen(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray) UI_SetData(FL_IsUseFileDB, 0); #endif useFileDB = UI_GetData(FL_IsUseFileDB); + printf("[PlayExe_OnOpen]mode open\n"); if (useFileDB) { CHAR *rootPath = "A:\\"; //CHAR* defaultfolder="A:\\CarDV\\"; - + printf("[PlayExe_OnOpen]if file db\n"); PPBX_FLIST_OBJ pFlist = PBXFList_FDB_getObject(); pFlist->Config(PBX_FLIST_CONFIG_MEM, uiPoolAddr, POOL_SIZE_FILEDB); pFlist->Config(PBX_FLIST_CONFIG_MAX_FILENUM, 5000, 0); @@ -276,12 +278,16 @@ INT32 PlayExe_OnOpen(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray) pFlist->Config(PBX_FLIST_CONFIG_SUPPORT_LONGNAME, 1, 0); PB_SetParam(PBPRMID_FILELIST_OBJ, (UINT32)pFlist); } else { + printf("[PlayExe_OnOpen]else file %d\n", ChangeHandle); extern DCF_HANDLE System_Get_DCF_Handle(void); - + PPBX_FLIST_OBJ pFlist = PBXFList_DCF_getObject(); - DCF_HANDLE handle = System_Get_DCF_Handle(); + if (ChangeHandle == -1) + { + ChangeHandle = System_Get_DCF_Handle(); + } - pFlist->Config(PBX_FLIST_CONFIG_DCF_HANDLE, (UINT32)handle, 0); + pFlist->Config(PBX_FLIST_CONFIG_DCF_HANDLE, (UINT32)ChangeHandle, 0); PB_SetParam(PBPRMID_FILELIST_OBJ, (UINT32)pFlist); } PB_SetParam(PBPRMID_DEC_VIDEO_CALLBACK, (UINT32)PBDecVideoCB); @@ -362,7 +368,7 @@ INT32 PlayExe_OnClose(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray) #if _TODO //refer to NA51055-840 JIRA and using new method PBView_KeepLastView(); #endif - + printf("[PlayExe_OnClose] on close\n"); PlayExe_UninitExif(); ImageApp_Play_Close(); diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c index f00674c89..98d1e6f62 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c @@ -62,6 +62,8 @@ static void stop_play(void); #define HANDLE_SD 1 #define HANDLE_EMMC 0 +DCF_HANDLE FirstHandle = -1; +extern DCF_HANDLE ChangeHandle; static BOOL g_PlayBgInitFileSys = FALSE; @@ -338,6 +340,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key) { printf(" ================================== switch sd card.\n"); ProfileSelected = 1; + ChangeHandle = ProfileSelected; Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); } @@ -345,6 +348,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key) { printf(" ================================== switch emmc.\n"); ProfileSelected = 0; + ChangeHandle = ProfileSelected; Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); } @@ -1284,18 +1288,15 @@ static void set_indev_keypad_group(lv_obj_t* obj) static void UIFlowPlay_ScrOpen(lv_obj_t* obj) { - + if (FirstHandle == -1) + { + FirstHandle = System_Get_DCF_Handle(); + printf("[UIFlowPlay_ScrOpen][*x] select handle: %d.\n", FirstHandle); + ProfileSelected = FirstHandle; + } + 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); if (UIStorageCheck(STORAGE_CHECK_ERROR, NULL) == TRUE) { From f70d7b9d15034555d6232e41d7e4c1d6ddd74f71 Mon Sep 17 00:00:00 2001 From: payton Date: Wed, 3 Jan 2024 19:10:03 +0800 Subject: [PATCH 13/16] =?UTF-8?q?1.reset=E9=87=8D=E7=BD=AEsf=E5=8F=82?= =?UTF-8?q?=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c | 3 +++ .../application/source/sf_app/code/source/app/sf_common.c | 5 ++++- code/lib/source/sifar/code/include/sf_common.h | 1 + code/lib/source/sifar/code/source/common/sf_common.c | 8 ++++++++ 4 files changed, 16 insertions(+), 1 deletion(-) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c index d82e3bf24..18694b5d1 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c @@ -1945,6 +1945,9 @@ void SysResetFlag(void) //#2023/02/10#Payton - end SysSetFixedFlag(); +#if HUNTING_CAMERA_MCU == ENABLE + sf_cardv_statistics_param_reset(); +#endif } diff --git a/code/application/source/sf_app/code/source/app/sf_common.c b/code/application/source/sf_app/code/source/app/sf_common.c index fd8048023..bfafd04a0 100755 --- a/code/application/source/sf_app/code/source/app/sf_common.c +++ b/code/application/source/sf_app/code/source/app/sf_common.c @@ -813,12 +813,16 @@ static SINT32 sf_app_proccess_cmd_mcu(SF_MESSAGE_BUF_S *pMessageBuf) static SINT32 sf_app_proccess_cmd_para_update(SF_MESSAGE_BUF_S *pMessageBuf) { MLOGD("ID = %#x\n",pMessageBuf->arg1); + SF_PDT_PARAM_STATISTICS_S *pSifarPara = sf_statistics_param_get(); switch(pMessageBuf->arg1) { case SF_PARA_CMD_UPDATE: sf_share_mem_customer_update(); break; + case SF_PARA_CMD_RESET: + sf_statistics_param_reset(pSifarPara); + break; case SF_PARA_CMD_FWUP: FwUpdate = pMessageBuf->arg2; //sf_mcu_reg_set(SF_MCU_SOFT_UPDATE, FwUpdate); @@ -840,7 +844,6 @@ static SINT32 sf_app_proccess_cmd_para_update(SF_MESSAGE_BUF_S *pMessageBuf) case SF_PARA_CMD_SIG: sf_app_para_signaling_start(); break; - default: break; } diff --git a/code/lib/source/sifar/code/include/sf_common.h b/code/lib/source/sifar/code/include/sf_common.h index 4e5a64c44..3b79b6783 100755 --- a/code/lib/source/sifar/code/include/sf_common.h +++ b/code/lib/source/sifar/code/include/sf_common.h @@ -206,4 +206,5 @@ UINT32 sf_cardv_load_menu_info_start(void); BOOL sf_vos_perf_list_dump(unsigned char argc, char **argv); void sf_mem_free(void); void sf_cardv_battery_level_set(UINT32 val); +void sf_cardv_statistics_param_reset(void); #endif diff --git a/code/lib/source/sifar/code/source/common/sf_common.c b/code/lib/source/sifar/code/source/common/sf_common.c index 3661bee63..172119f25 100755 --- a/code/lib/source/sifar/code/source/common/sf_common.c +++ b/code/lib/source/sifar/code/source/common/sf_common.c @@ -3518,3 +3518,11 @@ void sf_mem_free(void) system("echo 3 >/proc/sys/vm/drop_caches"); printf("[%s]:%d sf e\n", __FUNCTION__, __LINE__); } +void sf_cardv_statistics_param_reset(void) +{ + SF_MESSAGE_BUF_S stMessageBuf = {0}; + stMessageBuf.arg1 = SF_PARA_CMD_RESET; + stMessageBuf.cmdId = CMD_PARA; + sf_com_message_send_to_app(&stMessageBuf); + printf("[%s]:%d sf e\n", __FUNCTION__, __LINE__); +} From 5d8d04ba59b2c827d4528fda2f9412d6e8c1122f Mon Sep 17 00:00:00 2001 From: payton Date: Wed, 3 Jan 2024 19:19:43 +0800 Subject: [PATCH 14/16] =?UTF-8?q?1.=E6=9B=B4=E6=96=B0dcf=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- code/lib/source/DCF/libDCF.a | Bin 47732 -> 47848 bytes code/lib/source/DCF/libDCF.so | Bin 39092 -> 39132 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/code/lib/source/DCF/libDCF.a b/code/lib/source/DCF/libDCF.a index 82dc54b3362a11a6332afda1e2c301dab58054e6..2fc003dd9b6561c360bd45ba475dd41d30b577b3 100644 GIT binary patch delta 6729 zcmaJ`e{fXSbw2k!tr0{?9{>8Vh~(x@k7AM=7%uQK_lYe3{K>Z+TxZba)zd~@gGP)gI%SSQ#FG#8q@E) z?>dIsFGX{m^pzMS3v@Sr5q1E1cw z@t>2V^71Vrd)wsT)lejT+4WinMYdn!nABDdx*}7gGJQED>4EJ2R|XrK-?^4m`O2UR zUCOe&zz**x)&BEU&a00m2Qg=0;Pa1O{_h(%?lQK#wyRF0wPbKovUN~Je{;1)9=-fR zG(FH0-7(;Z+~&ygf$KMJ+;-*0jgNAow+{Xe_m^ z|Hs{TO`QyA#;l-y0hv3KrdyHLrS7)$k%1fu>UnY0}PatQ-ts znOV@hC6XQpc~+jR9AsqByUelSmUphH6)z1|XTNHe$)!)~IT^n{KQs$Lp6z@M>v zHS}|(L|QD58(t>cEk9>?xg4A@|D@#=X8cd&9di0l7{R^rQ>zd$e4z|jzQAN?k$h}< zgBibHJ~Ih7_(|e7SH2>%Ew3>856C>rJ;NWAFI(PV_(QS`+^jz+!NXE-6;2z2%j8+h z1A|qv&GJ@b;8E$cywT`?U4CGBjv4=k^jVH!Q=)&ed^t*+E8mn~PLl6%Os?TKSH3Mn z83rGd-&wxJjMqp`Hnm0ije|P*Bg;pz`*UTb%(pzye_R&!#2WIHis`RD`5jf%bNIiA2T{6XhA%D$jIWUX+pA z@_4Y|DK_)vCB?dQ?Y{i=P3xX&c>F0Lu6(jl>YAQjBO9JxU$d&A?unX}4eNS7TKk3* zYf*9*g%595a>*jQEc}9!2odr)(ESM8i5S&CZd#batliWG_FBXf%J5O3JAezd|3XO? z5j!oLm@h)>&9U^&_&m`Un8!Fvs#QO=Va8+xcLs-X_^bLBP08 zqJC`_B;oB!DmadKjULb>2x#I3ngjuvSn8bzKEj(zRxo0*iQ&N^hK%BFA{IPM#Da6U zxW7i`iO@SuMAYYlMgP|`_dM7Jw^_mH35#cmSp0b+#yuQ%oSh(I_G%*JT|^}9G;xPs zwecRdYcJ0D@U1xEhzM*L=njjF5dTNyI`N9gDDe|41Sh2XTahf{uSBwmC~^)FN%M$z zDaj)u!!xZsY~>Lv55rW74hxu^+ie>npeAylX+L0x<)G~{BZ7y4Zna2+_?Som5s#HQ#2S&g#9FjH zu}&mT{4S0O;!2SP#CkkM9Xt!&$3+%Xuu7zY_yoF`h|N(+Tob&2xPKRBY%8wxc6$~f13a^4V};BJ1Fr=#aP*T2FbhcinMCLp5dRb< z1#+He$CJcVr;=vgAf+q;k%yRjpM5%P73sCSkNC=XKoM{{py9BOl@Z}!Ea0*6IOMZY zhq1uI0aex6Or>m}Ws>^_bv36f~K;Z+x5v8OR*sQly-C(@IT% z7&iePRat7oc!5abfkdfs?7;Yf8>!r`%p2B)Z ztuzd6j+#9Is|<^L39WnsokfIoI5K<%@lEV8%WH}7R&V)gBJ!Q#9m{E^zeQr+cl6Nn zQyIe$WjNr+&R~-=_%^lumQ5XOEuc+sle(L1Cpo`!{LDWA?mlK;VYZH^*3=Sut<;D8 zUf?6V$%0`X1T%>^VWM<|1H}Y@l_ki>0suDwz_6*^lyL{B3{(5llu2#Bbu&yX3tr9W zjaG?FCDEj8C0dkTekkTq4M!~cq zA~cTR*c1SPEx`mjtR*6VCL;1~3Ip6l{-SM+Ze7~qmm{o=IQ!4=|r$P)18Gj|R-&fFxBN1ZtcP`zr)J&q%Z#xa_;fgBDu z0o|X8G!vf=lIZr2?>ry+6 zm7gL0i^y5xFL3tT@jfD)o>Qnd4V|apUqvDe1S?4p(GF%sXa}y8?a)X>8#G&NBcdIc zxp24s@eB9xEuLYr4Hyo!FA`hyEv^1kuu(Px9xyY5CirsejJogPT?dR!Fhm3&CjJty zt(IRW_Kp{MF+IZ9av~zFC(g%~B*J$y(A_we^Paa_tN9gw>x)P575}3bpPr-#woP;K z@vawbo32W5&2vg)x~grOTUrz)1(pXGFAauEg5iYGR%N_A*zuDiESgJ)QF5=HdtB#Hxw2T&3~FcBZfoZyrPA(eCDbf<`6=DGL+4zQ%Sr@3vW zathY!y*oCj20eA>GS#H(aNVT4ac$K~FH>7}6|TE-FYWmpY5r>z}{6R8{Nz*Jx!eu3PoHuidTA=(TU(y0hI2U0ILU4n3{? zPA6x&{^RySC$C9=x4lqB^~>$P>eJo0?$ZC(?mIcpXlHj}=wbwajN@#b-0dNzs@;C5 zG9MqTM%D(|Y2CToce3x$|G2wQ4e5`eP+fp89HS83hk)48URKE*Z1!NWa*Zb~t!r#}q9fhh* zmv=A?b-1SW%eW5d?hd46uKsrnqcHoCgn9TQsp;LfDYfKR;Ngn)N3Kebu4!)4r|3(wp;YyLU;kfFiq_2goPHJ+gTVIhRic&D?2?ktm`^`bDg2nhIe=R zp|+&REkosrq=-VB*exTpxz*qGk1{(C_L#$^E*J1t5L%x&ufZlwFxjP2YDg8dK=kzDIj_CZu zzBA`R{k6k|3N3rshu1y0p40E*n$REO+N!4>@%5=AS?cq_`i^+&yskUqhc10hB#@;c z8`j;BjY5_etPwI#4|L7YGmm1^>nf; zOOG5a2zBs}BF0*@i`!;V7kAta%xVU|h&whKee`#Ep)4Hh(~S0Yu<-9$(dAqF6K%DF}x`JFY)6xl!cs|M>q#;f3KbPa1A%Cyq@YNrbp{>j>UWDL#xqYX9LT76c0hc|em9UjE2YVPuO$1W zCVBSXmoNXFpU2jGaE_mAL!|@#-(GTdOht0qw?uA~iex{1Phb<;H=i3Tn+BZFm*=Ww z$=Rnu$^Nd;j{XdhDITflzjXQX6!w*Q>e+#Y#9M<|p$P-vIPYcoLeEf8(_xsUQ&CSq|pt5Axfcjrw)|Y~RQ-2OW1sXH|_|*idRau%Ss!#ei32 zT!s(R3Se5pJ(gAscn}((hw^xhL0PPFS^KkB;1 z*``Mx`A&QndK~_TIOM=6eRz~UK1#o1buA(oFE`1DR+l-{v*Z)2vC7bM$vU<=Ac)xsRb%W8%gw6ya5NlA zlac61SriVZ%aSx1iKWSCVVW#VZyU2c$5R6rheIQ47Z((z$!J>F#YJg-6&I(MmZZs8 zdeE^*+Js~Af^;2Cmxbvvec)IuZHlpyv}~264_p#SOKnLsHQ{kK^Cg85{neW1Cof;O z`VrZ%`mySV>X$!Uy`p}tJhpD_qbpW5bltx8fG3=Aq#KLr-{?r6C3lzqNk;-C{3z&t zE)pZ>=#=%h#L=piwZR_C^Oi%P+lL2h|J;!b@@7Xe$!Q|&otlTnyPh5u^l3Fm zcXLH5ZNCZ2HZabC58{J+gGeWdBYD)4r^~%jgcloqPS3qbqyqFmMjdbVDMi$$Ur7kYSOTB1=+vVZ|+upv>eaWQhu9AQL$Tth2h&vYC9^krU)r zM+V8w`pSmurlIy+T)+Mtk$TdH>5&NcIQdKc+lGfHBe)i}xm$!;W9KZYOnXxDlY6jn&Yi!;uo-aCOQ&TwiAna7DEHxdV|k23 z>pBwtK@!P1MsC+n8s~7M_TX0cPr#i= zkxUZXKZ`t%ik!;cU@o(Bo!x*4XdN|ZHXhh!^-;?cmfUcx zcfnGaL};EIGS@O@$*&Rm^&~cSlOu6sG}AyJNfLQGW-FW^(Ln5K_(*6!=-w|9Age@j z$z|C2fSP$*Y z+CO2}9@?xumYdfX%S*`w472ty%-V0XYY%PK{z)7w&h$ESt(puhg`SETG9wJU24vva zMkc@vko6~#$XG6U50(^UJD)8tCF3tRlHdoVh)X~o2i^Jhd*K<89;;7~+pYu@faU<~ z*dN5qNDMF>@Njt){?z^WqGLG%^HZZ_pa0? zbN5~;XNL@ACb?u$Xq1on8$_<%_aj)pcOXI zBxcTlp-V~V;S^V}KLlPwqMsHL{hLf9&|ZvhDx78k3}FXL>^ng_W@vR5*@1Tf)XK_N^qo2)apJv!-7RI7E&5W+I@O2N!~Rxc$F;rLly zLn06!GuE#ou@q^64F@#e282L*7y$H15&@kj;m1vi5dbe924YfspG_?~HmQX!9W_uX zJHY0}8k%;Upo=JvlGwDvOEA~g+hptYSY~j%C!M&t8hI0iH~=ml6F~K-0H93(=(vpa z#$6epj2&Xe4di?gGf**p;WK=0r^fke64%m~nogK@bu5e~cnA2?tQi2&A- zSQ3*;u!VZF-88T2D;t9)2&)knD8osRm`^)7AFnaiKX2)CQ}yxJNgwYro<_RFj;Cr{vZwz`7E*bZi+Vmma@$2LeaFz8vG1&ak2)N1 zl87b&j&pxHybN78Zmx3h+kmIHyoBEd%zk?HSf@a*-Jb14wg1;SZZr~wn&=6K2`8++ z?Kz%E3?j!VG$nS6be&7 zOIC>$0yzka-QeeH(o+)A*S1e|@q={AE{t?tY@XzJPB!Q@&uwsgy7{@q&LsU9&w$R* z#m-D!k7r2V!!xE6TNZl`uF;2D7I`kL(KlN5!@FnaVrQv#>|E?Qy;i^8xyUoPR&U?6 z$PwMSi@lt~Go*#PZ^ADDm+zkL-TD~TP=C35x~FfV{&shsC;6EEd3T3VP!DR}@Urt6zjjXwi##PEwaaTuSH`h;BXdV$j=t3obQX{@esT z|Dq4xH`YrUZ|-k=PL(eFP0(9gI$UoXygJhK|(Q#*p*raMHwqv7@mS_Q8~SHbJSy_IU)+2QkCEZ4U? z^1Nktip(*Mhfr~yUj0(g+X8R3@fN(~!_Hj>ui`HJhS7L!@V4p^c&+fRO(hUsr+x#k z8(vl_fiL@vFQIS2Yk`+(>J7nb z)2j~$J?}5jM|b4tg2O)NeO-1qc(p9V`hHjB5U$&V?l}BiZ=w$0$@<#i>DU1uAD(Id kn1jF2bdBk}JkJ0B{$Qii-dyB_yBgly?l|G!{eIB-532+t00000 diff --git a/code/lib/source/DCF/libDCF.so b/code/lib/source/DCF/libDCF.so index 773224bd5634f70601f63576661b699d2e1fd3a2..769c86e00f0c77d6d5c425f3cc42c363be0c43a4 100755 GIT binary patch delta 12211 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 delta 11958 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 Date: Wed, 3 Jan 2024 20:18:36 +0800 Subject: [PATCH 15/16] =?UTF-8?q?=E8=A7=A3=E5=86=B3emmc=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E5=8A=A0=E8=BD=BD=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../etc_565_HUNTING_EVB_LINUX_4G_S550/init.d/S07_SysInit | 2 ++ 1 file changed, 2 insertions(+) diff --git a/BSP/root-fs/rootfs/etc_Model/etc_565_HUNTING_EVB_LINUX_4G_S550/init.d/S07_SysInit b/BSP/root-fs/rootfs/etc_Model/etc_565_HUNTING_EVB_LINUX_4G_S550/init.d/S07_SysInit index 6f507a2ce..5f4a0f70e 100755 --- a/BSP/root-fs/rootfs/etc_Model/etc_565_HUNTING_EVB_LINUX_4G_S550/init.d/S07_SysInit +++ b/BSP/root-fs/rootfs/etc_Model/etc_565_HUNTING_EVB_LINUX_4G_S550/init.d/S07_SysInit @@ -85,3 +85,5 @@ if [ ! -f /tmp/.nvt_mounts ]; then /etc/mdev-script/autosd.sh rm -rf /tmp/.nvt_mounts; fi + +mount /dev/mmcblk1p1 /mnt/sd2 From bd6fb63fd09eb1678329c6e2008199d8d397bbc1 Mon Sep 17 00:00:00 2001 From: xiehongyan Date: Wed, 3 Jan 2024 20:31:50 +0800 Subject: [PATCH 16/16] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=9B=9E=E6=94=BE?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E9=BB=98=E8=AE=A4=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c index f9182af37..4acdaaf00 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c @@ -321,6 +321,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key) hidde_Selection_page(); UINT32 uiFileSeq; PB_GetParam(PBPRMID_CURR_FILESEQ, &uiFileSeq); + ProfileFocused = 0; if (0 != uiFileSeq) { stop_play(); @@ -342,7 +343,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key) ProfileSelected = 1; ChangeHandle = ProfileSelected; Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); - + } else if (0 == ProfileFocused && ProfileSelected == 1) {