usb: cdc_acm: disable logging if used for shell with logging
This prevents recursive logging loop when USB CDC ACM is used for shell with logging. Change affects both USB stacks. Signed-off-by: Xudong Zheng <7pkvm5aw@slicealias.com>
This commit is contained in:
parent
2a67664c55
commit
e8c4867806
2 changed files with 13 additions and 9 deletions
|
@ -56,15 +56,17 @@
|
|||
/* definitions */
|
||||
|
||||
#include <zephyr/logging/log.h>
|
||||
#if DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart) \
|
||||
&& defined(CONFIG_LOG_BACKEND_UART) \
|
||||
&& defined(CONFIG_USB_CDC_ACM_LOG_LEVEL) \
|
||||
&& CONFIG_USB_CDC_ACM_LOG_LEVEL != LOG_LEVEL_NONE
|
||||
/* Prevent endless recursive logging loop and warn user about it */
|
||||
#if defined(CONFIG_USB_CDC_ACM_LOG_LEVEL) && CONFIG_USB_CDC_ACM_LOG_LEVEL != LOG_LEVEL_NONE
|
||||
#define CHOSEN_CONSOLE DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart)
|
||||
#define CHOSEN_SHELL DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_shell_uart), zephyr_cdc_acm_uart)
|
||||
#if (CHOSEN_CONSOLE && defined(CONFIG_LOG_BACKEND_UART)) || \
|
||||
(CHOSEN_SHELL && defined(CONFIG_SHELL_LOG_BACKEND))
|
||||
#warning "USB_CDC_ACM_LOG_LEVEL forced to LOG_LEVEL_NONE"
|
||||
#undef CONFIG_USB_CDC_ACM_LOG_LEVEL
|
||||
#define CONFIG_USB_CDC_ACM_LOG_LEVEL LOG_LEVEL_NONE
|
||||
#endif
|
||||
#endif
|
||||
LOG_MODULE_REGISTER(usb_cdc_acm, CONFIG_USB_CDC_ACM_LOG_LEVEL);
|
||||
|
||||
/* 115200bps, no parity, 1 stop bit, 8bit char */
|
||||
|
|
|
@ -21,15 +21,17 @@
|
|||
#include "usbd_msg.h"
|
||||
|
||||
#include <zephyr/logging/log.h>
|
||||
#if DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart) \
|
||||
&& defined(CONFIG_LOG_BACKEND_UART) \
|
||||
&& defined(CONFIG_USBD_CDC_ACM_LOG_LEVEL) \
|
||||
&& CONFIG_USBD_CDC_ACM_LOG_LEVEL != LOG_LEVEL_NONE
|
||||
/* Prevent endless recursive logging loop and warn user about it */
|
||||
#warning "USB_CDC_ACM_LOG_LEVEL forced to LOG_LEVEL_NONE"
|
||||
#if defined(CONFIG_USBD_CDC_ACM_LOG_LEVEL) && CONFIG_USBD_CDC_ACM_LOG_LEVEL != LOG_LEVEL_NONE
|
||||
#define CHOSEN_CONSOLE DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart)
|
||||
#define CHOSEN_SHELL DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_shell_uart), zephyr_cdc_acm_uart)
|
||||
#if (CHOSEN_CONSOLE && defined(CONFIG_LOG_BACKEND_UART)) || \
|
||||
(CHOSEN_SHELL && defined(CONFIG_SHELL_LOG_BACKEND))
|
||||
#warning "USBD_CDC_ACM_LOG_LEVEL forced to LOG_LEVEL_NONE"
|
||||
#undef CONFIG_USBD_CDC_ACM_LOG_LEVEL
|
||||
#define CONFIG_USBD_CDC_ACM_LOG_LEVEL LOG_LEVEL_NONE
|
||||
#endif
|
||||
#endif
|
||||
LOG_MODULE_REGISTER(usbd_cdc_acm, CONFIG_USBD_CDC_ACM_LOG_LEVEL);
|
||||
|
||||
UDC_BUF_POOL_DEFINE(cdc_acm_ep_pool,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue