Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
shell_adsp_memory_window.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2024 Intel Corporation
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
12
13#ifndef ZEPHYR_INCLUDE_SHELL_SHELL_ADSP_MEMORY_WINDOW_H_
14#define ZEPHYR_INCLUDE_SHELL_SHELL_ADSP_MEMORY_WINDOW_H_
15
16#include <zephyr/kernel.h>
17#include <zephyr/shell/shell.h>
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
24extern const struct shell_transport_api shell_adsp_memory_window_transport_api;
25
26struct sys_winstream;
27
29struct shell_adsp_memory_window {
31 shell_transport_handler_t shell_handler;
32
33 struct k_timer timer;
34
36 void *shell_context;
37
39 struct sys_winstream *ws_rx;
40
42 struct sys_winstream *ws_tx;
43
45 uint32_t read_seqno;
46};
48
55
61#define SHELL_ADSP_MEMORY_WINDOW_DEFINE(_name) \
62 static struct shell_adsp_memory_window _name##_shell_adsp_memory_window;\
63 struct shell_transport _name = { \
64 .api = &shell_adsp_memory_window_transport_api, \
65 .ctx = &_name##_shell_adsp_memory_window, \
66 }
67
77
79
80#ifdef __cplusplus
81}
82#endif
83
84#endif /* ZEPHYR_INCLUDE_SHELL_SHELL_ADSP_MEMORY_WINDOW_H_ */
const struct shell * shell_backend_adsp_memory_window_get_ptr(void)
This function provides pointer to shell ADSP memory window backend instance.
void(* shell_transport_handler_t)(enum shell_transport_evt evt, void *context)
Shell transport event handler callback.
Definition shell.h:831
Public kernel APIs.
Header file for the shell subsystem.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
Unified shell transport interface.
Definition shell.h:863
Shell instance internals.
Definition shell.h:1128
Lockless shared memory byte stream IPC.
Definition winstream.h:25