
2. update Feature Enhancement#1360 to dev_ck_v2.1 3. add test macro: OSP_DEBUG_TEST 4. TASK_MAX: 64 --> 20 (task num and timer task num) 5. one slot supports max 20 tasks 6. TEST: 6.1 spu(case0)+arm(case0): pass 6.2 spu(case14)+arm(case20): pass 6.3 spu(case20)+arm(case20): pass 6.4 spu(case21)+arm(case21): pass 6.5 spu(case34)+arm(case5): pass 6.6 spu(case44)+arm(case5): pass
53 lines
1.5 KiB
C
53 lines
1.5 KiB
C
// +FHDR------------------------------------------------------------
|
||
// Copyright (c) 2022 SmartLogic.
|
||
// ALL RIGHTS RESERVED
|
||
// -----------------------------------------------------------------
|
||
// Filename : log_client.h
|
||
// Author : xianfeng.du
|
||
// Created On : 2023-02-06
|
||
// Last Modified :
|
||
// -----------------------------------------------------------------
|
||
// Description:
|
||
//
|
||
//
|
||
// -FHDR------------------------------------------------------------
|
||
|
||
#ifndef __SPU_LOG_CLIENT_H__
|
||
#define __SPU_LOG_CLIENT_H__
|
||
|
||
#include "typedef.h"
|
||
#include "ucp_handshake.h"
|
||
|
||
#define SPU_LOG_CLIENT_BUF_BASE (0xB2E00000) /* 一共15MB,当前只用6+2=8MB */
|
||
#define SPU_LOG_CLIENT_BUF_SIZE (512) /* Log软件队列一个队列的消息长512Bytes */
|
||
#define SPU_LOG_CLIENT_BUF_DEPTH (128) /* Log软件队列每个APE的深度为128个消息*/
|
||
|
||
typedef struct tSpuLogClientInfo {
|
||
uint32_t alloc;
|
||
uint32_t bufBase;
|
||
uint32_t bufSize;
|
||
uint16_t ringSize;
|
||
uint16_t ringMask;
|
||
} SpuLogClientInfo_t;
|
||
|
||
typedef struct tSpuLogCommonInfo {
|
||
uint32_t alloc[MAX_NUM_SPU];
|
||
} SpuLogCommonInfo_t;
|
||
|
||
typedef union tSpuLogMsgInfo {
|
||
uint32_t value;
|
||
struct {
|
||
uint32_t cell_id : 4;
|
||
uint32_t core_id : 4;
|
||
uint32_t buf_idx : 8;
|
||
uint32_t buf_size : 16;
|
||
//uint32_t rsv : 0;
|
||
};
|
||
} SpuLogMsgInfo_t;
|
||
|
||
void spu_log_client_init(void);
|
||
uint8_t* spu_log_client_mem_alloc(uint16_t* idx);
|
||
|
||
#endif /* __SPU_LOG_CLIENT_H__ */
|
||
|