Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
4c5fcfa
prepare for v1.3.0-dev
GorgonMeducer Apr 6, 2026
8a4a0de
Update README.md
GorgonMeducer Apr 6, 2026
2e58fe1
Fixes CMakeLists.txt
GorgonMeducer Apr 6, 2026
3083648
Update build.yaml
GorgonMeducer Apr 6, 2026
29096b1
Update ReleaseNote.md
GorgonMeducer Apr 6, 2026
00d03a6
minor update
GorgonMeducer Apr 6, 2026
8890df9
Delete gh-pages.yml
GorgonMeducer Apr 6, 2026
5a87e72
fixes image_box_t
GorgonMeducer Apr 8, 2026
af07f03
minor update
GorgonMeducer Apr 8, 2026
5a26e83
minor update large-lmsk
GorgonMeducer Apr 8, 2026
6abc028
minor update
GorgonMeducer Apr 9, 2026
8f41008
Update main.c
GorgonMeducer Apr 9, 2026
a2ae4ef
__arm_2d_allocate_scratch_memory、__arm_2d_free_scratch_memory配套使用
gzbkey Apr 29, 2026
58f730c
Merge pull request #1 from gzbkey/main
GorgonMeducer May 3, 2026
1684f86
Update arm_qoi_decoder.h
GorgonMeducer May 20, 2026
67c7aa6
Update Makefile
GorgonMeducer May 20, 2026
40b2a62
significantly improve the overall RGB565 performance ( >100%)
GorgonMeducer May 22, 2026
3d1e0a4
improves performance of CCCA8888 to RGB565
GorgonMeducer May 22, 2026
4914312
minor update
GorgonMeducer Jun 15, 2026
e615a7a
Update arm_2d_types.h
GorgonMeducer Jun 16, 2026
6757742
Update __arm_2d_math.h
GorgonMeducer Jun 16, 2026
0f9908c
Update arm_2d_utils.h
GorgonMeducer Jun 16, 2026
3181710
adds missing resources for the demo radars
GorgonMeducer Jun 22, 2026
30df384
fixes the C++ compilation issue
GorgonMeducer Jun 24, 2026
a9e676e
minor update
GorgonMeducer Jun 25, 2026
b9793d5
Update README.md
GorgonMeducer Jun 25, 2026
42aceb4
minor update
GorgonMeducer Jun 25, 2026
14e73ae
Update arm_2d_utils.h
GorgonMeducer Jun 25, 2026
e372b94
Update __arm_2d_loader_common.c
GorgonMeducer Jun 25, 2026
ffb2172
minor update
GorgonMeducer Jun 25, 2026
9335798
minor update
GorgonMeducer Jun 25, 2026
b8ec557
improves CCCN888 and CCCA8888 performance
GorgonMeducer Jun 25, 2026
3572efd
Update arm_2d_cfg.h
GorgonMeducer Jul 1, 2026
01f5151
Merge branch 'ARM-software:main' into main
GorgonMeducer Jul 1, 2026
0bd2bf7
Update build.yaml
GorgonMeducer Jul 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: Build documentation and pack
on:
workflow_dispatch:
push:
branches: [ main, developing ]
branches: [ main, develop ]
pull_request:
branches: [ main, developing ]
branches: [ main, develop ]
release:
types: [published]
jobs:
Expand Down
26 changes: 13 additions & 13 deletions ARM.Arm-2D.pdsc
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@
-->

<components>
<component Cclass="Acceleration" Cgroup="Arm-2D" Csub="Core" Cversion="1.2.6" condition="CMSIS-DSP">
<component Cclass="Acceleration" Cgroup="Arm-2D" Csub="Core" Cversion="1.3.0-dev" condition="CMSIS-DSP">
<description>A 2D image processing library for Cortex-M processors</description>
<files>
<file category="include" name="Library/Include/" />
Expand Down Expand Up @@ -316,7 +316,7 @@

</component>

<component Cclass="Acceleration" Cgroup="Arm-2D" Csub="Alpha-Blending" Cversion="1.2.6" condition="Arm-2D-CORE">
<component Cclass="Acceleration" Cgroup="Arm-2D" Csub="Alpha-Blending" Cversion="1.3.0-dev" condition="Arm-2D-CORE">
<description>Alpha-blending related APIs for Arm-2D</description>
<files>
<file category="sourceC" name="Library/Source/arm_2d_alpha_blending.c" />
Expand All @@ -328,7 +328,7 @@
</RTE_Components_h>
</component>

<component Cclass="Acceleration" Cgroup="Arm-2D" Csub="Transform" Cversion="1.2.6" condition="Arm-2D-CORE">
<component Cclass="Acceleration" Cgroup="Arm-2D" Csub="Transform" Cversion="1.3.0-dev" condition="Arm-2D-CORE">
<description>Transform (rotation and zooming)</description>
<files>
<file category="sourceC" name="Library/Source/arm_2d_transform.c" condition="CMSIS-DSP"/>
Expand All @@ -340,7 +340,7 @@
</RTE_Components_h>
</component>

<component Cclass="Acceleration" Cgroup="Arm-2D" Csub="Filter" Cversion="1.2.6" condition="Arm-2D-CORE">
<component Cclass="Acceleration" Cgroup="Arm-2D" Csub="Filter" Cversion="1.3.0-dev" condition="Arm-2D-CORE">
<description>Filters (Blur etc)</description>
<files>
<file category="sourceC" name="Library/Source/arm_2d_filter.c"/>
Expand All @@ -352,7 +352,7 @@
</RTE_Components_h>
</component>

<component Cclass="Acceleration" Cgroup="Arm-2D Helper" Csub="PFB" Cversion="3.2.9" condition="Arm-2D-CORE">
<component Cclass="Acceleration" Cgroup="Arm-2D Helper" Csub="PFB" Cversion="3.3.0" condition="Arm-2D-CORE">
<description>Helper services for LCD adaptor(s), e.g. Generic Partial Framebuffer, Scene Player etc.</description>
<files>
<file category="include" name="Helper/Include/" />
Expand Down Expand Up @@ -454,11 +454,11 @@
</RTE_Components_h>
</component>

<component Cclass="Acceleration" Cgroup="Arm-2D Helper" Csub="Display Adapter" Cversion="4.4.3" condition="Arm-2D-Displayer-Adapter" maxInstances="8">
<component Cclass="Acceleration" Cgroup="Arm-2D Helper" Csub="Display Adapter" Cversion="4.4.4" condition="Arm-2D-Displayer-Adapter" maxInstances="8">
<description>The Display Adapter.</description>
<files>
<file category="sourceC" name="Helper/template/arm_2d_disp_adapter.c" attr="config" version="4.4.3" />
<file category="header" name="Helper/template/arm_2d_disp_adapter.h" attr="config" version="4.4.3" />
<file category="sourceC" name="Helper/template/arm_2d_disp_adapter.c" attr="config" version="4.4.4" />
<file category="header" name="Helper/template/arm_2d_disp_adapter.h" attr="config" version="4.4.4" />
</files>
<RTE_Components_h>
#define RTE_Acceleration_Arm_2D_Helper_Disp_Adapter%Instance%
Expand Down Expand Up @@ -492,7 +492,7 @@
</RTE_Components_h>
</component>

<component Cclass="Acceleration" Cgroup="Arm-2D Extras" Csub="Loaders" Cversion="5.6.11" condition="Arm-2D-Loaders">
<component Cclass="Acceleration" Cgroup="Arm-2D Extras" Csub="Loaders" Cversion="5.6.13" condition="Arm-2D-Loaders">
<description>A helper service for loading various resource, e.g. loading baseline jpg files using TJpgDec, ZJpgDec, loading Lossless Compressed images (*.QOI) and loading font files using FreeType etc.</description>
<files>
<file category="include" name="examples/common/loader/" />
Expand Down Expand Up @@ -556,7 +556,7 @@
</Pre_Include_Global_h>
</component>

<component Cclass="Acceleration" Cgroup="Arm-2D Extras" Csub="Controls" Cversion="2.16.2" condition="Arm-2D-Controls">
<component Cclass="Acceleration" Cgroup="Arm-2D Extras" Csub="Controls" Cversion="2.16.3" condition="Arm-2D-Controls">
<description>A set of example controls, e.g. round-corner-box, spinning-wheels etc</description>
<files>
<!-- example control source files -->
Expand Down Expand Up @@ -1220,11 +1220,11 @@
</RTE_Components_h>
</component>

<component Cclass="Acceleration" Cgroup="Arm-2D Render Test" Csub="Large LMSK" Cversion="1.4.1" condition="Arm-2D-Render-Test">
<component Cclass="Acceleration" Cgroup="Arm-2D Render Test" Csub="Large LMSK" Cversion="1.5.2" condition="Arm-2D-Render-Test">
<description>A demo for the tile filling rendering test.</description>
<files>
<file category="sourceC" name="examples/render_tests/arm_2d_scene_large_lmsk.c" attr="config" version="1.4.1" />
<file category="header" name="examples/render_tests/arm_2d_scene_large_lmsk.h" attr="config" version="1.4.1" />
<file category="sourceC" name="examples/render_tests/arm_2d_scene_large_lmsk.c" attr="config" version="1.5.2" />
<file category="header" name="examples/render_tests/arm_2d_scene_large_lmsk.h" attr="config" version="1.5.2" />

<file category="sourceC" name="examples/render_tests/bad_apple.c" attr="config" version="1.1.0" />
</files>
Expand Down
80 changes: 50 additions & 30 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
cmake_minimum_required(VERSION 3.14)
project(ARM2D)

option(ARM2D_HOST "Build for host" OFF)
option(ARM2D_HELPER "Build with helper support" OFF)
option(ARM2D_HOST "Build for host (simulation mode)" OFF)
option(ARM2D_HELPER "Build with helper services (PFB, Scene, List, etc.)" OFF)
option(ARM2D_CMSIS_RTOS2 "Build with CMSIS-RTOS2 helper support" OFF)
option(ARM2D_RT_THREAD "Build with RT-Thread helper support" OFF)
option(ARM2D_LCD_PRINTF "Build with LCD printf support" OFF)
option(ARM2D_CONTROLS "Build with controls" OFF)
option(ARM2D_LCD_PRINTF "Build with LCD printf and font support" OFF)
option(ARM2D_LOADERS "Build with image/font loaders (TJpgDec, QOI, FreeType, LMSK, zhRGB565)" OFF)
option(ARM2D_CONTROLS "Build with UI controls library" OFF)
option(ARM2D_BENCHMARK_GENERIC "Build with generic benchmark support" OFF)
option(ARM2D_BENCHMARK_WATCHPANEL "Build with watchpanel benchmark support" OFF)
option(ARM2D_BENCHMARK_WATCHPANEL "Build with watch-panel benchmark support" OFF)

set(CMSISCORE "" CACHE STRING "Path to CMSIS Core")

add_library(ARM2D STATIC)
Expand All @@ -26,10 +28,9 @@ else()
target_include_directories(ARM2D PUBLIC ${CMSISCORE}/Include)
target_compile_options(ARM2D PRIVATE -Wno-nonnull-compare -Wno-unused-value)
target_compile_options(ARM2D PUBLIC -fms-extensions)

endif()


# Core feature flags required for basic Arm-2D operations
target_compile_options(ARM2D PUBLIC
-DRTE_Acceleration_Arm_2D
-DRTE_Acceleration_Arm_2D_Alpha_Blending
Expand All @@ -43,11 +44,12 @@ if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
target_compile_options(ARM2D PRIVATE -Wno-maybe-uninitialized)
endif()

# Core library source files
target_sources(ARM2D PRIVATE
Library/Source/arm_2d.c
Library/Source/arm_2d_async.c
Library/Source/arm_2d_draw.c
Library/Source/arm_2d_conversion.c
Library/Source/arm_2d_async.c
Library/Source/arm_2d_draw.c
Library/Source/arm_2d_conversion.c
Library/Source/arm_2d_helium.c
Library/Source/arm_2d_alpha_blending.c
Library/Source/arm_2d_transform.c
Expand All @@ -57,8 +59,7 @@ target_sources(ARM2D PRIVATE

if (ARM2D_HELPER)
target_include_directories(ARM2D PUBLIC
Helper/Include/
Helper/built_in/)
Helper/Include/)

target_sources(ARM2D PRIVATE
Helper/Source/arm_2d_helper.c
Expand All @@ -68,14 +69,19 @@ if (ARM2D_HELPER)
Helper/Source/arm_2d_helper_shape.c
Helper/Source/arm_2d_helper_control.c

Helper/Source/arm_2d_asset_white_dot_small.c
# Built-in assets
Helper/Source/arm_2d_asset_white_dot.c
Helper/Source/arm_2d_asset_cmsis_logo.c
Helper/Source/arm_2d_asset_circle_small.c

Helper/built_in/arm_2d_helper_built_in.c
Helper/built_in/busy_wheel.c
Helper/built_in/console_box.c

# Built-in controls
Helper/Source/arm_2d_helper_built_in.c
Helper/Source/busy_wheel.c
Helper/Source/console_box.c

# Example opcodes (part of Helper/PFB component in PDSC)
examples/common/opcodes/arm_2d_user_opcode_draw_circle.c
examples/common/opcodes/arm_2d_user_opcode_draw_line.c
)
target_compile_options(ARM2D PUBLIC
-DRTE_Acceleration_Arm_2D_Helper_PFB
Expand All @@ -101,15 +107,18 @@ if (ARM2D_LCD_PRINTF)

target_sources(ARM2D PRIVATE
Helper/Source/arm_2d_helper_font.c
Helper/Source/GLCD_Fonts.c
Helper/Source/arm_2d_asset_glcd_fonts.c
)
target_compile_options(ARM2D PUBLIC
-DRTE_Acceleration_Arm_2D_Extra_LCD_printf__
-DRTE_Acceleration_Arm_2D_Extra_LCD_printf
)
endif()

if (ARM2D_TJPGD_LOADER)
target_include_directories(ARM2D PUBLIC examples/common/loader/tjpgd_loader)
if (ARM2D_LOADERS)
target_include_directories(ARM2D PUBLIC
examples/common/loader/
examples/common/loader/freetype_loader/freetype/include/
)

target_sources(ARM2D PRIVATE
examples/common/opcodes/arm_2d_user_opcode_draw_circle.c
Expand All @@ -122,6 +131,15 @@ if (ARM2D_TJPGD_LOADER)
examples/common/loader/qoi_loader/qoi_loader.c
examples/common/loader/qoi_loader/qoi_decoder/arm_qoi_decoder.c

# Added missing LMSK loader
examples/common/loader/lmsk_loader/lmsk_loader.c
examples/common/loader/lmsk_loader/lmsk/decoder/arm_lmsk_decoder.c

# Added missing zhRGB565 loader
examples/common/loader/zhrgb565_loader/zhrgb565_loader.c
examples/common/loader/zhrgb565_loader/zhrgb565/zhRGB565_Decoder/zhRGB565_Decoder.c

# FreeType font loader
examples/common/loader/freetype_loader/freetype_loader.c
examples/common/loader/freetype_loader/freetype/src/base/ftsystem.c
examples/common/loader/freetype_loader/freetype/src/base/ftinit.c
Expand All @@ -137,11 +155,13 @@ if (ARM2D_TJPGD_LOADER)
examples/common/loader/freetype_loader/freetype/src/psaux/psaux.c
)
target_compile_options(ARM2D PUBLIC
-DRTE_Acceleration_Arm_2D_Extra_Loader
-DRTE_Acceleration_Arm_2D_Extra_TJpgDec_Loader
-DRTE_Acceleration_Arm_2D_Extra_ZJpgDec_Loader
-DRTE_Acceleration_Arm_2D_Extra_JPEG_Loader
-DRTE_Acceleration_Arm_2D_Extra_Loader
-DRTE_Acceleration_Arm_2D_Extra_QOI_Loader
-DRTE_Acceleration_Arm_2D_Extra_LMSK_Loader
-DRTE_Acceleration_Arm_2D_Extra_zhRGB565_Loader
-DRTE_Acceleration_Arm_2D_Extra_FreeType_Loader
)
endif()
Expand Down Expand Up @@ -177,6 +197,7 @@ if (ARM2D_CONTROLS)
examples/common/controls/ring_indication.c
examples/common/controls/waveform_view.c

# Control assets (removed duplicates of alarm_clock fonts)
examples/common/asset/arm_2d_asset_WhiteDotSmall.c
examples/common/asset/arm_2d_asset_WhiteDotMiddle.c
examples/common/asset/arm_2d_asset_WhiteDotBig.c
Expand Down Expand Up @@ -222,8 +243,6 @@ if (ARM2D_CONTROLS)
examples/common/asset/arm_2d_asset_HallowOutCircleMask.c
examples/common/asset/arm_2d_asset_Fire8x4.c
examples/common/asset/arm_2d_asset_DigitsFont.c
examples/common/asset/arm_2d_asset_alarm_clock_font32.c
examples/common/asset/arm_2d_asset_alarm_clock_font64.c
examples/common/asset/arm_2d_asset_liberalsans_regular_ascii_font14.c
examples/common/asset/arm_2d_asset_liberalsans_regular_ascii_font32.c
examples/common/asset/arm_2d_asset_liberalsans_regular_ascii_font64.c
Expand Down Expand Up @@ -262,7 +281,6 @@ if (ARM2D_CONTROLS)
examples/common/asset/arm_2d_asset_icon_smartmeter.c
examples/common/asset/arm_2d_asset_icon_visual_sensor.c
examples/common/asset/arm_2d_asset_icon_wearables.c

)
target_compile_options(ARM2D PUBLIC
-DRTE_Acceleration_Arm_2D_Extra_Controls
Expand All @@ -271,9 +289,10 @@ endif()

if (ARM2D_BENCHMARK_GENERIC)
target_include_directories(ARM2D PUBLIC examples/common/benchmark/)
target_sources(ARM2D PRIVATE examples/common/benchmark/benchmark_generic.c
target_sources(ARM2D PRIVATE
examples/common/benchmark/benchmark_generic.c
examples/common/benchmark/arm_2d_scene_benchmark_generic.c
examples/common/benchmark/arm_2d_scene_benchmark_generic_cover.c
examples/common/benchmark/arm_2d_scene_benchmark_generic_cover.c
)
target_compile_options(ARM2D PUBLIC
-DRTE_Acceleration_Arm_2D_Extra_Benchmark
Expand All @@ -283,14 +302,15 @@ endif()

if (ARM2D_BENCHMARK_WATCHPANEL)
target_include_directories(ARM2D PUBLIC examples/common/benchmark/)
target_sources(ARM2D PRIVATE examples/common/benchmark/benchmark_watch_panel.c
target_sources(ARM2D PRIVATE
examples/common/benchmark/benchmark_watch_panel.c
examples/common/benchmark/arm_2d_scene_benchmark_watch_panel.c
examples/common/benchmark/arm_2d_scene_benchmark_watch_panel_cover.c
examples/common/benchmark/arm_2d_scene_benchmark_watch_panel_cover.c
)
target_compile_options(ARM2D PUBLIC
-DRTE_Acceleration_Arm_2D_Extra_Benchmark
-DRTE_Acceleration_Arm_2D_Extra_Benchmark_Watch_Panel
)
endif()

target_include_directories(ARM2D PUBLIC Library/Include/)
target_include_directories(ARM2D PUBLIC Library/Include/)
6 changes: 6 additions & 0 deletions Helper/Include/arm_2d_helper.h
Original file line number Diff line number Diff line change
Expand Up @@ -252,12 +252,12 @@
uint16_t hwFrameIndex; /*!< the frame index used at runtime */
} arm_2d_helper_film_t;

struct __arm_2d_fifo_reader_pointer {

Check warning on line 255 in Helper/Include/arm_2d_helper.h

View workflow job for this annotation

GitHub Actions / Generate pack

Compound __arm_2d_fifo_reader_pointer is not documented.
uint16_t hwPointer;
uint16_t hwDataAvailable;
};

typedef struct arm_2d_byte_fifo_t {

Check warning on line 260 in Helper/Include/arm_2d_helper.h

View workflow job for this annotation

GitHub Actions / Generate pack

Compound arm_2d_byte_fifo_t is not documented.
ARM_PROTECTED (
uint8_t *pchBuffer;
uint16_t hwSize;
Expand Down Expand Up @@ -328,6 +328,12 @@
ARM_NONNULL(1)
int64_t __arm_2d_helper_time_elapsed(int64_t *plTimestamp);

/*!
* \brief get the system frequency
*/
extern
uint32_t arm_2d_helper_get_system_frequency(void);

/*!
* \brief set an alarm with given period and check the status
*
Expand Down
9 changes: 5 additions & 4 deletions Helper/Include/arm_2d_helper_list.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@
* Title: #include "arm_2d_helper_list.h"
* Description: Public header file for list core related services
*
* $Date: 21 Oct 2025
* $Revision: V.2.4.2
* $Date: 24 June 2026
* $Revision: V.2.4.3
*
* Target Processor: Cortex-M cores
* -------------------------------------------------------------------- */
Expand Down Expand Up @@ -201,7 +201,7 @@ typedef struct __arm_2d_list_work_area_t {
* \param[in] iOffset the offset in the list core
* \return __arm_2d_list_core_target_area_t* the working area for a target list core item
*/
typedef const struct arm_2d_i_list_region_calculator_t {
struct __arm_2d_i_list_region_calculator_t {
__arm_2d_list_work_area_t *(*fnCalculator)(
__arm_2d_list_core_t *ptThis,
__arm_2d_list_item_iterator *fnIterator,
Expand All @@ -210,7 +210,8 @@ typedef const struct arm_2d_i_list_region_calculator_t {
int16_t (*fnSelectionCompensation)(__arm_2d_list_core_t *ptThis,
arm_2d_list_item_t *ptItem);
arm_2d_list_dir_t tDirection;
} arm_2d_i_list_region_calculator_t;
};
typedef const struct __arm_2d_i_list_region_calculator_t arm_2d_i_list_region_calculator_t;

/*!
* \brief list core configuration structure
Expand Down
9 changes: 5 additions & 4 deletions Helper/Include/arm_2d_helper_scene.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@
* Title: #include "arm_2d_helper_scene.h"
* Description: Public header file for the scene service
*
* $Date: 09. September 2025
* $Revision: V.2.0.0
* $Date: 24 June 2026
* $Revision: V.2.1.0
*
* Target Processor: Cortex-M cores
* -------------------------------------------------------------------- */
Expand Down Expand Up @@ -233,13 +233,14 @@ typedef struct arm_2d_scene_player_t arm_2d_scene_player_t;
/*!
* \brief scene switching mode descriptor
*/
typedef const struct {
struct __arm_2d_scene_switch_mode_t {
uint8_t chEffects; //!< switching effects
arm_2d_helper_draw_handler_t *fnSwitchDrawer; //!< switching algorithm

void (*fnOnRequestChangeSwitchingStatus)(arm_2d_scene_player_t *ptThis); //!< on request change-switch-status event handler
void (*fnOnSwitchComplete) (arm_2d_scene_player_t *ptThis); //!< on request switch complete event handler
} arm_2d_scene_switch_mode_t;
};
typedef const struct __arm_2d_scene_switch_mode_t arm_2d_scene_switch_mode_t;

/*!
* \brief a class for describing scenes which are the combination of a
Expand Down
12 changes: 11 additions & 1 deletion Helper/Source/arm_2d_helper.c
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ void arm_2d_helper_init(void)

/* NOTE: for non-arm architecture, you have to implement those functions.
*/
#if __IS_SUPPORTED_ARM_ARCH__
#if __IS_SUPPORTED_ARM_ARCH_M__
__WEAK
int64_t arm_2d_helper_get_system_timestamp(void)
{
Expand Down Expand Up @@ -206,6 +206,16 @@ int64_t arm_2d_helper_convert_ms_to_ticks(int64_t lMS)
return lResult ? lResult : 1;
}

__WEAK
uint32_t arm_2d_helper_get_system_frequency(void)
{
#if __IS_SUPPORTED_ARM_ARCH_M__
extern uint32_t SystemCoreClock;
return SystemCoreClock;
#else
return 0;
#endif
}

ARM_NONNULL(2)
bool __arm_2d_helper_is_time_out(int64_t lPeriod, int64_t *plTimestamp)
Expand Down
Loading
Loading