blob: 1f3f153a03a96e96fef781d5731512acf6aea3ce [file] [log] [blame]
/*
* Copyright (c) 2018-2019 Intel Corporation
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef TP_PRIV_H
#define TP_PRIV_H
#ifdef __cplusplus
extern "C" {
#endif
#include <sys/types.h>
#include <string.h>
#include <zephyr/kernel.h>
#include <zephyr/net/net_pkt.h>
#define tp_dbg(fmt, args...) printk("%s: " fmt "\n", __func__, ## args)
#define tp_err(fmt, args...) do { \
printk("%s: Error: " fmt "\n", __func__, ## args); \
k_oops(); \
} while (0)
#define tp_assert(cond, fmt, args...) do { \
if ((cond) == false) { \
printk("%s: Assertion failed: %s, " fmt "\n", \
__func__, #cond, ## args); \
k_oops(); \
} \
} while (0)
#define is(_a, _b) (strcmp((_a), (_b)) == 0)
#define ip_get(_x) ((struct net_ipv4_hdr *) net_pkt_ip_data((_x)))
#define TP_MEM_HEADER_COOKIE 0xAAAAAAAA
#define TP_MEM_FOOTER_COOKIE 0xBBBBBBBB
struct tp_mem {
sys_snode_t next;
const char *file;
int line;
const char *func;
size_t size;
uint32_t *footer;
uint32_t header;
uint8_t mem[];
};
struct tp_nbuf {
sys_snode_t next;
struct net_buf *nbuf;
const char *file;
int line;
};
struct tp_pkt {
sys_snode_t next;
struct net_pkt *pkt;
const char *file;
int line;
};
struct tp_seq {
sys_snode_t next;
const char *file;
int line;
const char *func;
int kind;
int req;
uint32_t value;
uint32_t old_value;
int of;
};
#ifdef __cplusplus
}
#endif
#endif /* TP_PRIV_H */