WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
log_oam_status.h
浏览该文件的文档.
1/*
2 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2018-2020. All rights reserved.
3 * Description: log OAM pcm producer interface
4 */
5#ifndef LOG_OAM_STATUS_H
6#define LOG_OAM_STATUS_H
7
8#include "log_oam_logger.h"
9#include "log_printf.h"
10
11#define OML_STATUS_ADD_LENGTH (13)
12#define OM_STATUS_DATA_MAX_SIZE (60)
13
14#if ((defined BUILD_IN_ROM) || (USE_COMPRESS_LOG_INSTEAD_OF_SDT_LOG == NO))
15#ifndef SDT_LOG_BY_UART
16#define OML_BT_STATE_STORE(msg_id, length, ulparam1, ulparam2, ulparam3, ulparam4) { \
17 log_oam_status_store(OM_STATUS_STATE, msg_id, OM_BT, length, ulparam1, ulparam2, ulparam3, ulparam4); \
18 }
19#define OML_BT_MESSAGE_STORE(msg_id, length, ulparam1, ulparam2, ulparam3, ulparam4) { \
20 log_oam_status_store(OM_STATUS_MESG, msg_id, OM_BT, length, ulparam1, ulparam2, ulparam3, ulparam4); \
21 }
22#define OML_BT_DATA_STORE(msg_id, length, data) { \
23 log_oml_status_write(OM_STATUS_DATA, msg_id, OM_BT, length, data); \
24 }
25#define OML_BT_STRUCT_STORE(prime_id, msg_id, length, data) { \
26 log_oml_status_write(prime_id, msg_id, OM_BT, length, data); \
27 }
28#else
29#define OML_BT_STATE_STORE(usmsg_id, uslength, ulparam1, ulparam2, ulparam3, ulparam4) { \
30 oml_status_store(OM_STATUS_STATE, usmsg_id, OM_BT, uslength, ulparam1, ulparam2, ulparam3, ulparam4); \
31}
32#define OML_BT_MESSAGE_STORE(usmsg_id, uslength, ulparam1, ulparam2, ulparam3, ulparam4) { \
33 oml_status_store(OM_STATUS_MESG, usmsg_id, OM_BT, uslength, ulparam1, ulparam2, ulparam3, ulparam4); \
34}
35#define OML_BT_DATA_STORE(usmsg_id, uslength, puc_data) { \
36 oml_status_write(OM_STATUS_DATA, usmsg_id, OM_BT, uslength, puc_data); \
37}
38#define OML_BT_STRUCT_STORE(ucprime_id, usmsg_id, uslength, puc_data) { \
39 oml_status_write(ucprime_id, usmsg_id, OM_BT, uslength, puc_data); \
40}
41#endif
42#else /* (defined BUILD_IN_ROM) || (USE_COMPRESS_LOG_INSTEAD_OF_SDT_LOG == NO) */
43#define OML_BT_STATE_STORE(msg_id, length, ulparam1, ulparam2, ulparam3, ulparam4) \
44 do { \
45 compress_printf(msg_id, press_params(BTC_MAGIC_LOG_CODE, LOG_LEVEL_INFO, length), \
46 ulparam1, ulparam2, ulparam3, ulparam4); \
47 } while (0)
48#define OML_BT_MESSAGE_STORE(msg_id, length, ulparam1, ulparam2, ulparam3, ulparam4) \
49 do { \
50 compress_printf(msg_id, press_params(BTC_MAGIC_LOG_CODE, LOG_LEVEL_INFO, length), \
51 ulparam1, ulparam2, ulparam3, ulparam4); \
52 } while (0)
53#define OML_BT_DATA_STORE(msg_id, length, data)
54#define OML_BT_STRUCT_STORE(prime_id, msg_id, length, data)
55#endif /* (defined BUILD_IN_ROM) || (USE_COMPRESS_LOG_INSTEAD_OF_SDT_LOG == NO) */
56
64
65typedef struct _om_status_data_stru_t {
66 om_msg_header_stru_t header;
67 uint16_t msg_id;
68 uint16_t data_len;
70 uint8_t frame_tail;
72
73typedef void(*log_oam_status_store_handler)(uint8_t prime_id, uint16_t msg_id, uint16_t mode,
74 uint16_t length, const uint32_t *param);
75int32_t pf_feature_set(uint32_t feature, uint8_t set);
76int32_t pf_feature_get(uint32_t feature);
77void log_oml_status_packet(om_status_data_stru_t *status_entry, uint8_t prime_id,
78 uint16_t msg_id, uint16_t length, const uint8_t *buffer);
79uint32_t log_oml_status_write(uint8_t prime_id, uint16_t msg_id, uint16_t mode, uint16_t length, const uint8_t *buffer);
81void log_oam_status_store(uint8_t prime_id, uint16_t msg_id, uint16_t mode, uint32_t length, ...);
82void log_oam_status_store_deal(uint8_t prime_id, uint16_t msg_id, uint16_t mode, uint16_t length,
83 const uint32_t *param);
86void log_oam_status_store_trigger_callback(uint8_t prime_id, uint16_t msg_id, uint16_t mode,
87 uint16_t length, const uint32_t *param);
88#endif
struct _om_status_data_stru_t om_status_data_stru_t
uint32_t log_oml_status_write(uint8_t prime_id, uint16_t msg_id, uint16_t mode, uint16_t length, const uint8_t *buffer)
Definition log_oam_status.c:59
void log_oml_status_packet(om_status_data_stru_t *status_entry, uint8_t prime_id, uint16_t msg_id, uint16_t length, const uint8_t *buffer)
Definition log_oam_status.c:34
void(* log_oam_status_store_handler)(uint8_t prime_id, uint16_t msg_id, uint16_t mode, uint16_t length, const uint32_t *param)
Definition log_oam_status.h:73
void log_oam_status_store_unregister_callback(void)
Definition log_oml_ota_rom.c:93
void log_oam_status_store_init(void)
Definition log_oam_status.c:111
int32_t pf_feature_set(uint32_t feature, uint8_t set)
Definition log_oam_status.c:19
void log_oam_status_store_register_callback(log_oam_status_store_handler callback)
Definition log_oml_ota_rom.c:86
#define OM_STATUS_DATA_MAX_SIZE
Definition log_oam_status.h:12
void log_oam_status_store(uint8_t prime_id, uint16_t msg_id, uint16_t mode, uint32_t length,...)
Definition log_oml_ota_rom.c:67
OM_STATUS_PRIME_ID
Definition log_oam_status.h:57
@ OM_STATUS_STATE
Definition log_oam_status.h:58
@ OM_STATUS_MESG
Definition log_oam_status.h:59
@ OM_STATUS_BUTT
Definition log_oam_status.h:62
@ OM_STATUS_DATA
Definition log_oam_status.h:60
int32_t pf_feature_get(uint32_t feature)
Definition log_oam_status.c:27
void log_oam_status_store_deal(uint8_t prime_id, uint16_t msg_id, uint16_t mode, uint16_t length, const uint32_t *param)
Definition log_oam_status.c:79
void log_oam_status_store_trigger_callback(uint8_t prime_id, uint16_t msg_id, uint16_t mode, uint16_t length, const uint32_t *param)
Definition log_oml_ota_rom.c:98
Definition log_oam_status.h:65
uint16_t msg_id
Definition log_oam_status.h:67
uint8_t frame_tail
Definition log_oam_status.h:70
om_msg_header_stru_t header
Definition log_oam_status.h:66
uint16_t data_len
Definition log_oam_status.h:68
Definition hal_uart_v151_regs_def.h:38