Merge branch 'dev_ck_v2.1_new_feature_1113' into 'dev_ck_v2.1'

update rtos code New Feature#1113

See merge request ucp/driver/ucp4008_platform_spu!57
This commit is contained in:
Xianfeng Du 2023-11-15 02:02:46 +00:00
commit 7dafcd3d11
63 changed files with 1484 additions and 3156 deletions

View File

@ -1,40 +1,90 @@
#include "ucps2-intrin.h"
#include "hwque.h"
#include "osp_io.h"
void hwq_debug(void * addr , uint32_t v);
#define hwq_do_write(a,v) __ucps2_store_ext_mem((void *)a, (uint32_t)v, f_W)
#define hwq_do_read(ptr) __ucps2_load_ext_mem_v((char*)ptr, f_W)
#define hwq_do_write(a,v) __ucps2_store_ext_mem((void *)(a), (uint32_t)v, f_W)
#define hwq_do_read(ptr) __ucps2_load_ext_mem_v((char*)(ptr), f_W)
#define CPSM_QUE_BASE 0x04d50000
#define JSSM_QUE_BASE 0x05f70000
#define CPSM_MEM_BASE 0x09300000ul
#define JS_MEM_BASE 0x04d80000ul
#define dire_in 0
#define dire_out 1
int que_map_depth_array[16] = {
0x04d51014,0x04d51018,0x04d5101c,0x04d51020,
0x04d51024,0x04d51028,0x04d5102c,0x04d51030,
0x05f71014,0x05f71018,0x05f7101c,0x05f71020,
0x05f71024,0x05f71028,0x05f7102c,0x05f71030
};
int que_map_start_addr_array[16] ={
0x09300000,0x09303F00,0x09307E00,0x0930BD00,0x0930FC00,0x09313B00,0x09317A00,0x931B900,
0x04d80000,0x04d83F00,0x04d87E00,0x04D8BD00,0x04D8FC00,0x04D93B00,0x04D97A00,0x04D9B900
};
//#define HWQUE_HEADER_ADDR (0x931fc00 - 0x400)
extern int int_default_val;
hwq_debug_t *q_debug_info;
int q_debug_enable = 0;
uint32_t q_debug_addr = 0;
unsigned int out_failed_cnt;
unsigned int in_failed_cnt;
unsigned int out_success_cnt;
unsigned int in_success_cnt;
unsigned int cur_que_depth;
unsigned int out_failed_cnt[QUE_MAX_NR] = {0};
unsigned int in_failed_cnt[QUE_MAX_NR] = {0};
unsigned int out_success_cnt[QUE_MAX_NR] = {0};
unsigned int in_success_cnt[QUE_MAX_NR] = {0};
//unsigned int cur_que_depth[QUE_MAX_NR] = {0};
unsigned int bind_cpuid;
int g_coreid = 0;
const uint32_t com_header_addr = (0x931fc00 -0x400);
mpu_shm_obj *shm_head = NULL;
void hw_que_panic(int queid,int addr,int mode)
{
int g_coreid = 0;
if(que_map_depth_array[queid] != addr)
{
if(mode == dire_in)
{
hwq_debug(&(q_debug_info->per_hwq[queid].in_que_depth_addr), addr);
}
else
{
hwq_debug(&(q_debug_info->per_hwq[queid].out_que_depth_addr), addr);
}
__ucps2_IntEn(f_Disable);
while(1);
}
}
int smart_hq_init(int cpuid)
{
shm_head = (mpu_shm_obj*)com_header_addr;
shm_head = (mpu_shm_obj*)com_header_addr;
g_coreid = cpuid;
return 0;
if((cpuid > 12)||(cpuid < 0))
{
return -1;
}
g_coreid = cpuid;
return 0;
}
/************************************
@ -43,41 +93,138 @@ int smart_hq_init(int cpuid)
int smart_get_hq_vector(int cpuid,int queid)
{
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
if((cpuid >= 0)&&(cpuid < 12))
{
return que_ptr->ape_vector_id;
}
else if(cpuid == 12)
{
return que_ptr->arm_vector_id;
}
return -1;
}
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
if((cpuid >= 0)&&(cpuid < 12))
{
return que_ptr->ape_vector_id;
}
else if(cpuid == 12)
{
return que_ptr->arm_vector_id;
}
return -1;
}
/***************
smart_intr_in_que
queid
val
使1 :
使2 使
******************/
int smart_intr_in_que(int queid,uint32_t val)
{
uint32_t tp_val;
int ret;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
hw_que_panic(queid,que_ptr->hw_depth_reg,dire_in);
tp_val = hwq_do_read(que_ptr->hw_depth_reg);
if(((tp_val >> 16)&0xffff) > B_128_16BLCOKS)
{
hwq_do_write(que_ptr->hw_start_addr,val);
++in_success_cnt[queid];
ret = 0;
hwq_debug(&(q_debug_info->per_hwq[queid].in_success_cnt), in_success_cnt[queid]);
}
else
{
++in_failed_cnt[queid];
ret = -1;
hwq_debug(&(q_debug_info->per_hwq[queid].in_failed_cnt), in_failed_cnt[queid]);
}
return ret;
}
/***************
smart_in_que
queid
val
使 :
使 :使
******************/
int smart_in_que(int queid,uint32_t val)
{
uint32_t tp_val;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
tp_val = *(volatile uint32_t*)(que_ptr->hw_depth_reg);
if(((tp_val >> 16)&0xffff) > B_128_16BLCOKS)
{
*(volatile uint32_t*)(que_ptr->hw_start_addr) = val;
hwq_debug(&(q_debug_info->per_hwq[queid].in_success_cnt), ++in_success_cnt);
hwq_debug(&(q_debug_info->per_hwq[queid].cur_que_depth), *(volatile uint32_t*)que_ptr->hw_depth_reg);
return 0;
}
hwq_debug(&(q_debug_info->per_hwq[queid].in_failed_cnt), ++in_failed_cnt);
return -1;
int ret = 0;
int int_state = __ucps2_readIntEn();
if(int_state == 1)
{
__ucps2_IntEn(f_Disable);
ret = smart_intr_in_que(queid,val);
__ucps2_IntEn(f_Enable);
}
else
{
ret = smart_intr_in_que(queid,val);
}
return ret;
}
/*********************************
smart_intr_out_que
queid
val
使
********************************/
int smart_intr_out_que(int queid,uint32_t *val)
{
uint32_t tp_val;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
if(hwq_do_read(&que_ptr->cpuid) != g_coreid)
{
return -EMATCH;
}
hw_que_panic(queid,que_ptr->hw_depth_reg,dire_out);
tp_val = hwq_do_read(que_ptr->hw_depth_reg);
if((tp_val&0xffff) != 0)
{
++out_success_cnt[queid];
hwq_debug(&(q_debug_info->per_hwq[queid].out_success_cnt), out_success_cnt[queid]);
*val = hwq_do_read(que_ptr->hw_start_addr);
return 0;
}
++out_failed_cnt[queid];
hwq_debug(&(q_debug_info->per_hwq[queid].out_failed_cnt), out_failed_cnt[queid]);
return -EQUEEMPTY;
}
/**********************
smart_out_que
queid
val
使 : 使
*********************/
int smart_out_que(int queid,uint32_t *val)
{
int ret = 0;
int int_state = __ucps2_readIntEn();
if(int_state == 1)
{
__ucps2_IntEn(f_Disable);
ret = smart_intr_out_que(queid,val);
__ucps2_IntEn(f_Enable);
}
else
{
ret = smart_intr_out_que(queid,val);
}
return ret;
}
/*********************
smart_que_is_full
queid
@ -87,144 +234,138 @@ int smart_in_que(int queid,uint32_t val)
int smart_que_is_full(int queid)
{
uint32_t tp_val;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
tp_val = *(volatile uint32_t*)(que_ptr->hw_depth_reg);
if(((tp_val >> 16)&0xffff) <= B_128_16BLCOKS)
{
return 1; // que is full
}
return 0; // que is not full
}
/*********************
smart_out_que
queid
idx
*********************/
int smart_out_que(int queid,uint32_t *val)
{
uint32_t tp_val;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
if(que_ptr->cpuid != g_coreid)
{
return -EMATCH;
}
tp_val = *(volatile uint32_t*)(que_ptr->hw_depth_reg);
hwq_debug(&(q_debug_info->per_hwq[queid].cur_que_depth), tp_val);
if((tp_val&0xffff) != 0)
{
hwq_debug(&(q_debug_info->per_hwq[queid].out_success_cnt), ++out_success_cnt);
*val = (*(volatile uint32_t*)(que_ptr->hw_start_addr));
return 0;
}
hwq_debug(&(q_debug_info->per_hwq[queid].out_failed_cnt), ++out_failed_cnt);
return -EQUEEMPTY;
uint32_t tp_val;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
tp_val = hwq_do_read(que_ptr->hw_depth_reg);
if(((tp_val >> 16)&0xffff) == B_128_16BLCOKS)
{
return 1; // que is full
}
return 0; // que is not full
}
int smart_que_is_empty(int queid)
{
uint32_t tp_val;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
tp_val = *(volatile uint32_t*)(que_ptr->hw_depth_reg);
if((tp_val&0xffff) == 0)
{
return 1; // que is empty true
}
else
{
return 0; // que is not empty FALSE
}
uint32_t tp_val;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
tp_val = hwq_do_read(que_ptr->hw_depth_reg);
if((tp_val&0xffff) == 0)
{
return 1; // que is empty true
}
else
{
return 0; // que is not empty FALSE
}
}
int smart_get_que_info(int queid,int *dep,int *width,int *used,int *cpuid)
{
uint32_t tmp;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
if(queid >= 0 && queid < 8)
{
*dep = shm_head->shm_type_s[CPSM_SM].que_depths - B_128_16BLCOKS;
*width = shm_head->shm_type_s[CPSM_SM].width_bits;
}else if(queid >=8 && queid < 16)
{
*dep = shm_head->shm_type_s[JSSM_SM].que_depths - B_128_16BLCOKS;
*width = shm_head->shm_type_s[JSSM_SM].width_bits;
}
*cpuid = que_ptr->cpuid;
tmp = *(volatile uint32_t*)(que_ptr->hw_depth_reg);
*used = (tmp&0xffff);
uint32_t tmp;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
if(queid >= 0 && queid < 8)
{
*dep = shm_head->shm_type_s[CPSM_SM].que_depths - B_128_16BLCOKS;
*width = shm_head->shm_type_s[CPSM_SM].width_bits;
}else if(queid >=8 && queid < 16)
{
*dep = shm_head->shm_type_s[JSSM_SM].que_depths - B_128_16BLCOKS;
*width = shm_head->shm_type_s[JSSM_SM].width_bits;
}
*cpuid = que_ptr->cpuid;
tmp = *(volatile uint32_t*)(que_ptr->hw_depth_reg);
*used = (tmp&0xffff);
return 0;
return 0;
}
void smart_enable_q_nempty(int queid)
static int test_bit(void *s,unsigned int index)
{
volatile uint32_t *empty_reg;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
empty_reg = (volatile uint32_t*)(que_ptr->hw_base_reg+0x103c);
if(queid < 8)
{
*empty_reg |= 1<< (queid+8);
}
else if((queid >= 8)&&(queid < 16))
{
*empty_reg |= 1<< ((queid -8)+8);
}
else if((queid >= 16)&&(queid < 24))
{
*empty_reg |= 1<< ((queid -16)+8);
}
else if((queid >= 24)&&(queid < 32))
{
*empty_reg |= 1<< ((queid - 24)+8);
}
unsigned char *f_bit = s;
f_bit += index >>3;
return ((*f_bit&(1 <<((index%8)))) != 0);
}
int smart_enable_q_nempty(int queid)
{
volatile uint32_t *empty_reg;
int tmp_val = 0;
int ret = 0;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
empty_reg = (volatile uint32_t*)(que_ptr->hw_base_reg+0x103c);
if(queid < 8)
{
*empty_reg |= 1<< (queid+8);
tmp_val = *empty_reg;
__ucps2_synch(0);
ret = !(test_bit(&tmp_val,(queid+8)) != 0);
}
else if((queid >= 8)&&(queid < 16))
{
*empty_reg |= 1<< ((queid -8)+8);
tmp_val = *empty_reg;
__ucps2_synch(0);
ret = !(test_bit(&tmp_val,((queid -8)+8)) != 0);
}
else if((queid >= 16)&&(queid < 24))
{
*empty_reg |= 1<< ((queid -16)+8);
tmp_val = *empty_reg;
__ucps2_synch(0);
ret = !(test_bit(&tmp_val,((queid -16)+8)) != 0);
}
else if((queid >= 24)&&(queid < 32))
{
*empty_reg |= 1<< ((queid - 24)+8);
tmp_val = *empty_reg;
__ucps2_synch(0);
ret = !(test_bit(&tmp_val,((queid -24)+8)) != 0);
}
return ret;
}
void smart_disable_q_nempty(int queid)
{
volatile uint32_t *empty_reg;
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
empty_reg = (volatile uint32_t*)(que_ptr->hw_base_reg+0x103c);
if(queid < 8)
{
*empty_reg &= ~(1<< (queid+8));
}
else if((queid >= 8)&&(queid < 16))
{
*empty_reg &= ~(1<< ((queid -8)+8));
}else if((queid >= 16)&&(queid < 24))
{
*empty_reg &= ~(1<< ((queid -16)+8));
}else if((queid >= 24)&&(queid < 32))
{
*empty_reg &= ~(1<< ((queid -24)+8));
}
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
empty_reg = (volatile uint32_t*)(que_ptr->hw_base_reg+0x103c);
if(queid < 8)
{
*empty_reg &= ~(1<< (queid+8));
}
else if((queid >= 8)&&(queid < 16))
{
*empty_reg &= ~(1<< ((queid -8)+8));
}else if((queid >= 16)&&(queid < 24))
{
*empty_reg &= ~(1<< ((queid -16)+8));
}else if((queid >= 24)&&(queid < 32))
{
*empty_reg &= ~(1<< ((queid -24)+8));
}
}
int smart_que_bind(int cpuid,int queid)
{
if((queid >15)||(queid < 0))
{
return -EINVAL;
}
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
hwq_debug(&(q_debug_info->per_hwq[queid].bind_cpuid), cpuid);
if(que_ptr->cpuid == -1)
{
que_ptr->cpuid = cpuid;
return 0;
}
else
{
return -1;
}
if((queid >15)||(queid < 0))
{
return -EINVAL;
}
hw_reg_desc_t * que_ptr = ((hw_reg_desc_t*)shm_head->v_map_queid[queid]);
if(que_ptr->cpuid == -1)
{
que_ptr->cpuid = cpuid;
return 0;
}
else
{
return -1;
}
}
/*
@ -232,48 +373,48 @@ int smart_que_bind(int cpuid,int queid)
*/
int smart_hq_debug_init(uint32_t debug_base_addr, uint32_t len_bytes)
{
if(debug_base_addr <= 0x10000000)
{
return -1;
}
if (len_bytes < 192)
{
return -2;
}
if(debug_base_addr <= 0x10000000)
{
return -1;
}
if (len_bytes < 384)
{
return -2;
}
q_debug_enable = 1;
q_debug_addr = debug_base_addr;
q_debug_info = (hwq_debug_t *)q_debug_addr;
q_debug_enable = 1;
q_debug_addr = debug_base_addr;
q_debug_info = (hwq_debug_t *)q_debug_addr;
return 0;
return 0;
}
int smart_get_inque_ok_cnt(int queid)
{
return q_debug_info->per_hwq[queid].in_success_cnt;
return in_success_cnt[queid];
}
int smart_get_inque_failed_cnt(int queid)
{
return q_debug_info->per_hwq[queid].in_failed_cnt;
return out_failed_cnt[queid];
}
int smart_get_outque_ok_cnt(int queid)
{
return q_debug_info->per_hwq[queid].out_success_cnt;
return out_success_cnt[queid];
}
int smart_get_outque_failed_cnt(int queid)
{
return q_debug_info->per_hwq[queid].out_failed_cnt;
return out_failed_cnt[queid];
}
void hwq_debug(void * addr , uint32_t v)
{
if(q_debug_enable == 1)
{
hwq_do_write(addr, v);
}
if(q_debug_enable == 1)
{
hwq_do_write(addr, v);
}
}

View File

@ -28,12 +28,14 @@ typedef unsigned long long uint64_t;
#define NULL ((void*)0)
#define QUE_MAX_NR 16
#define HW_QUE_NR 8
#define QUE_NR 16
#define B_128_16BLCOKS 8
#define B_256_32BLOCKS 32
#define BLOCKS_64 64
@ -78,212 +80,214 @@ typedef struct mpu_shm{
typedef struct{
unsigned int out_failed_cnt;
unsigned int in_failed_cnt;
unsigned int out_success_cnt;
unsigned int in_success_cnt;
unsigned int cur_que_depth;
unsigned int bind_cpuid;
unsigned int out_failed_cnt;
unsigned int in_failed_cnt;
unsigned int out_success_cnt;
unsigned int in_success_cnt;
unsigned int in_que_depth_addr;
unsigned int out_que_depth_addr;
}hwq_db_info ;
typedef struct{
hwq_db_info per_hwq[HW_QUE_NR];
hwq_db_info per_hwq[QUE_MAX_NR];
}hwq_debug_t;
/*
smart_hq_init
: cpuid
: int
0
: 0
smart_hq_init
: cpuid
: int
0
0
*/
extern int smart_hq_init(int cpuid);
/*
smart_get_hq_vector
: cpuid
queid
: int
0
smart_get_hq_vector
: cpuid
queid
: int
0
*/
extern int smart_get_hq_vector(int cpuid,int queid);
/*
smart_in_que
: cpuid
val
: int
0
: 0
/********************
smart_in_que
queid
val
使1
******************/
*/
extern int smart_in_que(int queid,uint32_t val);
/*
smart_que_is_full
: queid
int
1 true
: 0 false
enum
enum hwque_status smart_que_is_full(int queid);
hwque_false hwque_true
smart_que_is_full
: queid
int
1 true
: 0 false
*/
extern int smart_que_is_full(int queid);
/*
smart_out_que
: queid
: val
int
0
: 0
*/
/*********************
smart_out_que
queid
idx
*********************/
extern int smart_out_que(int queid,uint32_t *val);
/*
smart_que_is_empty
: queid
: int
1 true
: 0 false
smart_que_is_empty
: queid
: int
1 true
0 false
*/
extern int smart_que_is_empty(int queid);
/*
smart_get_que_info
: queid
*dep
: *width
: *used
*cpuid
: int
0
: 0
smart_get_que_info
: queid
*dep
: *width
: *used
: *cpuid
: int
:0 0
*/
extern int smart_get_que_info(int queid,int *dep,int *width,int *used,int *cpuid);
/*
smart_enable_q_nempty
: queid
// 函数名称smart_enable_q_nempty
smart_hq_nempty_int_enable
: queid
int
:使
*/
extern void smart_enable_q_nempty(int queid);
//extern void smart_enable_q_nempty(int queid);
//extern void smart_hq_nempty_int_enable(int queid);
extern int smart_enable_q_nempty(int queid);
/*
smart_disable_q_nempty
: queid
使
// 函数名称smart_disable_q_nempty
:smart_hq_nempty_int_disable
: queid
int
:使
*/
extern void smart_disable_q_nempty(int queid);
//extern void smart_hq_nempty_int_disable(int queid);
/*
smart_que_bind
: queid
cpuid
int
0
0
使
smart_que_bind
: queid
cpuid
int
: 0 0
使
*/
extern int smart_que_bind(int cpuid,int queid);
/*
smart_hq_debug_init
: debug_base_addr
len_bytes
int
0
0
smart_hq_debug_init
: debug_base_addr
len_bytes
int
0
buf
len_bytes sizeof(hwq_debug_t)
hwq_debug_t
:
buf
len_bytes sizeof(hwq_debug_t)
: hwq_debug_t
example:
typedef struct{
unsigned int out_failed_cnt;
unsigned int in_failed_cnt;
unsigned int out_success_cnt;
unsigned int in_success_cnt;
unsigned int cur_que_depth;
unsigned int bind_cpuid;
}hwq_db_info ;
typedef struct{
hwq_db_info per_hwq[HW_QUE_NR];
}hwq_debug_t;
example:
typedef struct{
unsigned int out_failed_cnt;
unsigned int in_failed_cnt;
unsigned int out_success_cnt;
unsigned int in_success_cnt;
unsigned int cur_que_depth;
unsigned int bind_cpuid;
}hwq_db_info ;
typedef struct{
hwq_db_info per_hwq[HW_QUE_NR];
}hwq_debug_t;
*/
extern int smart_hq_debug_init( uint32_t debug_base_addr, uint32_t len_bytes);
/*
smart_get_inque_ok_cnt
: queid
int
0
smart_get_inque_ok_cnt
: queid
int
: 0
*/
extern int smart_get_inque_ok_cnt(int queid);
/*
smart_get_inque_failed_cnt
: queid
int
0
smart_get_inque_failed_cnt
: queid
int
: 0
*/
extern int smart_get_inque_failed_cnt(int queid);
/*
smart_get_outque_ok_cnt
: queid
int
0
smart_get_outque_ok_cnt
: queid
int
0
*/
extern int smart_get_outque_ok_cnt(int queid);
/*
smart_get_outque_failed_cnt
: queid
int
0
smart_get_outque_failed_cnt
: queid
int
: 00
*/
extern int smart_get_outque_failed_cnt(int queid);

View File

@ -1,26 +0,0 @@
#ifndef __OSP_IO_H__
#define __OSP_IO_H__
extern int osp_atoi(char *str);
extern char * osp_strchr(const char *str, int ch);
extern int osp_strlen(const char * str);
extern int osp_strcmp(const char *source,const char *dest);
extern int osp_strncmp(const char *first,const char *last,int count);
extern unsigned long my_strnlen(const char *s, int count);
extern char * osp_itoa(int n, char * chBuffer);
extern char * osp_strcat(char * dest, const char * src);
extern char *osp_strcpy(char *strDest, const char *strSrc);
extern unsigned long osp_strtoul(const char *cp,char **endp,unsigned int base);
extern char * osp_strstr (register char *buf, register char *sub);
extern char* osp_strtok(char* string_org,const char* demial);
extern void *osp_memcpy(void *dst, const void *src, int len);
extern void *osp_memset (void *s,int c,int n);
extern int osp_printf(const char *fmt, ...);
/*
print_init
uart_id
*/
extern int print_init(int uart_id);
#endif

Binary file not shown.

View File

@ -17,11 +17,7 @@
__ucps2_interrupt5:
SEQ: IntEn (Disable);
AGU:[ISP + -116] = R1;
/*
SCU: R1 = 0x04a8 (E); //test intcontex
SCU: R1 = 0x0008 (L); //test intcontex
AGU: R1 =[R1 +0x0]; //test intcontex
*/
AGU:[ISP + -120] = R2;
AGU:[ISP + -124] = R3;
AGU:[ISP + -128] = R4;
@ -70,20 +66,9 @@ __ucps2_interrupt5:
//------------disable intflags-----------------
// SCU: R1 = %ucp_int_disable (L)(E)(U);
// SCU: R1 = %ucp_int_disable;
// SEQ: call R1;
/*
SCU:R10 = 0x4000(E); //test intcontex
SCU:R10 = 0x0010(L); //test intcontex
AGU: [R10 + 0x0] = R1; //test intcontex
*/
SCU:R1 = %isr_entry (L)(E)(U);
SCU:R1 = %isr_entry ;
SEQ:call R1;
// SCU: R1 = %ucp_int_enble (L)(E)(U);
// SCU: R1 = %ucp_int_enble;
// SEQ: call R1;
SCU:R1 = %isr_entry (L)(E)(U);
SCU:R1 = %isr_entry ;
SEQ:call R1;
//---------- user's coding area end ----------------
@ -99,7 +84,7 @@ __ucps2_reg_restore5:
AGU:R31 = [IFP + -228];
AGU:R30 = [IFP + -224];
// AGU:IFP = [IFP + -220];
// AGU:DFP = [IFP + -216];
// AGU:DFP = [IFP + -216];
AGU:R25 = [IFP + -212];
AGU:R24 = [IFP + -208];
AGU:R23 = [IFP + -204];

View File

@ -0,0 +1,49 @@
#include "alg.h"
typedef unsigned int uint32_t;
typedef unsigned short uint16_t;
typedef unsigned char uint8_t;
static const char lsb_bitmap[] ={
0,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,
5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,
6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,
5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,
7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,
5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,
6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,
5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,
};
int find_lsb(uint32_t ui32)
{
uint16_t usmsw = (uint16_t)(ui32 >> 16);
uint16_t uslsw = (uint16_t)(ui32 & 0xffff);
uint8_t ubyte;
if(uslsw)
{
ubyte = (uint8_t)(uslsw & 0xff);
if(ubyte)
{
return (lsb_bitmap[ubyte]);
}
else
{
return (lsb_bitmap[(uint8_t)(uslsw >> 8)] + 8 );
}
}
else
{
ubyte = (uint8_t)(usmsw & 0xff);
if(ubyte)
{
return (lsb_bitmap[ubyte] + 16 );
}
else
{
return (lsb_bitmap[(uint8_t)(usmsw >> 8)] + 24 );
}
}
}

View File

@ -0,0 +1,465 @@
#include "ucps2-intrin.h"
#include "inter_vector.h"
#include "csu.h"
#include "pet_ctrl.h"
#include "ucp_sfr_c.h"
#include "ucp_js_ctrl.h"
#include "ucp_param.h"
#include "gs_que.h"
#include "error.h"
#include "alg.h"
#define DEBUG_OFF 0
#define bit_32 32
#define bit_64 64
#define APEID_ADDR 0x931FFF0
#define NULL ((void*)0)
#define INTR_NR 32
#define DBG_ON 1
#define MAX_IRQ_NUM 512
#define do_write(a,v) __ucps2_store_ext_mem((void *)a, (uint32_t)v, f_W)
#define do_read(ptr) __ucps2_load_ext_mem_v((char*)ptr, f_W)
#define IRQ_TRACPOINT_SIZE 0x92c
typedef struct{
int reg_vec_count;
int reg_vec_buf[INTR_NR];
int irq_count[INTR_NR];
irq_handler pfun[INTR_NR];
}vec_desc;
vec_desc inter_vec_val;
int val_cnt;
int irq_num_tatal_cnt;
uint32_t g_apeid;
uint32_t apcid_set[12] = {0,0,1,1,2,2,3,3,4,4,5,5};
uint32_t mask_array[16] = {0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60};
uint32_t apcid_ad_val[] = {0,64,128,192};
uint32_t debug_enable = 0;
uint32_t debug_addr = 0;
uint32_t reg_cnt = 0;
uint32_t irq_check_cnt = 0;
uint32_t irq_clear_cnt = 0;
uint32_t cpuid_limit[12] = {1,0,1,0,1,0,1,0,1,0,1,0};
//irq_num_info info;
uint32_t g_mask;
irq_debug_t *debug_info;
uint32_t irq_cnt = 0;
uint32_t fun_cnt_s_c = 0;
uint32_t fun_cnt_e_c = 0;
uint32_t is_irq_context = 0;
uint32_t cpuid_times = 0;
int val_cnt;
uint32_t global_int_cnt[512] = {0};
void __ucps2_interrupt5();
/**************************************
******/
static int get_apcid()
{
return apcid_set[g_apeid];
}
vec_desc *get_vec_desc()
{
return &inter_vec_val;
}
#if DEBUG_OFF
#define irq_debug(add,b) (0)
#else
static void irq_debug(void * addr, uint32_t v)
{
if(debug_enable == 1)
{
do_write(addr, v);
__ucps2_synch(0);
}
}
#endif
static uint32_t get_int_status_reg(uint32_t vector,int apcid)
{
int mask_val;
int bit_val;
int load_val;
mask_val = vector>>5;
bit_val = (vector)&(bit_32 -1);
if((apcid >= 0)&&(apcid < 4))
{
load_val = do_read((SYSCFG_BASE_ADDR + 1248 + mask_array[mask_val] + apcid_ad_val[apcid]));
return load_val;
}
else if(apcid == 4)
{
load_val = do_read((PET_CTRL_BASE + 100*4 + mask_val*4 ));
return load_val;
}
else if(apcid == 5)
{
load_val = do_read((JECS_CTRL_BASE + 40*4 + mask_val*4 ));
return load_val;
}
return 0;
}
static int irq_csu_clear_is_ok(int irq_num)
{
if (0 ==(APC_CSU_ALLPENDEVENT0 & (1<<(irq_num & 31))))
{
return 1;
}
return 0;
}
void isr_entry()
{
is_irq_context = 1;
++irq_cnt;
vec_desc *vec_val = &inter_vec_val;
unsigned int val;
int k;
int irq_num_bit;
uint32_t sys_status;
uint32_t bit_val = 0;
g_mask = APC_CSU_INTMASKL;
APC_CSU_INTMASKL = 0;
__ucps2_synch(0);
irq_debug(&(debug_info->irq_cnt), irq_cnt);
irq_debug(&(debug_info->apc_csu_allpendevent0), APC_CSU_ALLPENDEVENT0);
// val = APC_CSU_ALLPENDEVENT0 & APC_CSU_INTMASKL;
val = APC_CSU_ALLPENDEVENT0 & g_mask;
while (val != 0)
{
bit_val = find_lsb(val);
for (k = 0; k < (vec_val->reg_vec_count); k++)
{
irq_num_bit = (vec_val->reg_vec_buf[k]) & (bit_32 - 1);
sys_status = get_int_status_reg(vec_val->reg_vec_buf[k], apcid_set[g_apeid]);
irq_debug(&(debug_info->irq_sys_status[vec_val->reg_vec_buf[k] >> 5]), sys_status);
if ((bit_val == irq_num_bit) && (sys_status & (1 << irq_num_bit)))
{
if(vec_val->pfun[k] != NULL)
{
fun_cnt_s_c++;
irq_debug(&(debug_info->fun_start_cnt_all), fun_cnt_s_c);
global_int_cnt[vec_val->reg_vec_buf[k]]++;
irq_debug(&(debug_info->fun_run_cnt[vec_val->reg_vec_buf[k]]),global_int_cnt[vec_val->reg_vec_buf[k]]);
irq_debug(&(debug_info->cur_irq_num),vec_val->reg_vec_buf[k]);
vec_val->pfun[k]();
__ucps2_synch(0);
APC_CSU_EVENTINTCLEAR = ((vec_val->reg_vec_buf[k]) & 31);
__ucps2_synch(0);
fun_cnt_e_c++;
irq_debug(&(debug_info->fun_end_cnt_all),fun_cnt_e_c);
}
}
}
val &= ~(1 << bit_val);
}
APC_CSU_INTMASKL = g_mask;
__ucps2_synch(0);
is_irq_context = 0;
}
/*****************************************************
***************************************************/
int smart_irq_init(int cpuid)
{
int i;
int32_t addr = (int32_t)__ucps2_interrupt5;
if((cpuid < 0)||(cpuid > 11))
{
return -EINVAL;
}
g_apeid = cpuid;
for(i = 0; i < 32;i++)
{
inter_vec_val.pfun[i] = NULL;
}
__ucps2_IntAddr(addr);
__ucps2_IntEn(f_Enable);
return 0;
}
int smart_get_cpuid()
{
int apeid;
if(cpuid_times != 0)
{
return g_apeid;
}
else
{
g_apeid = *(volatile unsigned int*)APEID_ADDR;
__ucps2_synch(0);
cpuid_times = 1;
}
return g_apeid;
}
/*
*/
int smart_irq_request(uint32_t vector, irq_handler func)
{
int mask_val;
int i= 0;
int bit_val;
int apcid;
int load_val;
int cpuid = g_apeid;
if(vector > FUN_IRQ_MAX_NUM - 1)
{
return -EINVAL;
}
if (is_irq_context)
{
return -EINVAL;
}
if((cpuid < 0)||(cpuid > 11))
{
return -EINVAL;
}
__ucps2_IntEn(f_Disable);
for(i = 0; i < inter_vec_val.reg_vec_count;i++)
{
if(vector == inter_vec_val.reg_vec_buf[i])
{
return -EREREG;
}
}
mask_val = vector>>5;
bit_val = (vector)&(bit_32 -1);
apcid = apcid_set[cpuid];
if(apcid ==4)
{
load_val = do_read((PET_CTRL_BASE + 280 + mask_val*4 ));
load_val |= (1<<bit_val);
do_write((PET_CTRL_BASE + 280 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else if(apcid == 5)
{
load_val = do_read((JECS_CTRL_BASE + 40 + mask_val*4 ));
load_val |= (1<<bit_val);
do_write((JECS_CTRL_BASE + 40 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else
{
load_val = do_read((SYSCFG_BASE_ADDR + 720 + mask_val*4 + apcid*bit_64));
load_val |= (1<<bit_val);
do_write((SYSCFG_BASE_ADDR + 720 + mask_val*4 + apcid*bit_64),load_val);
__ucps2_synch(0);
}
__ucps2_synch(0);
reg_cnt++;
irq_debug(&(debug_info->irq_sys_mask[mask_val]), load_val);
irq_debug(&(debug_info->reg_irq_val[reg_cnt]), vector);
irq_debug(&(debug_info->reg_irq_cnt), reg_cnt);
irq_debug(&(debug_info->reg_irq_cpu_id), cpuid);
APC_CSU_INTMASKL |= (1 << bit_val);
__ucps2_synch(0);
inter_vec_val.reg_vec_buf[inter_vec_val.reg_vec_count] = vector;
inter_vec_val.pfun[inter_vec_val.reg_vec_count] = func;
inter_vec_val.reg_vec_count++;
__ucps2_IntEn(f_Enable);
return 0;
}
int smart_irq_enable(uint32_t vector)
{
int mask_val;
int bit_val;
int apcid;
int load_val;
int cpuid = g_apeid;
if(vector > FUN_IRQ_MAX_NUM - 1)
{
return -EINVAL;
}
mask_val = vector>>5;
bit_val = (vector)&(bit_32 -1);
apcid = apcid_set[cpuid];
__ucps2_IntEn(f_Disable);
if(apcid ==4)
{
load_val = do_read((PET_CTRL_BASE + 280 + mask_val*4 ));
load_val |= (1<<bit_val);
do_write((PET_CTRL_BASE + 280 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else if(apcid == 5)
{
load_val = do_read((JECS_CTRL_BASE + 40 + mask_val*4 ));
load_val |= (1<<bit_val);
do_write((JECS_CTRL_BASE + 40 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else
{
load_val = do_read((SYSCFG_BASE_ADDR + 720 + mask_val*4 + apcid*bit_64));
load_val |= (1<<bit_val);
do_write((SYSCFG_BASE_ADDR + 720 + mask_val*4 + apcid*bit_64),load_val);
__ucps2_synch(0);
}
__ucps2_IntEn(f_Enable);
return 0;
}
int smart_irq_disable(uint32_t vector)
{
int mask_val;
int i= 0;
int bit_val;
int apcid;
int load_val;
int cpuid = g_apeid;
if(vector > FUN_IRQ_MAX_NUM - 1)
{
return -EINVAL;
}
mask_val = vector>>5;
bit_val = (vector)&(bit_32 -1);
apcid = apcid_set[cpuid];
__ucps2_IntEn(f_Disable);
if(apcid ==4)
{
load_val = do_read((PET_CTRL_BASE + 70*4 + mask_val*4 ));
load_val &= ~(1<<bit_val);
do_write((PET_CTRL_BASE + 70*4 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else if(apcid == 5)
{
load_val = do_read((JECS_CTRL_BASE + 10*4 + mask_val*4 ));
load_val &= ~(1<<bit_val);
do_write((JECS_CTRL_BASE + 10*4 + mask_val*4),load_val);
__ucps2_synch(0);
}
else
{
load_val = do_read((SYSCFG_BASE_ADDR + 180*4 + mask_val*4 + apcid*bit_64));
load_val &= ~(1<<bit_val);
do_write((SYSCFG_BASE_ADDR + 180*4 + mask_val*4 + apcid*bit_64),load_val);
__ucps2_synch(0);
}
__ucps2_IntEn(f_Enable);
return 0;
}
/******************************************************************************
******/
int smart_irq_debug_init(uint32_t debug_base_addr, uint32_t len_bytes)
{
if (debug_base_addr <= 0x10000000)
{
return -1;
}
if (len_bytes < IRQ_TRACPOINT_SIZE)
{
return -2;
}
debug_enable = 1;
debug_addr = debug_base_addr;
debug_info = (irq_debug_t *)debug_addr;
return 0;
}
uint32_t smart_irq_get_type_cnt(irq_cnt_type_t num_type)
{
uint32_t val = 0;
switch (num_type)
{
case all_irq:
val = irq_cnt;
break;
case fun_s:
val = fun_cnt_s_c;
break;
case fun_e:
val = fun_cnt_e_c;
break;
/*case clear_cnt_error:
val = irq_clear_cnt;
break;
case irq_check_error:
val = irq_check_cnt;
break;*/
default:
break;
}
return val;
}
int smart_irq_get_run_cnt(uint32_t irqnum)
{
int i;
if (irqnum > (MAX_IRQ_NUM-1))
{
return -EINVAL;
}
return global_int_cnt[irqnum];
return 0;
}

View File

@ -0,0 +1,150 @@
#ifndef __INTER_MSG_REG_H__
#define __INTER_MSG_REG_H__
#define FUN_IRQ_MAX_NUM 512
#define IRQ_MAX_NUM 32
#define IRQ_SYS_MASK_NUM 16
typedef unsigned int uint32_t;
typedef unsigned int UINT32;
typedef void (*irq_handler)();
typedef enum
{
all_irq,
fun_s,
fun_e,
// clear_cnt_error,
// irq_check_error
}irq_cnt_type_t;
typedef unsigned int uint32_t;
typedef unsigned short uint16_t;
typedef unsigned char uint8_t;
typedef signed int int32_t;
typedef struct {
uint32_t reg_irq_cnt; //0x00
uint32_t reg_irq_val[IRQ_MAX_NUM]; //0x04-0x80
uint32_t reg_irq_cpu_id; //0x84
uint32_t irq_cnt; //0x88
uint32_t fun_start_cnt_all; //0x8c
uint32_t fun_end_cnt_all; //0x90
uint32_t cur_irq_num; //0x94
uint32_t fun_run_cnt[FUN_IRQ_MAX_NUM]; //0x98-0x894
// uint32_t last_irq_num; //0x8a4
uint32_t irq_sys_mask[IRQ_SYS_MASK_NUM]; //0x898 -0x8d4
uint32_t irq_sys_status[IRQ_SYS_MASK_NUM]; //0x8d4 -0x914
uint32_t apc_csu_allpendevent0; //0x918
uint32_t apc_csu_intmaskl; //0x91c
}irq_debug_t;
/*
smart_irq_request
: vector
func
: int
0
: 0
*/
extern int smart_irq_request(uint32_t vector,irq_handler func);
/*
smart_irq_enable
: vector
: int
0
: 0
使
*/
extern int smart_irq_enable(uint32_t vector);
/*
smart_irq_disable
: vector
: int
0
: 0
使
*/
extern int smart_irq_disable(uint32_t vector);
/*
smart_irq_debug_init
: debug_base_addr
len_bytes
: int
0
: 0
buf
len_bytes sizeof(irq_debug_t)
irq_debug_t
*/
extern int smart_irq_debug_init(uint32_t debug_base_addr, uint32_t len_bytes);
/*
smart_irq_get_type_cnt
: num_type
: int
: 0 type 0
0 type
*/
extern uint32_t smart_irq_get_type_cnt(irq_cnt_type_t num_type);
/*
smart_irq_get_run_cnt
: irq_num
: int
: 0
0
0
*/
extern int smart_irq_get_run_cnt(uint32_t irqnum);
/*
smart_get_cpuid
:
: int
: cpuid
cpuid
*/
extern int smart_get_cpuid();
/*
smart_irq_init
: cpuid
: int
: 0
*/
extern int smart_irq_init(int cpuid);
#endif

View File

@ -1,126 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="com.smartlogic.mapu.build.ucp2.staticlib.debug.1890016445">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.smartlogic.mapu.build.ucp2.staticlib.debug.1890016445" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/interrupt"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/interrupt/Debug"/>
<entry flags="RESOLVED" kind="libraryFile" name="interrupt" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="" id="com.smartlogic.mapu.build.ucp2.staticlib.debug.1890016445" name="Debug" parent="com.smartlogic.mapu.build.ucp2.staticlib.debug" postbuildStep="">
<folderInfo id="com.smartlogic.mapu.build.ucp2.staticlib.debug.1890016445." name="/" resourcePath="">
<toolChain id="com.smartlogic.mapu.build.toolChain.ucp2.staticlib.debug.768002337" name="UCP2 static Toolchain" superClass="com.smartlogic.mapu.build.toolChain.ucp2.staticlib.debug">
<targetPlatform archList="ucps2,ucpm2" binaryParser="org.eclipse.cdt.core.ELF" id="com.smartlogic.mapu.build.static.targetPlatform.ucp2.487739093" isAbstract="false" name="MaPU UCP2 Platform" osList="all" superClass="com.smartlogic.mapu.build.static.targetPlatform.ucp2"/>
<builder buildPath="${workspace_loc:/interrupt}/Debug" id="com.smartlogic.mapu.build.builder.ucp2.staticlib.1912648636" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="com.smartlogic.mapu.build.builder.ucp2.staticlib"/>
<tool id="cdt.mapu.managedbuild.tool.llvm.c.compiler.lib.ucp2.1781190333" name="Clang" superClass="cdt.mapu.managedbuild.tool.llvm.c.compiler.lib.ucp2">
<option id="mapu.llvm.c_cpp.compiler.option.optimization.level.1941858287" name="Optimization Level" superClass="mapu.llvm.c_cpp.compiler.option.optimization.level" value="mapu.llvm.c_cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="mapu.llvm.c_cpp.compiler.option.debugging.level.2035733028" name="Debug Level" superClass="mapu.llvm.c_cpp.compiler.option.debugging.level"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="mapu.llvm.c_cpp.compiler.option.include.paths.1632606459" name="Include paths (-I)" superClass="mapu.llvm.c_cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../inc"/>
</option>
<inputType id="cdt.mapu.managedbuild.tool.llvm.c.compiler.input1.1280869863" superClass="cdt.mapu.managedbuild.tool.llvm.c.compiler.input1"/>
</tool>
<tool id="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib.125736835" name="llvm-mc Assembler" superClass="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib">
<option id="com.smartlogic.mapu.build.option.llvmmc.debugging.908947022" name="Debug Level" superClass="com.smartlogic.mapu.build.option.llvmmc.debugging"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="mapu.llvmmc.compiler.option.include.paths.372783453" name="Include" superClass="mapu.llvmmc.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../inc"/>
</option>
<inputType id="com.smartlogic.mapu.build.inputType.llvmmc.input.105874229" superClass="com.smartlogic.mapu.build.inputType.llvmmc.input"/>
</tool>
<tool id="com.smartlogic.mapu.build.static.tool.gnu.ucp2.1446205630" name="GNU archiver" superClass="com.smartlogic.mapu.build.static.tool.gnu.ucp2"/>
</toolChain>
</folderInfo>
<fileInfo id="com.smartlogic.mapu.build.ucp2.staticlib.debug.1890016445.Src/__ucps2_interrupt.s.asm" name="__ucps2_interrupt.s.asm" rcbsApplicability="disable" resourcePath="Src/__ucps2_interrupt.s.asm" toolsToInvoke="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib.125736835.1726964261">
<tool id="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib.125736835.1726964261" name="llvm-mc Assembler" superClass="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib.125736835">
<option id="com.smartlogic.mapu.build.option.llvmmc.arch.2104909691" name="arch (-arch)" superClass="com.smartlogic.mapu.build.option.llvmmc.arch" useByScannerDiscovery="false" value="com.smartlogic.mapu.build.llvmmc.arch.ucps2" valueType="enumerated"/>
<inputType id="com.smartlogic.mapu.build.inputType.llvmmc.input.1753484815" superClass="com.smartlogic.mapu.build.inputType.llvmmc.input"/>
</tool>
</fileInfo>
<sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Src"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="dmdata"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="inc"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="lib"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="com.smartlogic.mapu.build.ucp2.staticlib.release.300765673">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.smartlogic.mapu.build.ucp2.staticlib.release.300765673" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/interrupt"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/interrupt/Release"/>
<entry flags="RESOLVED" kind="libraryFile" name="interrupt" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" description="" id="com.smartlogic.mapu.build.ucp2.staticlib.release.300765673" name="Release" parent="com.smartlogic.mapu.build.ucp2.staticlib.release" postbuildStep=" cp /home/ds5/ape/IDE_wang/workspace/interrupt/Release/libinterrupt.a /home/ds5/ape/IDE/workspace/ape0_inter_demo2/lib/">
<folderInfo id="com.smartlogic.mapu.build.ucp2.staticlib.release.300765673." name="/" resourcePath="">
<toolChain id="com.smartlogic.mapu.build.toolChain.ucp2.staticlib.release.736279150" name="UCP2 static Toolchain" superClass="com.smartlogic.mapu.build.toolChain.ucp2.staticlib.release">
<targetPlatform archList="ucps2,ucpm2" binaryParser="org.eclipse.cdt.core.ELF" id="com.smartlogic.mapu.build.static.targetPlatform.ucp2.1619298899" isAbstract="false" name="MaPU UCP2 Platform" osList="all" superClass="com.smartlogic.mapu.build.static.targetPlatform.ucp2"/>
<builder buildPath="${workspace_loc:/interrupt}/Release" id="com.smartlogic.mapu.build.builder.ucp2.staticlib.376294459" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="com.smartlogic.mapu.build.builder.ucp2.staticlib"/>
<tool id="cdt.mapu.managedbuild.tool.llvm.c.compiler.lib.ucp2.1262497861" name="Clang" superClass="cdt.mapu.managedbuild.tool.llvm.c.compiler.lib.ucp2">
<option id="mapu.llvm.c_cpp.compiler.option.optimization.level.396841516" name="Optimization Level" superClass="mapu.llvm.c_cpp.compiler.option.optimization.level"/>
<option id="mapu.llvm.c_cpp.compiler.option.debugging.level.1587893268" name="Debug Level" superClass="mapu.llvm.c_cpp.compiler.option.debugging.level" value="mapu.llvm.c_cpp.compiler.debugging.level.none" valueType="enumerated"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="mapu.llvm.c_cpp.compiler.option.include.paths.221815110" name="Include paths (-I)" superClass="mapu.llvm.c_cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../inc"/>
</option>
<inputType id="cdt.mapu.managedbuild.tool.llvm.c.compiler.input1.1620798060" superClass="cdt.mapu.managedbuild.tool.llvm.c.compiler.input1"/>
</tool>
<tool id="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib.148512743" name="llvm-mc Assembler" superClass="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib">
<option id="com.smartlogic.mapu.build.option.llvmmc.debugging.1682805716" name="Debug Level" superClass="com.smartlogic.mapu.build.option.llvmmc.debugging" value="com.smartlogic.mapu.build.option.llvmmc.debugging.none" valueType="enumerated"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="mapu.llvmmc.compiler.option.include.paths.37882860" name="Include" superClass="mapu.llvmmc.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../inc"/>
</option>
<inputType id="com.smartlogic.mapu.build.inputType.llvmmc.input.237875386" superClass="com.smartlogic.mapu.build.inputType.llvmmc.input"/>
</tool>
<tool id="com.smartlogic.mapu.build.static.tool.gnu.ucp2.1126503581" name="GNU archiver" superClass="com.smartlogic.mapu.build.static.tool.gnu.ucp2"/>
</toolChain>
</folderInfo>
<fileInfo id="com.smartlogic.mapu.build.ucp2.staticlib.release.300765673.Src/__ucps2_interrupt.s.asm" name="__ucps2_interrupt.s.asm" rcbsApplicability="disable" resourcePath="Src/__ucps2_interrupt.s.asm" toolsToInvoke="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib.148512743.680504920">
<tool id="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib.148512743.680504920" name="llvm-mc Assembler" superClass="com.smartlogic.mapu.build.static.tool.llvmmc.ucp2.lib.148512743">
<option id="com.smartlogic.mapu.build.option.llvmmc.arch.741698174" name="arch (-arch)" superClass="com.smartlogic.mapu.build.option.llvmmc.arch" useByScannerDiscovery="false" value="com.smartlogic.mapu.build.llvmmc.arch.ucps2" valueType="enumerated"/>
<inputType id="com.smartlogic.mapu.build.inputType.llvmmc.input.133481656" superClass="com.smartlogic.mapu.build.inputType.llvmmc.input"/>
</tool>
</fileInfo>
<sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="Src"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="dmdata"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="inc"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="lib"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="interrupt.com.smartlogic.mapu.build.projectType.ucp2.staticlib.712958039" name="Static Library" projectType="com.smartlogic.mapu.build.projectType.ucp2.staticlib"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
<storageModule moduleId="refreshScope"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
</cproject>

View File

@ -1,8 +0,0 @@
{
"project": {
"incList": [
"../inc"
],
"libList": []
}
}

View File

@ -1,27 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>interrupt</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
<nature>com.smartlogic.mapu.build.staticlibrary.libraryNature</nature>
</natures>
</projectDescription>

View File

@ -1,5 +0,0 @@
eclipse.preferences.version=1
environment/project/com.smartlogic.mapu.build.ucp2.staticlib.debug.1890016445/append=true
environment/project/com.smartlogic.mapu.build.ucp2.staticlib.debug.1890016445/appendContributed=true
environment/project/com.smartlogic.mapu.build.ucp2.staticlib.release.300765673/append=true
environment/project/com.smartlogic.mapu.build.ucp2.staticlib.release.300765673/appendContributed=true

View File

@ -1,47 +0,0 @@
Src/inter_vector.s.o: ../Src/inter_vector.s.c \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/inter_vector.h ../inc/csu.h ../inc/pet_ctrl.h \
../inc/ucp_sfr_c.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdint.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_intsup.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_stdint.h \
../inc/ucp_param.h ../inc/ucp_js_ctrl.h ../inc/dw_apb_timers.h \
../inc/gs_que.h ../inc/error.h
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/inter_vector.h:
../inc/csu.h:
../inc/pet_ctrl.h:
../inc/ucp_sfr_c.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdint.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_intsup.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_stdint.h:
../inc/ucp_param.h:
../inc/ucp_js_ctrl.h:
../inc/dw_apb_timers.h:
../inc/gs_que.h:
../inc/error.h:

View File

@ -1,35 +0,0 @@
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
# Add inputs and outputs from these tool invocations to the build variables
ASM_SRCS += \
../Src/__ucps2_interrupt.s.asm
C_SRCS += \
../Src/inter_vector.s.c
OBJS += \
./Src/__ucps2_interrupt.s.o \
./Src/inter_vector.s.o
C_DEPS += \
./Src/inter_vector.s.d
# Each subdirectory must supply rules for building sources it contributes
Src/__ucps2_interrupt.s.o: ../Src/__ucps2_interrupt.s.asm
@echo 'Building file: $<'
@echo 'Invoking: llvm-mc Assembler'
$(MaPU_TC_HOME)/bin/ucp2/llvm-mc -arch=ucps2 -g -I../inc -filetype=obj -o "$@" "$<"
@echo 'Finished building: $<'
@echo ' '
Src/%.o: ../Src/%.c
@echo 'Building file: $<'
@echo 'Invoking: Clang'
/home/ds5/ape/IDE_wang/toolchain/bin/ucp2/clang --target=ucps2 -I../inc -I/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib -I/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm -O0 -g -Wno-constant-conversion -nostdlibinc -MMD -MP -o "$@" -c "$<"
@echo 'Finished building: $<'
@echo ' '

View File

@ -1,43 +0,0 @@
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
-include ../makefile.init
RM := find . -path './build' -prune -o -print -a -type f -not -name '*.mk' -a -not -name '*.ld' -a -not -name 'makefile' -a -not -name 'genhex.sh' -delete & rm -rf
# All of the sources participating in the build are defined here
-include sources.mk
-include Src/subdir.mk
-include subdir.mk
-include objects.mk
ifneq ($(MAKECMDGOALS),clean)
ifneq ($(strip $(C_DEPS)),)
-include $(C_DEPS)
endif
endif
-include ../makefile.defs
# Add inputs and outputs from these tool invocations to the build variables
# All Target
all: libinterrupt_get32.a
# Tool invocations
libinterrupt_get32.a: $(OBJS)
@echo 'Building target: $@'
@echo 'Invoking: GNU archiver'
ar rcs "libinterrupt_get32.a" $(USER_OBJS) $(OBJS) $(LIBS)
@echo 'Finished building target: $@'
@echo ' '
# Other Targets
clean:
-$(RM) $(LIB)$(OBJS)$(C_DEPS) libinterrupt_get32.a
-@echo ' '
.PHONY: all clean dependents
-include ../makefile.targets

View File

@ -1,8 +0,0 @@
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
USER_OBJS :=
LIBS :=

View File

@ -1,596 +0,0 @@
#include "ucps2-intrin.h"
#include "inter_vector.h"
#include "csu.h"
#include "pet_ctrl.h"
#include "ucp_sfr_c.h"
#include "ucp_js_ctrl.h"
#include "ucp_param.h"
#include "gs_que.h"
#include "error.h"
#include "alg.h"
#define DEBUG_OFF 0
#define bit_32 32
#define bit_64 64
#define APEID_ADDR 0x931FFF0
#define NULL ((void*)0)
#define INTR_NR 32
#define DBG_ON 1
#define MAX_IRQ_NUM 512
#define do_write(a,v) __ucps2_store_ext_mem((void *)a, (uint32_t)v, f_W)
#define do_read(ptr) __ucps2_load_ext_mem_v((char*)ptr, f_W)
#define IRQ_TRACPOINT_SIZE 0x92c
/*typedef struct{
int irq_num[MAX_IRQ_NUM];
int irq_num_tatal;
}irq_num_info;*/
typedef struct{
int reg_vec_count;
int reg_vec_buf[INTR_NR];
int irq_count[INTR_NR];
irq_handler pfun[INTR_NR];
}vec_desc;
vec_desc inter_vec_val;
int val_cnt;
int irq_num_tatal_cnt;
uint32_t g_apeid;
uint32_t apcid_set[12] = {0,0,1,1,2,2,3,3,4,4,5,5};
uint32_t mask_array[16] = {0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60};
uint32_t apcid_ad_val[] = {0,64,128,192};
uint32_t debug_enable = 0;
uint32_t debug_addr = 0;
uint32_t reg_cnt = 0;
uint32_t irq_check_cnt = 0;
uint32_t irq_clear_cnt = 0;
uint32_t cpuid_limit[12] = {1,0,1,0,1,0,1,0,1,0,1,0};
//irq_num_info info;
uint32_t g_mask;
irq_debug_t *debug_info;
irq_handler irq_func[MAX_IRQ_NUM] = {0};
uint32_t irq_func_call_num[MAX_IRQ_NUM] = {0};
uint32_t irq_cnt = 0;
uint32_t fun_cnt_s_c = 0;
uint32_t fun_cnt_e_c = 0;
uint32_t is_irq_context = 0;
uint32_t cpuid_times = 0;
int val_cnt;
uint32_t global_int_cnt[512] = {0};
void __ucps2_interrupt5();
/******************************************************************************
******/
static int get_apcid()
{
return apcid_set[g_apeid];
}
vec_desc *get_vec_desc()
{
return &inter_vec_val;
}
static void clear_csu_apcirq(int vector)
{
APC_CSU_EVENTINTCLEAR = vector & 31;
__ucps2_synch(0);
}
#if DEBUG_OFF
#define irq_debug(add,b) (0)
#else
static void irq_debug(void * addr, uint32_t v)
{
if(debug_enable == 1)
{
do_write(addr, v);
// __ucps2_synch(0);
}
}
#endif
static uint32_t get_int_status_reg(uint32_t vector,int apcid)
{
int mask_val;
int bit_val;
int load_val;
mask_val = vector>>5;
bit_val = (vector)&(bit_32 -1);
if((apcid >= 0)&&(apcid < 4))
{
load_val = do_read((SYSCFG_BASE_ADDR + 1248 + mask_array[mask_val] + apcid_ad_val[apcid]));
return load_val;
}
else if(apcid == 4)
{
load_val = do_read((PET_CTRL_BASE + 100*4 + mask_val*4 ));
return load_val;
}
else if(apcid == 5)
{
load_val = do_read((JECS_CTRL_BASE + 40*4 + mask_val*4 ));
return load_val;
}
return 0;
}
static int irq_csu_clear_is_ok(int irq_num)
{
if (0 ==(APC_CSU_ALLPENDEVENT0 & (1<<(irq_num & 31))))
{
return 1;
}
return 0;
}
static int get_irq_num_from_csu_reg(void)
{
int apcid = get_apcid();
vec_desc *vec_val = get_vec_desc();
unsigned int val;
int k;
//int j;
//int z = 0;
//int irq_num,
int irq_num_bit;
uint32_t sys_status;
uint32_t bit_val = 0;
//p_info->irq_num_tatal = 0;
irq_debug(&(debug_info->apc_csu_allpendevent0), APC_CSU_ALLPENDEVENT0);
irq_debug(&(debug_info->apc_csu_intmaskl), g_mask);
// irq_debug(&(debug_info->event_mask_l), APC_CSU_EVENTMASKL);
val = APC_CSU_ALLPENDEVENT0 & g_mask;
// val = APC_CSU_ALLPENDEVENT0 & APC_CSU_INTMASKL;
while (val != 0)
{
bit_val = find_lsb(val);
for (k = 0; k < (vec_val->reg_vec_count); k++)
{
irq_num_bit = (vec_val->reg_vec_buf[k]) & (bit_32 - 1);
sys_status = get_int_status_reg(vec_val->reg_vec_buf[k], apcid);
irq_debug(&(debug_info->irq_sys_status[vec_val->reg_vec_buf[k] >> 5]), sys_status);
if ((bit_val == irq_num_bit) && (sys_status & (1 << irq_num_bit)))
{
if(vec_val->pfun[k] != NULL)
{
fun_cnt_s_c++;
irq_debug(&(debug_info->fun_start_cnt_all), fun_cnt_s_c);
// vec_val->irq_count[k]++;
// irq_debug(&(debug_info->fun_run_cnt[vec_val->irq_count[k]]),vec_val->irq_count[k]);
global_int_cnt[vec_val->reg_vec_buf[k]]++;
irq_debug(&(debug_info->fun_run_cnt[vec_val->reg_vec_buf[k]]),global_int_cnt[vec_val->reg_vec_buf[k]]);
vec_val->pfun[k]();
__ucps2_synch(0);
clear_csu_apcirq(vec_val->reg_vec_buf[k]);
fun_cnt_e_c++;
irq_debug(&(debug_info->fun_end_cnt_all),fun_cnt_e_c);
}
}
}
val &= ~(1 << bit_val);
}
return 0;
}
static int irq_is_registered(int irq_num)
{
if ((0 == irq_func[irq_num]) )
{
return 0;
}
return 1;
}
static void clear_mask(void)
{
g_mask = APC_CSU_INTMASKL;
APC_CSU_INTMASKL = 0;
__ucps2_synch(0);
}
static void restore_mask(void)
{
APC_CSU_INTMASKL = g_mask;
__ucps2_synch(0);
}
/*
void isr_entry()
{
is_irq_context = 1;
++irq_cnt;
irq_debug(&(debug_info->irq_cnt), irq_cnt);
clear_mask();
get_irq_num_from_csu_reg();
restore_mask();
is_irq_context = 0;
}
*/
void isr_entry()
{
is_irq_context = 1;
++irq_cnt;
// int apcid = apcid_set[g_apeid];
vec_desc *vec_val = &inter_vec_val;
unsigned int val;
int k;
int irq_num_bit;
uint32_t sys_status;
uint32_t bit_val = 0;
g_mask = APC_CSU_INTMASKL;
APC_CSU_INTMASKL = 0;
__ucps2_synch(0);
// do_write(0xb7fc0100,irq_cnt);
irq_debug(&(debug_info->irq_cnt), irq_cnt);
irq_debug(&(debug_info->apc_csu_allpendevent0), APC_CSU_ALLPENDEVENT0);
// val = APC_CSU_ALLPENDEVENT0 & APC_CSU_INTMASKL;
val = APC_CSU_ALLPENDEVENT0 & g_mask;
while (val != 0)
{
bit_val = find_lsb(val);
for (k = 0; k < (vec_val->reg_vec_count); k++)
{
irq_num_bit = (vec_val->reg_vec_buf[k]) & (bit_32 - 1);
sys_status = get_int_status_reg(vec_val->reg_vec_buf[k], apcid_set[g_apeid]);
irq_debug(&(debug_info->irq_sys_status[vec_val->reg_vec_buf[k] >> 5]), sys_status);
if ((bit_val == irq_num_bit) && (sys_status & (1 << irq_num_bit)))
{
if(vec_val->pfun[k] != NULL)
{
fun_cnt_s_c++;
irq_debug(&(debug_info->fun_start_cnt_all), fun_cnt_s_c);
// vec_val->irq_count[k]++;
global_int_cnt[vec_val->reg_vec_buf[k]]++;
irq_debug(&(debug_info->fun_run_cnt[vec_val->reg_vec_buf[k]]),global_int_cnt[vec_val->reg_vec_buf[k]]);
irq_debug(&(debug_info->cur_irq_num),vec_val->reg_vec_buf[k]);
vec_val->pfun[k]();
__ucps2_synch(0);
APC_CSU_EVENTINTCLEAR = ((vec_val->reg_vec_buf[k]) & 31);
__ucps2_synch(0);
fun_cnt_e_c++;
irq_debug(&(debug_info->fun_end_cnt_all),fun_cnt_e_c);
}
}
}
val &= ~(1 << bit_val);
}
APC_CSU_INTMASKL = g_mask;
__ucps2_synch(0);
is_irq_context = 0;
}
/******************************************************************************
******/
int smart_irq_init(int cpuid)
{
int i;
int32_t addr = (int32_t)__ucps2_interrupt5;
if((cpuid < 0)||(cpuid > 11))
{
return -EINVAL;
}
g_apeid = cpuid;
for(i = 0; i < 32;i++)
{
inter_vec_val.pfun[i] = NULL;
}
__ucps2_IntAddr(addr);
__ucps2_IntEn(f_Enable);
return 0;
}
int smart_get_cpuid()
{
int apeid;
if(cpuid_times != 0)
{
return g_apeid;
}
else
{
g_apeid = *(volatile unsigned int*)APEID_ADDR;
cpuid_times = 1;
}
return g_apeid;
}
/*
*/
int smart_irq_request(uint32_t vector, irq_handler func)
{
int mask_val;
int i= 0;
int bit_val;
int apcid;
int load_val;
int cpuid = g_apeid;
if(vector > FUN_IRQ_MAX_NUM - 1)
{
return -EINVAL;
}
if (is_irq_context)
{
return -EINVAL;
}
if((cpuid < 0)||(cpuid > 11))
{
return -EINVAL;
}
__ucps2_IntEn(f_Disable);
for(i = 0; i < inter_vec_val.reg_vec_count;i++)
{
if(vector == inter_vec_val.reg_vec_buf[i])
{
return -EREREG;
}
}
mask_val = vector>>5;
bit_val = (vector)&(bit_32 -1);
apcid = apcid_set[cpuid];
if(apcid ==4)
{
load_val = do_read((PET_CTRL_BASE + 280 + mask_val*4 ));
load_val |= (1<<bit_val);
do_write((PET_CTRL_BASE + 280 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else if(apcid == 5)
{
load_val = do_read((JECS_CTRL_BASE + 40 + mask_val*4 ));
load_val |= (1<<bit_val);
do_write((JECS_CTRL_BASE + 40 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else
{
load_val = do_read((SYSCFG_BASE_ADDR + 720 + mask_val*4 + apcid*bit_64));
load_val |= (1<<bit_val);
do_write((SYSCFG_BASE_ADDR + 720 + mask_val*4 + apcid*bit_64),load_val);
__ucps2_synch(0);
}
__ucps2_synch(0);
reg_cnt++;
irq_debug(&(debug_info->irq_sys_mask[mask_val]), load_val);
irq_debug(&(debug_info->reg_irq_val[reg_cnt]), vector);
irq_debug(&(debug_info->reg_irq_cnt), reg_cnt);
irq_debug(&(debug_info->reg_irq_cpu_id), cpuid);
APC_CSU_INTMASKL |= (1 << bit_val);
__ucps2_synch(0);
inter_vec_val.reg_vec_buf[inter_vec_val.reg_vec_count] = vector;
inter_vec_val.pfun[inter_vec_val.reg_vec_count] = func;
inter_vec_val.reg_vec_count++;
__ucps2_IntEn(f_Enable);
return 0;
}
int smart_irq_enable(uint32_t vector)
{
int mask_val;
int bit_val;
int apcid;
int load_val;
int cpuid = g_apeid;
/*
if ((vector >= (MAX_IRQ_NUM-1)) || !irq_is_registered(vector))
{
return -EINVAL;
}*/
if(vector > FUN_IRQ_MAX_NUM - 1)
{
return -EINVAL;
}
mask_val = vector>>5;
bit_val = (vector)&(bit_32 -1);
apcid = apcid_set[cpuid];
__ucps2_IntEn(f_Disable);
if(apcid ==4)
{
load_val = do_read((PET_CTRL_BASE + 280 + mask_val*4 ));
load_val |= (1<<bit_val);
do_write((PET_CTRL_BASE + 280 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else if(apcid == 5)
{
load_val = do_read((JECS_CTRL_BASE + 40 + mask_val*4 ));
load_val |= (1<<bit_val);
do_write((JECS_CTRL_BASE + 40 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else
{
load_val = do_read((SYSCFG_BASE_ADDR + 720 + mask_val*4 + apcid*bit_64));
load_val |= (1<<bit_val);
do_write((SYSCFG_BASE_ADDR + 720 + mask_val*4 + apcid*bit_64),load_val);
__ucps2_synch(0);
}
__ucps2_IntEn(f_Enable);
return 0;
}
int smart_irq_disable(uint32_t vector)
{
int mask_val;
int i= 0;
int bit_val;
int apcid;
int load_val;
int cpuid = g_apeid;
/*
if ((vector >= (MAX_IRQ_NUM-1)) || !irq_is_registered(vector))
{
return -1;
}*/
if(vector > FUN_IRQ_MAX_NUM - 1)
{
return -EINVAL;
}
mask_val = vector>>5;
bit_val = (vector)&(bit_32 -1);
apcid = apcid_set[cpuid];
__ucps2_IntEn(f_Disable);
if(apcid ==4)
{
load_val = do_read((PET_CTRL_BASE + 70*4 + mask_val*4 ));
load_val &= ~(1<<bit_val);
do_write((PET_CTRL_BASE + 70*4 + mask_val*4 ),load_val);
__ucps2_synch(0);
}
else if(apcid == 5)
{
load_val = do_read((JECS_CTRL_BASE + 10*4 + mask_val*4 ));
load_val &= ~(1<<bit_val);
do_write((JECS_CTRL_BASE + 10*4 + mask_val*4),load_val);
__ucps2_synch(0);
}
else
{
load_val = do_read((SYSCFG_BASE_ADDR + 180*4 + mask_val*4 + apcid*bit_64));
load_val &= ~(1<<bit_val);
do_write((SYSCFG_BASE_ADDR + 180*4 + mask_val*4 + apcid*bit_64),load_val);
__ucps2_synch(0);
}
__ucps2_IntEn(f_Enable);
return 0;
}
/******************************************************************************
******/
int smart_irq_debug_init(uint32_t debug_base_addr, uint32_t len_bytes)
{
if (debug_base_addr <= 0x10000000)
{
return -1;
}
if (len_bytes < IRQ_TRACPOINT_SIZE)
{
return -2;
}
debug_enable = 1;
debug_addr = debug_base_addr;
debug_info = (irq_debug_t *)debug_addr;
return 0;
}
uint32_t smart_irq_get_type_cnt(irq_cnt_type_t num_type)
{
uint32_t val = 0;
switch (num_type)
{
case all_irq:
val = irq_cnt;
break;
case fun_s:
val = fun_cnt_s_c;
break;
case fun_e:
val = fun_cnt_e_c;
break;
/*case clear_cnt_error:
val = irq_clear_cnt;
break;
case irq_check_error:
val = irq_check_cnt;
break;*/
default:
break;
}
return val;
}
int smart_irq_get_run_cnt(uint32_t irqnum)
{
int i;
/*
if (irqnum >= (MAX_IRQ_NUM-1))
{
return -EINVAL;
}
*/
if (irqnum > (MAX_IRQ_NUM-1))
{
return -EINVAL;
}
/*
vec_desc * vec_val = get_vec_desc();
for(i = 0; i < vec_val->reg_vec_count;i++)
{
if(irqnum == vec_val->reg_vec_buf[i])
{
break;
}
}
if(i != vec_val->reg_vec_count)
{
return vec_val->irq_count[i];
}
*/
return global_int_cnt[irqnum];
return 0;
}

View File

@ -1,150 +0,0 @@
#ifndef __INTER_MSG_REG_H__
#define __INTER_MSG_REG_H__
#define FUN_IRQ_MAX_NUM 512
#define IRQ_MAX_NUM 32
#define IRQ_SYS_MASK_NUM 16
typedef unsigned int uint32_t;
typedef unsigned int UINT32;
typedef void (*irq_handler)();
typedef enum
{
all_irq,
fun_s,
fun_e,
// clear_cnt_error,
// irq_check_error
}irq_cnt_type_t;
typedef unsigned int uint32_t;
typedef unsigned short uint16_t;
typedef unsigned char uint8_t;
typedef signed int int32_t;
typedef struct {
uint32_t reg_irq_cnt; //0x00
uint32_t reg_irq_val[IRQ_MAX_NUM]; //0x04-0x80
uint32_t reg_irq_cpu_id; //0x84
uint32_t irq_cnt; //0x88
uint32_t fun_start_cnt_all; //0x8c
uint32_t fun_end_cnt_all; //0x90
uint32_t cur_irq_num; //0x94
uint32_t fun_run_cnt[FUN_IRQ_MAX_NUM]; //0x98-0x894
// uint32_t last_irq_num; //0x8a4
uint32_t irq_sys_mask[IRQ_SYS_MASK_NUM]; //0x894 -0x8d0
uint32_t irq_sys_status[IRQ_SYS_MASK_NUM]; //0x8d4 -0x910
uint32_t apc_csu_allpendevent0; //0x914
uint32_t apc_csu_intmaskl; //0x918
}irq_debug_t;
/*
smart_irq_request
: vector
func
: int
0
: 0
*/
extern int smart_irq_request(uint32_t vector,irq_handler func);
/*
smart_irq_enable
: vector
: int
0
: 0
使
*/
extern int smart_irq_enable(uint32_t vector);
/*
smart_irq_disable
: vector
: int
0
: 0
使
*/
extern int smart_irq_disable(uint32_t vector);
/*
smart_irq_debug_init
: debug_base_addr
len_bytes
: int
0
: 0
buf
len_bytes sizeof(irq_debug_t)
irq_debug_t
*/
extern int smart_irq_debug_init(uint32_t debug_base_addr, uint32_t len_bytes);
/*
smart_irq_get_type_cnt
: num_type
: int
: 0 type 0
0 type
*/
extern uint32_t smart_irq_get_type_cnt(irq_cnt_type_t num_type);
/*
smart_irq_get_run_cnt
: irq_num
: int
: 0
0
0
*/
extern int smart_irq_get_run_cnt(uint32_t irqnum);
/*
smart_get_cpuid
:
: int
: cpuid
cpuid
*/
extern int smart_get_cpuid();
/*
smart_irq_init
: cpuid
: int
: 0
*/
extern int smart_irq_init(int cpuid);
#endif

View File

@ -1,12 +0,0 @@
# set custom targets
# set toolchain home
ifeq ($(strip $(MaPU_TC_HOME)),)
MaPU_TC_HOME := /home/wangchongyang/my_work/IDE/toolchain
endif
APP: all
LIB: libinterrupt.a
.PHONY: LIB APP

Binary file not shown.

View File

@ -1,88 +0,0 @@
Src/SmartOS.s.o: ../Src/SmartOS.s.c ../inc/timers.h ../inc/ucos_ii.h \
../inc/os_cfg.h ../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h \
../inc/SmartOS.h ../inc/mailbox.h ../inc/sem.h ../inc/inter_vector.h
../inc/timers.h:
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:
../inc/SmartOS.h:
../inc/mailbox.h:
../inc/sem.h:
../inc/inter_vector.h:

View File

@ -1,3 +0,0 @@
Src/alg.s.o: ../Src/alg.s.c ../inc/alg.h
../inc/alg.h:

View File

@ -1,33 +0,0 @@
Src/func_lib_ape.o: ../Src/func_lib_ape.c ../inc/ucp_sfr_c.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdint.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_intsup.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_stdint.h \
../inc/ucp_param.h ../Src/func_lib_ape.h ../inc/pet_ctrl.h \
../inc/ucp_js_ctrl.h ../inc/csu.h
../inc/ucp_sfr_c.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdint.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_intsup.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_stdint.h:
../inc/ucp_param.h:
../Src/func_lib_ape.h:
../inc/pet_ctrl.h:
../inc/ucp_js_ctrl.h:
../inc/csu.h:

View File

@ -1,120 +0,0 @@
Src/inter_vector.s.o: ../Src/inter_vector.s.c \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h ../inc/alg.h \
../inc/inter_vector.h ../inc/csu.h ../inc/pet_ctrl.h \
../inc/ucp_sfr_c.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdint.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_intsup.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_stdint.h \
../inc/ucp_param.h ../inc/ucp_js_ctrl.h ../inc/dw_apb_timers.h \
../inc/type_define.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/math.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/tick.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/malloc.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/malloc.h \
../inc/gs_que.h ../inc/error.h ../inc/debug.h
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/alg.h:
../inc/inter_vector.h:
../inc/csu.h:
../inc/pet_ctrl.h:
../inc/ucp_sfr_c.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdint.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_intsup.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_stdint.h:
../inc/ucp_param.h:
../inc/ucp_js_ctrl.h:
../inc/dw_apb_timers.h:
../inc/type_define.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/math.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/tick.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/malloc.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/malloc.h:
../inc/gs_que.h:
../inc/error.h:
../inc/debug.h:

View File

@ -1,5 +0,0 @@
Src/mailbox.s.o: ../Src/mailbox.s.c ../inc/ucp_param.h ../inc/mailbox.h
../inc/ucp_param.h:
../inc/mailbox.h:

View File

@ -1,77 +0,0 @@
Src/os_core.s.o: ../Src/os_core.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_cpu_c.s.o: ../Src/os_cpu_c.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_dbg_r.s.o: ../Src/os_dbg_r.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_flag.s.o: ../Src/os_flag.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_mbox.s.o: ../Src/os_mbox.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_mem.s.o: ../Src/os_mem.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_mutex.s.o: ../Src/os_mutex.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_q.s.o: ../Src/os_q.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_sem.s.o: ../Src/os_sem.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_task.s.o: ../Src/os_task.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_time.s.o: ../Src/os_time.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,77 +0,0 @@
Src/os_tmr.s.o: ../Src/os_tmr.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:

View File

@ -1,76 +0,0 @@
Src/os_ucp.s.o: ../Src/os_ucp.s.c ../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h \
../inc/ucos_ii.h ../inc/os_cfg.h ../inc/os_cpu.h
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:

View File

@ -1,80 +0,0 @@
Src/sem.s.o: ../Src/sem.s.c ../inc/ucos_ii.h ../inc/os_cfg.h \
../inc/os_cpu.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
../inc/os_ucp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h \
../inc/sem.h
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
../inc/os_ucp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:
../inc/sem.h:

View File

@ -1,95 +0,0 @@
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
# Add inputs and outputs from these tool invocations to the build variables
ASM_SRCS += \
../Src/__ucps2_interrupt.s.asm
C_SRCS += \
../Src/SmartOS.s.c \
../Src/alg.s.c \
../Src/func_lib_ape.c \
../Src/inter_vector.s.c \
../Src/mailbox.s.c \
../Src/os_core.s.c \
../Src/os_cpu_c.s.c \
../Src/os_dbg_r.s.c \
../Src/os_flag.s.c \
../Src/os_mbox.s.c \
../Src/os_mem.s.c \
../Src/os_mutex.s.c \
../Src/os_q.s.c \
../Src/os_sem.s.c \
../Src/os_task.s.c \
../Src/os_time.s.c \
../Src/os_tmr.s.c \
../Src/os_ucp.s.c \
../Src/sem.s.c \
../Src/timer.s.c \
../Src/ucos_ii.s.c
OBJS += \
./Src/SmartOS.s.o \
./Src/__ucps2_interrupt.s.o \
./Src/alg.s.o \
./Src/func_lib_ape.o \
./Src/inter_vector.s.o \
./Src/mailbox.s.o \
./Src/os_core.s.o \
./Src/os_cpu_c.s.o \
./Src/os_dbg_r.s.o \
./Src/os_flag.s.o \
./Src/os_mbox.s.o \
./Src/os_mem.s.o \
./Src/os_mutex.s.o \
./Src/os_q.s.o \
./Src/os_sem.s.o \
./Src/os_task.s.o \
./Src/os_time.s.o \
./Src/os_tmr.s.o \
./Src/os_ucp.s.o \
./Src/sem.s.o \
./Src/timer.s.o \
./Src/ucos_ii.s.o
C_DEPS += \
./Src/SmartOS.s.d \
./Src/alg.s.d \
./Src/func_lib_ape.d \
./Src/inter_vector.s.d \
./Src/mailbox.s.d \
./Src/os_core.s.d \
./Src/os_cpu_c.s.d \
./Src/os_dbg_r.s.d \
./Src/os_flag.s.d \
./Src/os_mbox.s.d \
./Src/os_mem.s.d \
./Src/os_mutex.s.d \
./Src/os_q.s.d \
./Src/os_sem.s.d \
./Src/os_task.s.d \
./Src/os_time.s.d \
./Src/os_tmr.s.d \
./Src/os_ucp.s.d \
./Src/sem.s.d \
./Src/timer.s.d \
./Src/ucos_ii.s.d
# Each subdirectory must supply rules for building sources it contributes
Src/%.o: ../Src/%.c
@echo 'Building file: $<'
@echo 'Invoking: Clang'
/home/ds5/ape/IDE_wang/toolchain/bin/ucp2/clang --target=ucps2 -I../inc -I/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib -I/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm -O0 -g -Wno-constant-conversion -nostdlibinc -MMD -MP -o "$@" -c "$<"
@echo 'Finished building: $<'
@echo ' '
Src/__ucps2_interrupt.s.o: ../Src/__ucps2_interrupt.s.asm
@echo 'Building file: $<'
@echo 'Invoking: llvm-mc Assembler'
$(MaPU_TC_HOME)/bin/ucp2/llvm-mc -arch=ucps2 -g -I../inc -filetype=obj -o "$@" "$<"
@echo 'Finished building: $<'
@echo ' '

View File

@ -1,100 +0,0 @@
Src/timer.s.o: ../Src/timer.s.c ../inc/type_define.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/math.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/tick.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/malloc.h \
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/malloc.h \
../inc/dw_apb_timers.h ../inc/ucp_param.h ../inc/inter_vector.h \
../inc/ucos_ii.h ../inc/os_cfg.h ../inc/os_cpu.h ../inc/os_ucp.h
../inc/type_define.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/ieeefp.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_ansi.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/newlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/_newlib_version.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/config.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/features.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/stddef.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/reent.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/__stddef_max_align_t.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/_default_types.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/lock.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/cdefs.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/stdlib.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/alloca.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/math.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/strings.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/sys/string.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2-intrin.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucp2.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/ucps2.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/llvm/tick.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/malloc.h:
/home/ds5/ape/IDE_wang/toolchain/include/ucp2/newlib/machine/malloc.h:
../inc/dw_apb_timers.h:
../inc/ucp_param.h:
../inc/inter_vector.h:
../inc/ucos_ii.h:
../inc/os_cfg.h:
../inc/os_cpu.h:
../inc/os_ucp.h:

View File

@ -1 +0,0 @@
Src/ucos_ii.s.o: ../Src/ucos_ii.s.c

View File

@ -1,43 +0,0 @@
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
-include ../makefile.init
RM := find . -path './build' -prune -o -print -a -type f -not -name '*.mk' -a -not -name '*.ld' -a -not -name 'makefile' -a -not -name 'genhex.sh' -delete & rm -rf
# All of the sources participating in the build are defined here
-include sources.mk
-include Src/subdir.mk
-include subdir.mk
-include objects.mk
ifneq ($(MAKECMDGOALS),clean)
ifneq ($(strip $(C_DEPS)),)
-include $(C_DEPS)
endif
endif
-include ../makefile.defs
# Add inputs and outputs from these tool invocations to the build variables
# All Target
all: libsmartos.a
# Tool invocations
libsmartos.a: $(OBJS)
@echo 'Building target: $@'
@echo 'Invoking: GNU archiver'
ar rcs "libsmartos.a" $(USER_OBJS) $(OBJS) $(LIBS)
@echo 'Finished building target: $@'
@echo ' '
# Other Targets
clean:
-$(RM) $(LIB)$(OBJS)$(C_DEPS) libsmartos.a
-@echo ' '
.PHONY: all clean dependents
-include ../makefile.targets

View File

@ -1,8 +0,0 @@
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
USER_OBJS :=
LIBS :=

View File

@ -1,15 +0,0 @@
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
ASM_SRCS :=
C_SRCS :=
O_SRCS :=
LIB :=
OBJS :=
C_DEPS :=
# Every subdirectory with source files must be described here
SUBDIRS := \
Src \

View File

@ -1,15 +0,0 @@
################################################################################
# Automatically-generated file. Do not edit!
################################################################################
ASM_SRCS :=
C_SRCS :=
O_SRCS :=
LIB :=
OBJS :=
C_DEPS :=
# Every subdirectory with source files must be described here
SUBDIRS := \
Src \

View File

@ -1,191 +1,315 @@
#include <ucps2-intrin.h>
#include "spinlock.h"
//#define OSP_APE_SPAIN_LOCK_ADDR 0x931FF00
#define OSP_APE_SPAIN_LOCK_ADDR (0x931FF00-0x400)
#define SPINLOCK_BIT_MAP_ADDR (0x931fb40)
#define DEBUG_NR 16
#define LOCK_BIND_FLAG_ADDR 0x931ff60
unsigned int spin_debug_switch = 0;
unsigned int g_unspinlock_loop = 0;
unsigned int g_ddr_spinlock_loop = 0;
#define FREE_VALUE 0x45
typedef unsigned int uint32_t;
#define spin_do_write(a,v) __ucps2_store_ext_mem((void *)a, (uint32_t)v, f_W)
#define spin_do_read(ptr) __ucps2_load_ext_mem_v((char*)ptr, f_W)
#define spin_do_write(a,v) __ucps2_store_ext_mem((void *)(a), (uint32_t)v, f_W)
#define spin_do_read(ptr) __ucps2_load_ext_mem_v((char*)(ptr), f_W)
int spin_debug_switch = 0;
int g_spinlock_count = 0;
int g_unspinlock_count = 0;
int g_spinlock_loop = 0;
unsigned int g_spinlock_count[DEBUG_NR] = {0};
unsigned int g_unspinlock_count[DEBUG_NR] = {0};
unsigned int g_spinlock_loop[DEBUG_NR] = {0};
unsigned int g_spin_count[DEBUG_NR] = {0};
unsigned char *use_flag = (char*)SPINLOCK_BIT_MAP_ADDR;
spin_debug_t *spin_debug_info;
int test_bit(void *s,unsigned int index)
static int test_bit(void *s,unsigned int index)
{
unsigned char *f_bit = s;
f_bit += index >>3;
return ((*f_bit&(1 <<((index%8)))) != 0);
unsigned char *f_bit = s;
f_bit += index >>3;
return ((*f_bit&(1 <<((index%8)))) != 0);
}
void set_bit(void *s,unsigned int index)
static void set_bit(void *s,unsigned int index)
{
unsigned char *f_bit = s;
f_bit += index >> 3;
*f_bit |= 1<<(index%8);
unsigned char *f_bit = s;
f_bit += index >> 3;
*f_bit |= 1<<(index%8);
}
void clear_bit(void *s,unsigned int index)
static void clear_bit(void *s,unsigned int index)
{
unsigned char *f_bit = s;
f_bit += index >> 3;
*f_bit &= ~(1 <<(index%8));
unsigned char *f_bit = s;
f_bit += index >> 3;
*f_bit &= ~(1 <<(index%8));
}
int smart_spin_debug_init(unsigned int debug_base_addr, int len_bytes)
/*
:smart_spin_debug_init
:lock_idx
1--15
*/
int smart_spin_debug_init(int lock_idx,unsigned int debug_base_addr, int len_bytes)
{
if(debug_base_addr <= 0x10000000)
{
return -1;
}
if (len_bytes < 12)
{
return -2;
}
if((lock_idx < 1)||(lock_idx > 15))
{
return -1;
}
if(debug_base_addr <= 0x10000000)
{
return -1;
}
if (len_bytes < 16)
{
return -2;
}
spin_debug_switch = 1;
spin_debug_info = (spin_debug_t *)debug_base_addr;
spin_debug_info = (spin_debug_t *)debug_base_addr;
return 0;
return 0;
}
void spin_debug(void * addr , uint32_t v)
{
if(spin_debug_switch == 1)
{
spin_do_write(addr, v);
}
if(spin_debug_switch == 1)
{
spin_do_write(addr, v);
__ucps2_synch(0);
}
}
int smart_spinlock_init(int lock_index)
{
int i;
if((lock_index < 0)||(lock_index > 15))
{
return -1;
}
if(test_bit(use_flag,lock_index))
{
return -2; //
}
set_bit(use_flag,lock_index);
*(volatile unsigned int *)(OSP_APE_SPAIN_LOCK_ADDR+lock_index*4) = 0;
return 0;
/*
if(*(volatile unsigned int *)(OSP_APE_SPAIN_LOCK_ADDR+lock_index*4) == 0)
{
return 0;
}
else if(*(volatile unsigned int *)(OSP_APE_SPAIN_LOCK_ADDR+lock_index*4) > 0)
{
return 1;
}
return -1;
*/
int i;
if((lock_index < 1)||(lock_index > 15))
{
return -1;
}
if(test_bit(use_flag,lock_index))
{
return -2; //
}
set_bit(use_flag,lock_index);
*(volatile unsigned int *)(OSP_APE_SPAIN_LOCK_ADDR+lock_index*4) = 0;
return 0;
}
void smart_spinlock(int lock_index)
{
spinlock_t lockval;
spinlock_t *lock;
int ret;
int owner;
int next;
if (lock_index >= SLOCK_MAX)
{
return;
}
else
{
lock = (spinlock_t*)(OSP_APE_SPAIN_LOCK_ADDR+lock_index*4);
}
while (1)
{
lockval.slock = __ucps2_atomicld((int *)lock, f_W);
next = ((lockval.slock >> 16) & 0x0000ffff);
owner = next;
next++;
lockval.slock &=0x0000ffff;
lockval.slock |= ((next & 0xffff) << 16);
ret = __ucps2_atomicst((int *)lock, lockval.slock, f_W);
if (1 == ret)
{
break;
}
else
{
}
}
do
{
lockval.slock = __ucps2_atomicld((int *)lock, f_W);
g_spinlock_loop++;
spin_debug(&(spin_debug_info->spin_per_ape.spinlock_loop) , g_spinlock_loop);
} while (owner != ((lockval.slock & 0x0000ffff)));
g_spinlock_loop = 0;
g_spinlock_count++;
spin_debug(&(spin_debug_info->spin_per_ape.spinlock_count) , g_spinlock_count);
spinlock_t lockval;
spinlock_t *lock;
int ret;
int owner;
int next;
if (lock_index > SLOCK_MAX)
{
return;
}
else
{
lock = (spinlock_t*)(OSP_APE_SPAIN_LOCK_ADDR+lock_index*4);
}
while (1)
{
lockval.slock = __ucps2_atomicld((int *)lock, f_W);
next = ((lockval.slock >> 16) & 0x0000ffff);
owner = next;
next++;
lockval.slock &=0x0000ffff;
lockval.slock |= ((next & 0xffff) << 16);
ret = __ucps2_atomicst((int *)lock, lockval.slock, f_W);
if (1 == ret)
{
break;
}
else
{
g_spin_count[lock_index]++;
spin_debug(&(spin_debug_info->spin_per_ape.g_spin_count) , g_spin_count[lock_index]);
}
}
do
{
lockval.slock = __ucps2_atomicld((int *)lock, f_W);
g_spinlock_loop[lock_index]++;
spin_debug(&(spin_debug_info->spin_per_ape.spinlock_loop) , g_spinlock_loop[lock_index]);
} while (owner != ((lockval.slock & 0x0000ffff)));
g_spinlock_count[lock_index]++;
spin_debug(&(spin_debug_info->spin_per_ape.spinlock_count) , g_spinlock_count[lock_index]);
}
void smart_spinunlock(int lock_index)
{
spinlock_t lockval;
int ret;
int atomfail_unlock = 0;
spinlock_t * lock;
unsigned int temp_owner = 0;
if (lock_index >= SLOCK_MAX)
{
return;
}
else
{
lock = (spinlock_t*)(OSP_APE_SPAIN_LOCK_ADDR+lock_index*4);
}
g_unspinlock_count++;
spin_debug(&(spin_debug_info->spin_per_ape.unspinlock_count) , g_unspinlock_count);
while (1)
{
lockval.slock = __ucps2_atomicld((int *)lock, f_W);
temp_owner = (lockval.slock & 0x0000ffff);
temp_owner ++;
lockval.slock &= 0xffff0000;
lockval.slock |= (temp_owner & 0x0000ffff);
ret = __ucps2_atomicst((int *)lock, lockval.slock, f_W);
if (1 == ret)
{
break;
}
else
{
}
}
spinlock_t lockval;
int ret;
int atomfail_unlock = 0;
spinlock_t * lock;
unsigned int temp_owner = 0;
if (lock_index > SLOCK_MAX)
{
return;
}
else
{
lock = (spinlock_t*)(OSP_APE_SPAIN_LOCK_ADDR+lock_index*4);
}
while (1)
{
lockval.slock = __ucps2_atomicld((int *)lock, f_W);
temp_owner = (lockval.slock & 0x0000ffff);
temp_owner ++;
lockval.slock &= 0xffff0000;
lockval.slock |= (temp_owner & 0x0000ffff);
ret = __ucps2_atomicst((int *)lock, lockval.slock, f_W);
if (1 == ret)
{
break;
}
else
{
// g_unspinlock_loop++;
// spin_debug(&(spin_debug_info->spin_per_ape.unspinlock_loop) , g_unspinlock_loop);
}
}
g_unspinlock_count[lock_index]++;
spin_debug(&(spin_debug_info->spin_per_ape.unspinlock_count) , g_unspinlock_count[lock_index]);
}
/*
:lock_idx
1--15
*/
int smart_get_spin_loop_cnt(int lock_idx)
{
return g_spinlock_loop[lock_idx];
}
/*
:lock_idx
1--15
*/
int smart_get_spin_cnt(int lock_idx)
{
return g_spin_count[lock_idx];
}
/*
:lock_idx
1--15
*/
int smart_get_spinlock_cnt(int lock_idx)
{
return g_spinlock_count[lock_idx];
}
/*
:lock_idx
1--15
*/
int smart_get_unspinlock_cnt(int lock_idx)
{
return g_unspinlock_count[lock_idx];
}
int smart_ddr_spinlock_init(ddr_spinlock_t *val)
{
int i;
int init_val = 0;
if(spin_do_read(val->flag_addr) == 0xab3f)
{
return -2;
}
spin_do_write(val->flag_addr,0xab3f);
spin_do_write(val->lock_addr,0);
return 0;
}
void smart_ddr_spinlock(ddr_spinlock_t *val)
{
spinlock_t lockval;
volatile unsigned int *lock;
int ret;
int owner;
int next;
int loop;
lock = (volatile unsigned int*)(val->lock_addr);
while (1)
{
lockval.slock = __ucps2_atomicld((int *)lock, f_W);
next = ((lockval.slock >> 16) & 0x0000ffff);
owner = next;
next++;
lockval.slock &=0x0000ffff;
lockval.slock |= ((next & 0xffff) << 16);
ret = __ucps2_atomicst((int *)lock, lockval.slock, f_W);
if (1 == ret)
{
break;
}
else
{
}
}
do
{
lockval.slock = __ucps2_atomicld((int *)lock, f_W);
g_ddr_spinlock_loop++;
} while (owner != ((lockval.slock & 0x0000ffff)));
}
void smart_ddr_spinunlock(ddr_spinlock_t *val)
{
spinlock_t lockval;
int ret;
volatile unsigned int * lock;
unsigned int temp_owner = 0;
lock =(volatile unsigned int*)val->lock_addr;
while (1)
{
lockval.slock = __ucps2_atomicld((int *)lock, f_W);
temp_owner = (lockval.slock & 0x0000ffff);
temp_owner ++;
lockval.slock &= 0xffff0000;
lockval.slock |= (temp_owner & 0x0000ffff);
ret = __ucps2_atomicst((int *)lock, lockval.slock, f_W);
if (1 == ret)
{
break;
}
else
{
// g_ddr_unspinlock_loop++;
// spin_do_write(val->unlock_loop_addr,g_ddr_unspinlock_loop);
}
}
}

View File

@ -14,45 +14,144 @@ typedef enum
typedef struct{
union
{
unsigned int slock;
unsigned int slock;
};
}spinlock_t;
#define APE_NR 12
typedef struct{
int spinlock_count;
int unspinlock_count;
int spinlock_loop;
unsigned int spinlock_count;
unsigned int unspinlock_count;
unsigned int spinlock_loop;
unsigned int g_spin_count;
// unsigned int unspinlock_loop;
}spin_db_info ;
typedef struct{
// spin_db_info spin_per_ape[APE_NR];
spin_db_info spin_per_ape;
// spin_db_info spin_per_ape[APE_NR];
spin_db_info spin_per_ape;
}spin_debug_t;
typedef struct
{
unsigned int lock_addr; //锁物理地址
unsigned int flag_addr; // 锁标志物理地址
}ddr_spinlock_t;
extern int smart_spinlock_init(int lock_index);
extern void smart_spinlock(int lock_index);
extern void smart_spinunlock(int lock_index);
extern int smart_spin_debug_init(unsigned int debug_base_addr, int len_bytes);
/*
smart_spin_debug_init
: lock_idx
debug_base_addr
: len_bytes
: int
0
: 0
lock_idx ,buf
len_bytes sizeof(spin_debug_t)
spin_debug_t
*/
extern int smart_spin_debug_init(int lock_idx,unsigned int debug_base_addr, int len_bytes);
static inline void smart_spinlock_irq(int lock)
/*
:lock_idx
1--15
*/
extern int smart_get_spin_loop_cnt(int lock_idx);
/*
:lock_idx
1--15
*/
extern int smart_get_spin_cnt(int lock_idx);
/*
:lock_idx
1--15
*/
extern int smart_get_spinlock_cnt(int lock_idx);
/*
:lock_idx
1--15
*/
extern int smart_get_unspinlock_cnt(int lock_idx);
extern int smart_ddr_spinlock_init(ddr_spinlock_t *val);
extern void smart_ddr_spinlock(ddr_spinlock_t *val);
extern void smart_ddr_spinunlock(ddr_spinlock_t *val);
/*
smart_ddr_spinlock_irq
: val
: ddr_spinlock_t
:
: 使
*/
static inline void smart_ddr_spinlock_irq(ddr_spinlock_t *d_lock)
{
__ucps2_IntEn(f_Disable);
smart_spinlock(lock);
__ucps2_IntEn(f_Disable);
smart_ddr_spinlock(d_lock);
}
/*
smart_ddr_spinunlock_irqrestore
: d_lock
: ddr_spinlock_t
:
: 使
*/
static inline void smart_ddr_spinunlock_irqrestore(ddr_spinlock_t *d_lock)
{
smart_ddr_spinunlock(d_lock);
__ucps2_IntEn(f_Enable);
}
/*
smart_spinlock_irq
: lock
: int
:
: 使
*/
static inline void smart_spinlock_irq(int lock)
{
__ucps2_IntEn(f_Disable);
smart_spinlock(lock);
}
/*
smart_spinunlock_irqrestore
: d_lock
: int
:
: 使
*/
static inline void smart_spinunlock_irqrestore(int lock)
{
smart_spinunlock(lock);
__ucps2_IntEn(f_Enable);
smart_spinunlock(lock);
__ucps2_IntEn(f_Enable);
}

Binary file not shown.