chore(cmsis-pack): monthly update for december (#3872)

This commit is contained in:
Gabriel Wang
2022-12-20 15:10:13 +08:00
committed by GitHub
parent ecafa88d2c
commit 76318ba2e2
5 changed files with 110 additions and 36 deletions

View File

@@ -36,7 +36,13 @@
<repository type="git">https://github.com/lvgl/lvgl.git</repository> <repository type="git">https://github.com/lvgl/lvgl.git</repository>
<releases> <releases>
<release date="2022-11-28" version="1.0.11" url="https://raw.githubusercontent.com/lvgl/lvgl/master/env_support/cmsis-pack/LVGL.lvgl.1.0.11.pack"> <release date="2022-12-18" version="1.0.12-alpha" url="https://raw.githubusercontent.com/lvgl/lvgl/master/env_support/cmsis-pack/LVGL.lvgl.1.0.12-alpha.pack">
- LVGL 9.0.0-dev
- Montyly update for December
- Fix ARM2D Transform Support
- Add Barcode
</release>
<release date="2022-11-28" version="1.0.11" url="https://github.com/lvgl/lvgl/raw/f433ed62248cafd915848ff4d0720f97fb0fc7fd/env_support/cmsis-pack/LVGL.lvgl.1.0.11.pack">
- LVGL 9.0.0-dev - LVGL 9.0.0-dev
- Montyly update for November - Montyly update for November
</release> </release>
@@ -401,7 +407,7 @@
<file category="sourceC" name="src/themes/default/lv_theme_default.c" /> <file category="sourceC" name="src/themes/default/lv_theme_default.c" />
<!-- general --> <!-- general -->
<file category="preIncludeGlobal" name="lv_conf_cmsis.h" attr="config" version="1.1.5" /> <file category="preIncludeGlobal" name="lv_conf_cmsis.h" attr="config" version="1.1.6" />
<file category="sourceC" name="lv_cmsis_pack.c" attr="config" version="1.0.0" /> <file category="sourceC" name="lv_cmsis_pack.c" attr="config" version="1.0.0" />
<file category="header" name="lvgl.h" /> <file category="header" name="lvgl.h" />
<file category="doc" name="README.md"/> <file category="doc" name="README.md"/>
@@ -437,7 +443,7 @@
</files> </files>
</component> </component>
<component Cgroup="lvgl" Csub="GPU Arm-2D" condition="LVGL-Essential" Cversion="1.1.0"> <component Cgroup="lvgl" Csub="GPU Arm-2D" condition="LVGL-Essential" Cversion="1.2.0">
<description>A 2D image processing library from Arm (i.e. Arm-2D) for All Cortex-M processors including Cortex-M0</description> <description>A 2D image processing library from Arm (i.e. Arm-2D) for All Cortex-M processors including Cortex-M0</description>
<files> <files>
<file category="sourceC" name="src/draw/arm2d/lv_gpu_arm2d.c" condition="Arm-2D"/> <file category="sourceC" name="src/draw/arm2d/lv_gpu_arm2d.c" condition="Arm-2D"/>
@@ -629,6 +635,22 @@
</component> </component>
<component Cgroup="lvgl" Csub="Libs Barcode" condition="LVGL-Essential">
<description>Add BMP support</description>
<files>
<!-- src/libs/barcode -->
<file category="sourceC" name="src/libs/barcode/lv_barcode.c" />
<file category="sourceC" name="src/libs/barcode/code128.c" />
</files>
<RTE_Components_h>
/*! \brief enable Barcode support */
#define LV_USE_BARCODE 1
</RTE_Components_h>
</component>
<component Cgroup="lvgl" Csub="Libs freetype" condition="LVGL-Essential"> <component Cgroup="lvgl" Csub="Libs freetype" condition="LVGL-Essential">
<description>Add freetype support, an extra librbary is required.</description> <description>Add freetype support, an extra librbary is required.</description>
<files> <files>

View File

@@ -2,8 +2,8 @@
<index schemaVersion="1.0.0" xs:noNamespaceSchemaLocation="PackIndex.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"> <index schemaVersion="1.0.0" xs:noNamespaceSchemaLocation="PackIndex.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance">
<vendor>LVGL</vendor> <vendor>LVGL</vendor>
<url>https://raw.githubusercontent.com/lvgl/lvgl/master/env_support/cmsis-pack/</url> <url>https://raw.githubusercontent.com/lvgl/lvgl/master/env_support/cmsis-pack/</url>
<timestamp>2022-11-28T21:03:00</timestamp> <timestamp>2022-12-18T21:03:00</timestamp>
<pindex> <pindex>
<pdsc url="https://raw.githubusercontent.com/lvgl/lvgl/master/env_support/cmsis-pack/" vendor="LVGL" name="lvgl" version="1.0.11"/> <pdsc url="https://raw.githubusercontent.com/lvgl/lvgl/master/env_support/cmsis-pack/" vendor="LVGL" name="lvgl" version="1.0.12-alpha"/>
</pindex> </pindex>
</index> </index>

View File

@@ -235,6 +235,7 @@
#define LV_LOG_TRACE_OBJ_CREATE 1 #define LV_LOG_TRACE_OBJ_CREATE 1
#define LV_LOG_TRACE_LAYOUT 1 #define LV_LOG_TRACE_LAYOUT 1
#define LV_LOG_TRACE_ANIM 1 #define LV_LOG_TRACE_ANIM 1
#define LV_LOG_TRACE_MSG 1
#endif /*LV_USE_LOG*/ #endif /*LV_USE_LOG*/

View File

@@ -39,6 +39,7 @@
#include "../../core/lv_refr.h" #include "../../core/lv_refr.h"
#if LV_USE_GPU_ARM2D #if LV_USE_GPU_ARM2D
#define __ARM_2D_IMPL__
#include "arm_2d.h" #include "arm_2d.h"
#include "__arm_2d_impl.h" #include "__arm_2d_impl.h"
@@ -89,10 +90,12 @@
#define __arm_2d_impl_cl_key_copy __arm_2d_impl_rgb16_cl_key_copy #define __arm_2d_impl_cl_key_copy __arm_2d_impl_rgb16_cl_key_copy
#define __arm_2d_impl_alpha_blending_colour_keying \ #define __arm_2d_impl_alpha_blending_colour_keying \
__arm_2d_impl_rgb565_alpha_blending_colour_keying __arm_2d_impl_rgb565_alpha_blending_colour_keying
#define arm_2d_tile_transform_with_src_mask_and_opacity \ #define arm_2d_tile_transform_with_src_mask_and_opacity_prepare \
arm_2d_rgb565_tile_transform_with_src_mask_and_opacity arm_2dp_rgb565_tile_transform_with_src_mask_and_opacity_prepare
#define arm_2d_tile_transform_with_opacity \ #define arm_2d_tile_transform_with_opacity_prepare \
arm_2d_rgb565_tile_transform_with_opacity arm_2dp_rgb565_tile_transform_with_opacity_prepare
#define arm_2d_tile_transform_prepare \
arm_2dp_rgb565_tile_transform_prepare
#define __ARM_2D_PIXEL_BLENDING_OPA __ARM_2D_PIXEL_BLENDING_OPA_RGB565 #define __ARM_2D_PIXEL_BLENDING_OPA __ARM_2D_PIXEL_BLENDING_OPA_RGB565
@@ -124,10 +127,12 @@
#define __arm_2d_impl_cl_key_copy __arm_2d_impl_rgb32_cl_key_copy #define __arm_2d_impl_cl_key_copy __arm_2d_impl_rgb32_cl_key_copy
#define __arm_2d_impl_alpha_blending_colour_keying \ #define __arm_2d_impl_alpha_blending_colour_keying \
__arm_2d_impl_cccn888_alpha_blending_colour_keying __arm_2d_impl_cccn888_alpha_blending_colour_keying
#define arm_2d_tile_transform_with_src_mask_and_opacity \ #define arm_2d_tile_transform_with_src_mask_and_opacity_prepare \
arm_2d_cccn888_tile_transform_with_src_mask_and_opacity arm_2dp_cccn888_tile_transform_with_src_mask_and_opacity_prepare
#define arm_2d_tile_transform_with_opacity \ #define arm_2d_tile_transform_with_opacity_prepare \
arm_2d_cccn888_tile_transform_with_opacity arm_2dp_cccn888_tile_transform_with_opacity_prepare
#define arm_2d_tile_transform_prepare \
arm_2dp_cccn888_tile_transform_prepare
#define __ARM_2D_PIXEL_BLENDING_OPA __ARM_2D_PIXEL_BLENDING_OPA_CCCN888 #define __ARM_2D_PIXEL_BLENDING_OPA __ARM_2D_PIXEL_BLENDING_OPA_CCCN888
@@ -345,6 +350,41 @@
} while(0); \ } while(0); \
src_buf = src_buf_org; src_buf = src_buf_org;
#define __ARM_2D_PREPARE_TRANS_AND_TARGET_REGION(__TRANS_PREPARE, ...) \
do { \
__TRANS_PREPARE( \
NULL, \
__VA_ARGS__); \
\
target_region = (arm_2d_region_t) { \
.tLocation = { \
.iX = coords->x1 - draw_ctx->clip_area->x1, \
.iY = coords->y1 - draw_ctx->clip_area->y1, \
}, \
.tSize = { \
.iWidth = lv_area_get_width(coords), \
.iHeight = lv_area_get_height(coords), \
}, \
}; \
\
arm_2d_size_t tTransSize \
= ARM_2D_CTRL.DefaultOP \
.tTransform.Source.ptTile->tRegion.tSize; \
\
if (target_region.tSize.iWidth < tTransSize.iWidth) { \
int16_t iDelta = tTransSize.iWidth - target_region.tSize.iWidth;\
target_region.tLocation.iX -= iDelta / 2; \
target_region.tSize.iWidth = tTransSize.iWidth; \
} \
\
if (target_region.tSize.iHeight < tTransSize.iHeight) { \
int16_t iDelta \
= tTransSize.iHeight - target_region.tSize.iHeight; \
target_region.tLocation.iY -= iDelta / 2; \
target_region.tSize.iHeight = tTransSize.iHeight; \
} \
} while(0)
/* *INDENT-ON* */ /* *INDENT-ON* */
/********************** /**********************
@@ -868,6 +908,12 @@ static void lv_draw_arm2d_img_decoded(struct _lv_draw_ctx_t * draw_ctx,
blend_dsc.blend_mode = draw_dsc->blend_mode; blend_dsc.blend_mode = draw_dsc->blend_mode;
blend_dsc.blend_area = &blend_area; blend_dsc.blend_area = &blend_area;
if(lv_img_cf_is_chroma_keyed(cf)) cf = LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED;
else if(cf == LV_IMG_CF_ALPHA_8BIT) {}
else if(cf == LV_IMG_CF_RGB565A8) {}
else if(lv_img_cf_has_alpha(cf)) cf = LV_IMG_CF_TRUE_COLOR_ALPHA;
else cf = LV_IMG_CF_TRUE_COLOR;
/*The simplest case just copy the pixels into the draw_buf*/ /*The simplest case just copy the pixels into the draw_buf*/
if(!mask_any && !transform && cf == LV_IMG_CF_TRUE_COLOR && draw_dsc->recolor_opa == LV_OPA_TRANSP) { if(!mask_any && !transform && cf == LV_IMG_CF_TRUE_COLOR && draw_dsc->recolor_opa == LV_OPA_TRANSP) {
@@ -1206,17 +1252,6 @@ static void lv_draw_arm2d_img_decoded(struct _lv_draw_ctx_t * draw_ctx,
&target_tile, &target_tile,
false); false);
target_region = (arm_2d_region_t) {
.tLocation = {
.iX = coords->x1 - draw_ctx->clip_area->x1,
.iY = coords->y1 - draw_ctx->clip_area->y1,
},
.tSize = {
.iWidth = lv_area_get_width(coords),
.iHeight = lv_area_get_height(coords),
},
};
static arm_2d_tile_t source_tile; static arm_2d_tile_t source_tile;
source_tile = (arm_2d_tile_t) { source_tile = (arm_2d_tile_t) {
@@ -1234,19 +1269,23 @@ static void lv_draw_arm2d_img_decoded(struct _lv_draw_ctx_t * draw_ctx,
source_center.iX = draw_dsc->pivot.x; source_center.iX = draw_dsc->pivot.x;
source_center.iY = draw_dsc->pivot.y; source_center.iY = draw_dsc->pivot.y;
if((LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED == cf) || if((LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED == cf) ||
(LV_IMG_CF_TRUE_COLOR == cf)) { (LV_IMG_CF_TRUE_COLOR == cf)) {
arm_2d_tile_transform_with_opacity(
__ARM_2D_PREPARE_TRANS_AND_TARGET_REGION(
arm_2d_tile_transform_with_opacity_prepare,
&source_tile, &source_tile,
&target_tile,
&target_region,
source_center, source_center,
ARM_2D_ANGLE((draw_dsc->angle / 10.0f)), ARM_2D_ANGLE((draw_dsc->angle / 10.0f)),
draw_dsc->zoom / 256.0f, draw_dsc->zoom / 256.0f,
(color_int)LV_COLOR_CHROMA_KEY.full, (color_int)LV_COLOR_CHROMA_KEY.full,
blend_dsc.opa); blend_dsc.opa);
arm_2d_tile_transform(
&target_tile,
&target_region,
NULL
);
is_accelerated = true; is_accelerated = true;
} }
else if (LV_IMG_CF_RGB565A8 == cf) { else if (LV_IMG_CF_RGB565A8 == cf) {
@@ -1257,15 +1296,21 @@ static void lv_draw_arm2d_img_decoded(struct _lv_draw_ctx_t * draw_ctx,
mask_tile.tInfo.tColourInfo.chScheme = ARM_2D_COLOUR_GRAY8; mask_tile.tInfo.tColourInfo.chScheme = ARM_2D_COLOUR_GRAY8;
mask_tile.pchBuffer = mask_after_rgb; mask_tile.pchBuffer = mask_after_rgb;
arm_2d_tile_transform_with_src_mask_and_opacity( __ARM_2D_PREPARE_TRANS_AND_TARGET_REGION(
arm_2d_tile_transform_with_src_mask_and_opacity_prepare,
&source_tile, &source_tile,
&mask_tile, &mask_tile,
&target_tile,
&target_region,
source_center, source_center,
ARM_2D_ANGLE((draw_dsc->angle / 10.0f)), ARM_2D_ANGLE((draw_dsc->angle / 10.0f)),
draw_dsc->zoom / 256.0f, draw_dsc->zoom / 256.0f,
blend_dsc.opa); blend_dsc.opa
);
arm_2d_tile_transform(
&target_tile,
&target_region,
NULL
);
is_accelerated = true; is_accelerated = true;
} }
@@ -1280,15 +1325,21 @@ static void lv_draw_arm2d_img_decoded(struct _lv_draw_ctx_t * draw_ctx,
mask_tile.tInfo.tColourInfo.chScheme = ARM_2D_CHANNEL_8in32; mask_tile.tInfo.tColourInfo.chScheme = ARM_2D_CHANNEL_8in32;
mask_tile.pchBuffer += 3; mask_tile.pchBuffer += 3;
arm_2d_tile_transform_with_src_mask_and_opacity( __ARM_2D_PREPARE_TRANS_AND_TARGET_REGION(
arm_2d_tile_transform_with_src_mask_and_opacity_prepare,
&source_tile, &source_tile,
&mask_tile, &mask_tile,
&target_tile,
&target_region,
source_center, source_center,
ARM_2D_ANGLE((draw_dsc->angle / 10.0f)), ARM_2D_ANGLE((draw_dsc->angle / 10.0f)),
draw_dsc->zoom / 256.0f, draw_dsc->zoom / 256.0f,
blend_dsc.opa); blend_dsc.opa
);
arm_2d_tile_transform(
&target_tile,
&target_region,
NULL
);
is_accelerated = true; is_accelerated = true;
} }