Zephyr Project API 3.7.0
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
7#ifndef SHELL_ADSP_MEMORY_WINDOW_H__
8#define SHELL_ADSP_MEMORY_WINDOW_H__
9
10#include <zephyr/kernel.h>
11#include <zephyr/shell/shell.h>
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
18
19struct sys_winstream;
20
40
41#define SHELL_ADSP_MEMORY_WINDOW_DEFINE(_name) \
42 static struct shell_adsp_memory_window _name##_shell_adsp_memory_window;\
43 struct shell_transport _name = { \
44 .api = &shell_adsp_memory_window_transport_api, \
45 .ctx = &_name##_shell_adsp_memory_window, \
46 }
47
57
58#ifdef __cplusplus
59}
60#endif
61
62#endif /* SHELL_ADSP_MEMORY_WINDOW_H__ */
void(* shell_transport_handler_t)(enum shell_transport_evt evt, void *context)
Definition shell.h:624
Public kernel APIs.
const struct shell * shell_backend_adsp_memory_window_get_ptr(void)
This function provides pointer to shell ADSP memory window backend instance.
const struct shell_transport_api shell_adsp_memory_window_transport_api
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
Memwindow based shell transport.
Definition shell_adsp_memory_window.h:22
struct sys_winstream * ws_rx
Receive winstream object.
Definition shell_adsp_memory_window.h:32
void * shell_context
Context registered by shell.
Definition shell_adsp_memory_window.h:29
struct k_timer timer
Definition shell_adsp_memory_window.h:26
shell_transport_handler_t shell_handler
Handler function registered by shell.
Definition shell_adsp_memory_window.h:24
struct sys_winstream * ws_tx
Transmit winstream object.
Definition shell_adsp_memory_window.h:35
uint32_t read_seqno
Last read sequence number.
Definition shell_adsp_memory_window.h:38
Unified shell transport interface.
Definition shell.h:646
Shell instance internals.
Definition shell.h:890
Lockless shared memory byte stream IPC.
Definition winstream.h:25