| /* |
| * Copyright (c) 2019 Intel Corporation |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| #define DISABLE_SYSCALL_TRACING |
| |
| #include <zephyr/kernel.h> |
| #include <tracing_test.h> |
| #include <tracing_test_syscall.h> |
| #include <zephyr/tracing/tracing_format.h> |
| |
| void sys_trace_k_thread_switched_out(void) |
| { |
| struct k_thread *thread; |
| |
| thread = k_current_get(); |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_switched_in(void) |
| { |
| struct k_thread *thread; |
| |
| thread = k_current_get(); |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_priority_set(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_create(struct k_thread *thread, size_t stack_size, |
| int prio) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_start(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_abort(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_suspend(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_resume(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_resume_exit(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_ready(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_sched_ready(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_sched_pend(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_sched_abort(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_sched_resume(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_sched_suspend(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_sleep_enter(k_timeout_t timeout) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_k_thread_sleep_exit(k_timeout_t timeout, int ret) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_k_thread_usleep_enter(int32_t us) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_k_thread_usleep_exit(int32_t us, int ret) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_k_thread_busy_wait_enter(uint32_t usec_to_wait) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_k_thread_busy_wait_exit(uint32_t usec_to_wait) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_k_thread_abort_enter(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_abort_exit(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_yield(void) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_thread_yield(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_wakeup(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_pend(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_info(struct k_thread *thread) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_name_set(struct k_thread *thread, int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, thread); |
| } |
| |
| void sys_trace_k_thread_sched_lock(void) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_port_trace_k_thread_sched_unlock(void) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| |
| void sys_trace_k_thread_join_blocking(struct k_thread *thread, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s %p, timeout: %u\n", __func__, thread, (uint32_t)timeout.ticks); |
| } |
| |
| void sys_trace_k_thread_join_exit(struct k_thread *thread, k_timeout_t timeout, int ret) |
| { |
| TRACING_STRING("%s %p, timeout: %u\n", __func__, thread, (uint32_t)timeout.ticks); |
| } |
| |
| void sys_trace_isr_enter(void) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_isr_exit(void) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_isr_exit_to_scheduler(void) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_idle(void) |
| { |
| TRACING_STRING("%s\n", __func__); |
| } |
| |
| void sys_trace_k_condvar_broadcast_enter(struct k_condvar *condvar) |
| { |
| TRACING_STRING("%s: %p\n", __func__, condvar); |
| } |
| |
| void sys_trace_k_condvar_broadcast_exit(struct k_condvar *condvar, int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, condvar); |
| } |
| |
| void sys_trace_k_condvar_init(struct k_condvar *condvar, int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, condvar); |
| } |
| |
| void sys_trace_k_condvar_signal_enter(struct k_condvar *condvar) |
| { |
| TRACING_STRING("%s: %p\n", __func__, condvar); |
| } |
| |
| void sys_trace_k_condvar_signal_blocking(struct k_condvar *condvar) |
| { |
| TRACING_STRING("%s: %p\n", __func__, condvar); |
| } |
| |
| void sys_trace_k_condvar_signal_exit(struct k_condvar *condvar, int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, condvar); |
| } |
| |
| void sys_trace_k_condvar_wait_enter(struct k_condvar *condvar, struct k_mutex *mutex, |
| k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p\n", __func__, condvar); |
| } |
| |
| void sys_trace_k_condvar_wait_exit(struct k_condvar *condvar, struct k_mutex *mutex, |
| k_timeout_t timeout, int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, condvar); |
| } |
| |
| |
| void sys_trace_k_sem_init(struct k_sem *sem, int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, sem); |
| } |
| void sys_trace_k_sem_give_enter(struct k_sem *sem) |
| { |
| TRACING_STRING("%s: %p\n", __func__, sem); |
| } |
| |
| void sys_trace_k_sem_take_enter(struct k_sem *sem, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p, timeout: %u\n", __func__, sem, (uint32_t)timeout.ticks); |
| } |
| |
| void sys_trace_k_sem_take_exit(struct k_sem *sem, k_timeout_t timeout, int ret) |
| { |
| TRACING_STRING("%s: %p, timeout: %u\n", __func__, sem, (uint32_t)timeout.ticks); |
| } |
| |
| void sys_trace_k_sem_take_blocking(struct k_sem *sem, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p, timeout: %u\n", __func__, sem, (uint32_t)timeout.ticks); |
| } |
| |
| void sys_trace_k_sem_reset(struct k_sem *sem) |
| { |
| TRACING_STRING("%s: %p\n", __func__, sem); |
| } |
| |
| void sys_trace_k_mutex_init(struct k_mutex *mutex, int ret) |
| { |
| TRACING_STRING("%s: %p, returns %d\n", __func__, mutex, ret); |
| } |
| |
| void sys_trace_k_mutex_lock_enter(struct k_mutex *mutex, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p, timeout: %u\n", __func__, mutex, (uint32_t)timeout.ticks); |
| } |
| |
| void sys_trace_k_mutex_lock_exit(struct k_mutex *mutex, k_timeout_t timeout, int ret) |
| { |
| TRACING_STRING("%s: %p, timeout: %u, returns: %d\n", __func__, mutex, |
| (uint32_t)timeout.ticks, ret); |
| } |
| |
| void sys_trace_k_mutex_lock_blocking(struct k_mutex *mutex, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p, timeout: %u\n", __func__, mutex, (uint32_t)timeout.ticks); |
| } |
| |
| void sys_trace_k_mutex_unlock_enter(struct k_mutex *mutex) |
| { |
| TRACING_STRING("%s: %p\n", __func__, mutex); |
| } |
| |
| |
| void sys_trace_k_mutex_unlock_exit(struct k_mutex *mutex, int ret) |
| { |
| TRACING_STRING("%s: %p, return: %d\n", __func__, mutex, ret); |
| } |
| |
| void sys_trace_k_thread_sched_set_priority(struct k_thread *thread, int prio) |
| { |
| TRACING_STRING("%s: %p, priority: %d\n", __func__, thread, prio); |
| } |
| |
| void sys_trace_k_timer_start(struct k_timer *timer, k_timeout_t duration, |
| k_timeout_t period) |
| { |
| TRACING_STRING("%s: %p, duration: %d, period: %d\n", __func__, timer, |
| (uint32_t)duration.ticks, (uint32_t)period.ticks); |
| } |
| |
| void sys_trace_k_timer_init(struct k_timer *timer, k_timer_expiry_t expiry_fn, |
| k_timer_expiry_t stop_fn) |
| { |
| TRACING_STRING("%s: %p\n", __func__, timer); |
| } |
| |
| void sys_trace_k_timer_stop(struct k_timer *timer) |
| { |
| TRACING_STRING("%s: %p\n", __func__, timer); |
| } |
| void sys_trace_k_timer_status_sync_blocking(struct k_timer *timer) |
| { |
| TRACING_STRING("%s: %p\n", __func__, timer); |
| } |
| |
| void sys_trace_k_timer_status_sync_exit(struct k_timer *timer, uint32_t result) |
| { |
| TRACING_STRING("%s: %p\n", __func__, timer); |
| } |
| |
| |
| void sys_trace_k_heap_init(struct k_heap *h, void *mem, size_t bytes) |
| { |
| TRACING_STRING("%s: %p\n", __func__, h); |
| } |
| |
| void sys_trace_k_heap_aligned_alloc_enter(struct k_heap *h, size_t bytes, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p\n", __func__, h); |
| } |
| |
| void sys_trace_k_heap_alloc_enter(struct k_heap *h, size_t bytes, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p\n", __func__, h); |
| } |
| |
| void sys_trace_k_heap_free(struct k_heap *h, void *mem) |
| { |
| TRACING_STRING("%s: %p\n", __func__, h); |
| } |
| |
| void sys_trace_k_heap_aligned_alloc_blocking(struct k_heap *h, size_t bytes, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p\n", __func__, h); |
| } |
| |
| void sys_trace_k_heap_alloc_exit(struct k_heap *h, size_t bytes, k_timeout_t timeout, void *ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, h); |
| } |
| |
| void sys_trace_k_heap_aligned_alloc_exit(struct k_heap *h, size_t bytes, |
| k_timeout_t timeout, void *ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, h); |
| } |
| |
| void sys_trace_k_heap_sys_k_free_enter(struct k_heap *h, struct k_heap **hr) |
| { |
| TRACING_STRING("%s: %p\n", __func__, h); |
| } |
| |
| void sys_trace_k_heap_sys_k_free_exit(struct k_heap *h, struct k_heap **hr) |
| { |
| TRACING_STRING("%s: %p\n", __func__, h); |
| } |
| |
| void sys_trace_k_queue_init(struct k_queue *queue) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_cancel_wait(struct k_queue *queue) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_append_enter(struct k_queue *queue, void *data) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_append_exit(struct k_queue *queue, void *data) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_queue_insert_enter(struct k_queue *queue, bool alloc, void *data) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_queue_insert_exit(struct k_queue *queue, bool alloc, void *data, int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_get_blocking(struct k_queue *queue, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_get_exit(struct k_queue *queue, k_timeout_t timeout, void *ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_peek_head(struct k_queue *queue, void *ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_peek_tail(struct k_queue *queue, void *ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_alloc_append_enter(struct k_queue *queue, void *data) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_alloc_append_exit(struct k_queue *queue, void *data, int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_alloc_prepend_enter(struct k_queue *queue, void *data) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| void sys_trace_k_queue_alloc_prepend_exit(struct k_queue *queue, void *data, int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, queue); |
| } |
| |
| |
| void sys_trace_k_mem_slab_alloc_enter(struct k_mem_slab *slab, void **mem, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p\n", __func__, slab); |
| } |
| |
| void sys_trace_k_mem_slab_alloc_blocking(struct k_mem_slab *slab, void **mem, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p\n", __func__, slab); |
| } |
| |
| void sys_trace_k_mem_slab_alloc_exit(struct k_mem_slab *slab, void **mem, k_timeout_t timeout, |
| int ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, slab); |
| } |
| |
| void sys_trace_k_mem_slab_free_enter(struct k_mem_slab *slab, void **mem) |
| { |
| TRACING_STRING("%s: %p\n", __func__, slab); |
| } |
| |
| void sys_trace_k_mem_slab_free_exit(struct k_mem_slab *slab, void **mem) |
| { |
| TRACING_STRING("%s: %p\n", __func__, slab); |
| } |
| |
| void sys_trace_k_fifo_put_enter(struct k_fifo *fifo, void *data) |
| { |
| TRACING_STRING("%s: %p\n", __func__, fifo); |
| } |
| |
| void sys_trace_k_fifo_put_exit(struct k_fifo *fifo, void *data) |
| { |
| TRACING_STRING("%s: %p\n", __func__, fifo); |
| } |
| |
| void sys_trace_k_fifo_get_enter(struct k_fifo *fifo, k_timeout_t timeout) |
| { |
| TRACING_STRING("%s: %p\n", __func__, fifo); |
| } |
| |
| void sys_trace_k_fifo_get_exit(struct k_fifo *fifo, k_timeout_t timeout, void *ret) |
| { |
| TRACING_STRING("%s: %p\n", __func__, fifo); |
| } |
| |
| void sys_trace_syscall_enter(uint32_t syscall_id, const char *syscall_name) |
| { |
| TRACING_STRING("%s: %s (%u) enter\n", __func__, syscall_name, syscall_id); |
| } |
| |
| void sys_trace_syscall_exit(uint32_t syscall_id, const char *syscall_name) |
| { |
| TRACING_STRING("%s: %s (%u) exit\n", __func__, syscall_name, syscall_id); |
| } |
| |
| void sys_trace_k_thread_foreach_unlocked_enter(k_thread_user_cb_t user_cb, void *data) |
| { |
| TRACING_STRING("%s: %p (%p) enter\n", __func__, user_cb, data); |
| } |
| |
| void sys_trace_k_thread_foreach_unlocked_exit(k_thread_user_cb_t user_cb, void *data) |
| { |
| TRACING_STRING("%s: %p (%p) exit\n", __func__, user_cb, data); |
| } |