WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
log_memory_definitions.h
浏览该文件的文档.
1/*
2 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2018-2020. All rights reserved.
3 * Description: LOG MEMORY REGION DEFINITIONS.
4 */
5
6#ifndef NON_OS_LOG_MEMORY_DEFINITIONS_H
7#define NON_OS_LOG_MEMORY_DEFINITIONS_H
8
9#include "memory_config.h"
10#include "stdint.h"
11#include "chip_definitions.h"
12#include "platform_core.h"
20typedef enum {
21 LOG_MEMORY_REGION_SECTION_0 = 0, // !< LOG_MEMORY_REGION_SECTION_0 for app core
22#if CORE_NUMS > 1
23 LOG_MEMORY_REGION_SECTION_1, // !< LOG_MEMORY_REGION_SECTION_1 for application core
24#endif
25#if CORE_NUMS > 2
26 LOG_MEMORY_REGION_SECTION_2, // !< LOG_MEMORY_REGION_SECTION_2 for hifi core when dsp exists.
27#endif // !< Otherwise, for gnss core.
28#if defined(CHIP_LIBRA) && (CHIP_LIBRA != 0)
29 LOG_MEMORY_REGION_SECTION_3, // !< LOG_MEMORY_REGION_SECTION_3 for gnss core
30 LOG_MEMORY_REGION_SECTION_4, // !< LOG_MEMORY_REGION_SECTION_4 for sec core
31#endif
32 LOG_MEMORY_REGION_MAX_NUMBER, // !< LOG_MEMORY_REGION_MAX_NUMBER
34
38typedef enum {
39 MASS_MEMORY_REGION_SECTION_0 = 0, // !< MASS_MEMORY_REGION_SECTION_0 for security core
40#if CORE_NUMS > 1
41 MASS_MEMORY_REGION_SECTION_1, // !< MASS_MEMORY_REGION_SECTION_1 for application core
42#endif
43 MASS_MEMORY_REGION_MAX_NUMBER, // !< MASS_MEMORY_REGION_MAX_NUMBER
45
49typedef struct {
50 // reader controlled
51 volatile uint32_t read;
52
53 // writer controlled
54 volatile uint32_t write;
56
60typedef struct {
61 volatile uint32_t read;
62 volatile uint32_t write;
63 volatile uint32_t flow_flag; // index if the buffer is overflow write 0-no, 1-yes
64 volatile uint32_t region_len;
65 volatile uint32_t region_start;
66 volatile uint32_t water_line;
68
77
86
88#define LOG_MEMORY_REGION_CONTROL_BLOCK_POINTER ((const log_memory_region_control_t *)(uintptr_t)LOGGING_REGION_START)
89
93#endif
log_memory_region_section_t
LOG MEMORY REGIONS
Definition log_memory_definitions.h:20
mass_data_memory_region_section_t
MASSDATA MEMORY REGIONS
Definition log_memory_definitions.h:38
@ LOG_MEMORY_REGION_MAX_NUMBER
Definition log_memory_definitions.h:32
@ LOG_MEMORY_REGION_SECTION_0
Definition log_memory_definitions.h:21
@ MASS_MEMORY_REGION_MAX_NUMBER
Definition log_memory_definitions.h:43
@ MASS_MEMORY_REGION_SECTION_0
Definition log_memory_definitions.h:39
Log memory area control structure
Definition log_memory_definitions.h:81
uint32_t length
Definition log_memory_definitions.h:83
Log memory control structure for every section
Definition log_memory_definitions.h:49
volatile uint32_t write
Definition log_memory_definitions.h:54
volatile uint32_t read
Definition log_memory_definitions.h:51
Log memory area control structure
Definition log_memory_definitions.h:72
uint32_t mem_len
Definition log_memory_definitions.h:74
uint32_t region_num
Definition log_memory_definitions.h:73
Mass data memory control structure for every section
Definition log_memory_definitions.h:60
volatile uint32_t region_len
Definition log_memory_definitions.h:64
volatile uint32_t region_start
Definition log_memory_definitions.h:65
volatile uint32_t flow_flag
Definition log_memory_definitions.h:63
volatile uint32_t water_line
Definition log_memory_definitions.h:66
volatile uint32_t read
Definition log_memory_definitions.h:61
volatile uint32_t write
Definition log_memory_definitions.h:62