From: Caisking Date: Mon, 29 Sep 2025 07:25:20 +0000 (+0800) Subject: 修复ota下载显示异常的bug X-Git-Tag: V1.0.9_20251128_194606_LN~250^2~31^2~2 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=6b6de22744966532d41c93b2c0d0216ebbcb83b7;p=mirrors%2FFD230.git 修复ota下载显示异常的bug --- diff --git a/code/sdk/application/brandy/brandy_recovery/recovery_display.c b/code/sdk/application/brandy/brandy_recovery/recovery_display.c index 7edf5c559..fd917a6aa 100644 --- a/code/sdk/application/brandy/brandy_recovery/recovery_display.c +++ b/code/sdk/application/brandy/brandy_recovery/recovery_display.c @@ -110,51 +110,45 @@ static errcode_t recovery_dispay_layer_and_surface_init(ext_dpu_surface *surface } void recovery_display_sample(void) -{ - errcode_t ret; - td_handle dpu_handle; - ext_dpu_surface surface = {0}; - ext_dpu_layer_info layer_info = {0}; -#ifndef IMG_DISPLAY - /* 局部显示白色示例 */ - ext_rect update_rect = {0, 133, 454, 200}; // 定义一个局部区域 - recovery_dispay_layer_and_surface_init(&surface, &layer_info, &update_rect); - // 设置layer全白色 - memset_s((void *)surface.phy_addr, surface.size, 0xff, surface.size); -#else - /* 全屏显示图片示例 */ - /* 图片压缩参数如下: - - - */ -#ifdef SINGLE_USER_PARTITION - #define DISP_IMAGE "/user/system/OTAUpdataRecover.bin" -#else - #define DISP_IMAGE "/update/demo.bin" -#endif - recovery_dispay_layer_and_surface_init(&surface, &layer_info, NULL); - recovery_dispay_read_image_and_savein_surface(DISP_IMAGE, &surface); -#endif - - ret = uapi_dpu_create_layer(&layer_info, &dpu_handle); - if (ret != ERRCODE_SUCC) { - return; - } - ret = uapi_dpu_set_layer_info(dpu_handle, &surface); - if (ret != ERRCODE_SUCC) { - return; - } - ret = uapi_dpu_refresh_layers(); - if (ret != ERRCODE_SUCC) { - return; - } - ret = uapi_dpu_destroy_layer(dpu_handle); - if (ret != ERRCODE_SUCC) { - return; - } -} + { + errcode_t ret; + td_handle dpu_handle; + ext_dpu_surface surface = {0}; + ext_dpu_layer_info layer_info = {0}; + ext_rect update_rect = {0, 0, 466, 466}; // 定义一个局部区域 + // ext_rect update_rect = {223, 223, 20, 20}; // 定义一个局部区域 + + recovery_dispay_layer_and_surface_init(&surface, &layer_info, &update_rect); + // 设置layer全白色, 也可以使用接口 recovery_dispay_read_image_and_savein_surface 实现从文件系统读图片 + /* image_tool 图片压缩参数如下: + + + */ + // memset_s((void *)surface.phy_addr, surface.size, 0xFF, surface.size); + #ifdef SINGLE_USER_PARTITION + recovery_dispay_read_image_and_savein_surface("/user/system/OTAUpdataRecover.bin",&surface); + #else + recovery_dispay_read_image_and_savein_surface("/system/OTAUpdataRecover.bin",&surface); + #endif + ret = uapi_dpu_create_layer(&layer_info, &dpu_handle); + if (ret != ERRCODE_SUCC) { + return; + } + ret = uapi_dpu_set_layer_info(dpu_handle, &surface); + if (ret != ERRCODE_SUCC) { + return; + } + ret = uapi_dpu_refresh_layers(); + if (ret != ERRCODE_SUCC) { + return; + } + ret = uapi_dpu_destroy_layer(dpu_handle); + if (ret != ERRCODE_SUCC) { + return; + } + } void recovery_display_init(void) {