添加bsp_init,sys_api段

This commit is contained in:
2025-07-06 02:53:08 +08:00
parent fed557e2e1
commit 4922fdfa46
4 changed files with 136 additions and 136 deletions

View File

@@ -16,8 +16,8 @@ typedef struct{
// ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD>ʼ<EFBFBD><CABC> // ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD>ʼ<EFBFBD><CABC>
#define extern_init(name_,init_)\ #define extern_init(name_,init_)\
const char __init_##name_[] __attribute__((section("name"))) = #name_;\ const char __init_##name_[] __attribute__((section(".name"))) = #name_;\
__attribute__((used)) const init_call_fun __bsp_init_##name_ __attribute__((section("bsp_init")))=\ __attribute__((used,section(".bsp_init"))) const init_call_fun __bsp_init_##name_ =\
{\ {\
.name=__init_##name_,\ .name=__init_##name_,\
.init=init_,\ .init=init_,\

View File

@@ -38,11 +38,11 @@ api_table_struct g_api_table;
static int api_table_init(void) static int api_table_init(void)
{ {
extern const unsigned int Load$$sys_api$$Base; extern const unsigned int sys_api_start;
extern const unsigned int Load$$sys_api$$Limit; extern const unsigned int sys_api_end;
api_item_struct *start=(api_item_struct *)&Load$$sys_api$$Base; api_item_struct *start=(api_item_struct *)&sys_api_start;
api_item_struct *end=(api_item_struct *)&Load$$sys_api$$Limit; api_item_struct *end=(api_item_struct *)&sys_api_end;
if(g_api_table.fun_table==0) if(g_api_table.fun_table==0)
{ {

View File

@@ -20,7 +20,7 @@ typedef struct
#define api_item(fun_,index_) \ #define api_item(fun_,index_) \
__attribute__((used)) static const api_item_struct api_##index_ __attribute__((section("sys_api")))=\ __attribute__((used,section(".sys_api"))) static const api_item_struct api_##index_ =\
{.fun=fun_,.index=index_} {.fun=fun_,.index=index_}

View File

@@ -126,7 +126,7 @@ SECTIONS
.sys_api :{ .sys_api :{
. = ALIGN(4); . = ALIGN(4);
sys_api_start = .; sys_api_start = .;
*(.sys_api) KEEP(*(.sys_api))
sys_api_end = .; sys_api_end = .;
. = ALIGN(4); . = ALIGN(4);
} >FLASH } >FLASH
@@ -134,7 +134,7 @@ SECTIONS
.bsp_init :{ .bsp_init :{
. = ALIGN(4); . = ALIGN(4);
bsp_init_start = .; bsp_init_start = .;
*(bsp_init) KEEP(*(.bsp_init))
bsp_init_end = .; bsp_init_end = .;
. = ALIGN(4); . = ALIGN(4);
} >FLASH } >FLASH