LCOV - code coverage report
Current view: top level - zephyr/shell - shell_adsp_memory_window.h Coverage Total Hit
Test: new.info Lines: 63.6 % 11 7
Test Date: 2025-09-05 16:43:28

            Line data    Source code
       1            0 : /*
       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
      14              : extern "C" {
      15              : #endif
      16              : 
      17            0 : extern const struct shell_transport_api shell_adsp_memory_window_transport_api;
      18              : 
      19              : struct sys_winstream;
      20              : 
      21              : /** Memwindow based shell transport. */
      22            1 : struct shell_adsp_memory_window {
      23              :         /** Handler function registered by shell. */
      24            1 :         shell_transport_handler_t shell_handler;
      25              : 
      26            0 :         struct k_timer timer;
      27              : 
      28              :         /** Context registered by shell. */
      29            1 :         void *shell_context;
      30              : 
      31              :         /** Receive winstream object */
      32            1 :         struct sys_winstream *ws_rx;
      33              : 
      34              :         /** Transmit winstream object */
      35            1 :         struct sys_winstream *ws_tx;
      36              : 
      37              :         /** Last read sequence number */
      38            1 :         uint32_t read_seqno;
      39              : };
      40              : 
      41            0 : #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              : 
      48              : /**
      49              :  * @brief This function provides pointer to shell ADSP memory window backend instance.
      50              :  *
      51              :  * Function returns pointer to the shell ADSP memory window instance. This instance can be
      52              :  * next used with shell_execute_cmd function in order to test commands behavior.
      53              :  *
      54              :  * @returns Pointer to the shell instance.
      55              :  */
      56            1 : const struct shell *shell_backend_adsp_memory_window_get_ptr(void);
      57              : 
      58              : #ifdef __cplusplus
      59              : }
      60              : #endif
      61              : 
      62              : #endif /* SHELL_ADSP_MEMORY_WINDOW_H__ */
        

Generated by: LCOV version 2.0-1