// SPDX-License-Identifier: (LGPL-2.1-only OR BSD-3-Clause) /* * Copyright 2019 Cisco Systems, Inc. and/or its affiliates. All rights reserved. */ #ifndef _CEC_LOG_H_ #define _CEC_LOG_H_ struct cec_arg_enum_values { const char *type_name; __u8 value; }; enum cec_arg_type { CEC_ARG_TYPE_U8, CEC_ARG_TYPE_U16, CEC_ARG_TYPE_U32, CEC_ARG_TYPE_STRING, CEC_ARG_TYPE_ENUM, }; struct cec_arg { enum cec_arg_type type; __u8 num_enum_values; const struct cec_arg_enum_values *values; }; #define CEC_MAX_ARGS 16 struct cec_msg_args { __u8 msg; __u8 num_args; const char *arg_names[CEC_MAX_ARGS+1]; const struct cec_arg *args[CEC_MAX_ARGS]; const char *msg_name; }; const struct cec_msg_args *cec_log_msg_args(unsigned int index); void cec_log_msg(const struct cec_msg *msg); void cec_log_htng_msg(const struct cec_msg *msg); const char *cec_log_ui_cmd_string(__u8 ui_cmd); #endif