1b843c749SSergey Zigachev /* 2b843c749SSergey Zigachev * Copyright 2012-15 Advanced Micro Devices, Inc. 3b843c749SSergey Zigachev * 4b843c749SSergey Zigachev * Permission is hereby granted, free of charge, to any person obtaining a 5b843c749SSergey Zigachev * copy of this software and associated documentation files (the "Software"), 6b843c749SSergey Zigachev * to deal in the Software without restriction, including without limitation 7b843c749SSergey Zigachev * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8b843c749SSergey Zigachev * and/or sell copies of the Software, and to permit persons to whom the 9b843c749SSergey Zigachev * Software is furnished to do so, subject to the following conditions: 10b843c749SSergey Zigachev * 11b843c749SSergey Zigachev * The above copyright notice and this permission notice shall be included in 12b843c749SSergey Zigachev * all copies or substantial portions of the Software. 13b843c749SSergey Zigachev * 14b843c749SSergey Zigachev * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15b843c749SSergey Zigachev * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16b843c749SSergey Zigachev * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 17b843c749SSergey Zigachev * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR 18b843c749SSergey Zigachev * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 19b843c749SSergey Zigachev * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 20b843c749SSergey Zigachev * OTHER DEALINGS IN THE SOFTWARE. 21b843c749SSergey Zigachev * 22b843c749SSergey Zigachev * Authors: AMD 23b843c749SSergey Zigachev * 24b843c749SSergey Zigachev */ 25b843c749SSergey Zigachev 26b843c749SSergey Zigachev #ifndef __DAL_LOGGER_TYPES_H__ 27b843c749SSergey Zigachev #define __DAL_LOGGER_TYPES_H__ 28b843c749SSergey Zigachev 29b843c749SSergey Zigachev #include "os_types.h" 30b843c749SSergey Zigachev 31b843c749SSergey Zigachev #define MAX_NAME_LEN 32 32b843c749SSergey Zigachev 33b843c749SSergey Zigachev #define DC_LOG_ERROR(...) DRM_ERROR(__VA_ARGS__) 34b843c749SSergey Zigachev #define DC_LOG_WARNING(...) DRM_WARN(__VA_ARGS__) 35b843c749SSergey Zigachev #define DC_LOG_DEBUG(...) DRM_DEBUG_KMS(__VA_ARGS__) 36b843c749SSergey Zigachev #define DC_LOG_DC(...) DRM_DEBUG_KMS(__VA_ARGS__) 37b843c749SSergey Zigachev #define DC_LOG_DTN(...) DRM_DEBUG_KMS(__VA_ARGS__) 38*78973132SSergey Zigachev #define DC_LOG_SURFACE(...) DRM_DEBUG_KMS("[SURFACE]:"__VA_ARGS__) 39b843c749SSergey Zigachev #define DC_LOG_HW_HOTPLUG(...) DRM_DEBUG_KMS(__VA_ARGS__) 40*78973132SSergey Zigachev #define DC_LOG_HW_LINK_TRAINING(...) DRM_DEBUG_KMS("[HW_LINK_TRAINING]:"__VA_ARGS__) 41b843c749SSergey Zigachev #define DC_LOG_HW_SET_MODE(...) DRM_DEBUG_KMS(__VA_ARGS__) 42b843c749SSergey Zigachev #define DC_LOG_HW_RESUME_S3(...) DRM_DEBUG_KMS(__VA_ARGS__) 43*78973132SSergey Zigachev #define DC_LOG_HW_AUDIO(...) DRM_DEBUG_KMS("[HW_AUDIO]:"__VA_ARGS__) 44b843c749SSergey Zigachev #define DC_LOG_HW_HPD_IRQ(...) DRM_DEBUG_KMS(__VA_ARGS__) 45b843c749SSergey Zigachev #define DC_LOG_MST(...) DRM_DEBUG_KMS(__VA_ARGS__) 46*78973132SSergey Zigachev #define DC_LOG_SCALER(...) DRM_DEBUG_KMS("[SCALER]:"__VA_ARGS__) 47*78973132SSergey Zigachev #define DC_LOG_BIOS(...) DRM_DEBUG_KMS("[BIOS]:"__VA_ARGS__) 48*78973132SSergey Zigachev #define DC_LOG_BANDWIDTH_CALCS(...) DRM_DEBUG_KMS("[BANDWIDTH_CALCS]:"__VA_ARGS__) 49b843c749SSergey Zigachev #define DC_LOG_BANDWIDTH_VALIDATION(...) DRM_DEBUG_KMS(__VA_ARGS__) 50b843c749SSergey Zigachev #define DC_LOG_I2C_AUX(...) DRM_DEBUG_KMS(__VA_ARGS__) 51b843c749SSergey Zigachev #define DC_LOG_SYNC(...) DRM_DEBUG_KMS(__VA_ARGS__) 52b843c749SSergey Zigachev #define DC_LOG_BACKLIGHT(...) DRM_DEBUG_KMS(__VA_ARGS__) 53b843c749SSergey Zigachev #define DC_LOG_FEATURE_OVERRIDE(...) DRM_DEBUG_KMS(__VA_ARGS__) 54b843c749SSergey Zigachev #define DC_LOG_DETECTION_EDID_PARSER(...) DRM_DEBUG_KMS(__VA_ARGS__) 55b843c749SSergey Zigachev #define DC_LOG_DETECTION_DP_CAPS(...) DRM_DEBUG_KMS(__VA_ARGS__) 56b843c749SSergey Zigachev #define DC_LOG_RESOURCE(...) DRM_DEBUG_KMS(__VA_ARGS__) 57*78973132SSergey Zigachev #define DC_LOG_DML(...) DRM_DEBUG_KMS("[DML]:"__VA_ARGS__) 58b843c749SSergey Zigachev #define DC_LOG_EVENT_MODE_SET(...) DRM_DEBUG_KMS(__VA_ARGS__) 59b843c749SSergey Zigachev #define DC_LOG_EVENT_DETECTION(...) DRM_DEBUG_KMS(__VA_ARGS__) 60b843c749SSergey Zigachev #define DC_LOG_EVENT_LINK_TRAINING(...) DRM_DEBUG_KMS(__VA_ARGS__) 61b843c749SSergey Zigachev #define DC_LOG_EVENT_LINK_LOSS(...) DRM_DEBUG_KMS(__VA_ARGS__) 62b843c749SSergey Zigachev #define DC_LOG_EVENT_UNDERFLOW(...) DRM_DEBUG_KMS(__VA_ARGS__) 63*78973132SSergey Zigachev #define DC_LOG_IF_TRACE(...) DRM_DEBUG_KMS("[IF_TRACE]:"__VA_ARGS__) 64b843c749SSergey Zigachev #define DC_LOG_PERF_TRACE(...) DRM_DEBUG_KMS(__VA_ARGS__) 65b843c749SSergey Zigachev 66b843c749SSergey Zigachev struct dal_logger; 67b843c749SSergey Zigachev 68b843c749SSergey Zigachev enum dc_log_type { 69b843c749SSergey Zigachev LOG_ERROR = 0, 70b843c749SSergey Zigachev LOG_WARNING, 71b843c749SSergey Zigachev LOG_DEBUG, 72b843c749SSergey Zigachev LOG_DC, 73b843c749SSergey Zigachev LOG_DTN, 74b843c749SSergey Zigachev LOG_SURFACE, 75b843c749SSergey Zigachev LOG_HW_HOTPLUG, 76b843c749SSergey Zigachev LOG_HW_LINK_TRAINING, 77b843c749SSergey Zigachev LOG_HW_SET_MODE, 78b843c749SSergey Zigachev LOG_HW_RESUME_S3, 79b843c749SSergey Zigachev LOG_HW_AUDIO, 80b843c749SSergey Zigachev LOG_HW_HPD_IRQ, 81b843c749SSergey Zigachev LOG_MST, 82b843c749SSergey Zigachev LOG_SCALER, 83b843c749SSergey Zigachev LOG_BIOS, 84b843c749SSergey Zigachev LOG_BANDWIDTH_CALCS, 85b843c749SSergey Zigachev LOG_BANDWIDTH_VALIDATION, 86b843c749SSergey Zigachev LOG_I2C_AUX, 87b843c749SSergey Zigachev LOG_SYNC, 88b843c749SSergey Zigachev LOG_BACKLIGHT, 89b843c749SSergey Zigachev LOG_FEATURE_OVERRIDE, 90b843c749SSergey Zigachev LOG_DETECTION_EDID_PARSER, 91b843c749SSergey Zigachev LOG_DETECTION_DP_CAPS, 92b843c749SSergey Zigachev LOG_RESOURCE, 93b843c749SSergey Zigachev LOG_DML, 94b843c749SSergey Zigachev LOG_EVENT_MODE_SET, 95b843c749SSergey Zigachev LOG_EVENT_DETECTION, 96b843c749SSergey Zigachev LOG_EVENT_LINK_TRAINING, 97b843c749SSergey Zigachev LOG_EVENT_LINK_LOSS, 98b843c749SSergey Zigachev LOG_EVENT_UNDERFLOW, 99b843c749SSergey Zigachev LOG_IF_TRACE, 100b843c749SSergey Zigachev LOG_PERF_TRACE, 101b843c749SSergey Zigachev LOG_DISPLAYSTATS, 102b843c749SSergey Zigachev 103b843c749SSergey Zigachev LOG_SECTION_TOTAL_COUNT 104b843c749SSergey Zigachev }; 105b843c749SSergey Zigachev 106b843c749SSergey Zigachev #define DC_MIN_LOG_MASK ((1 << LOG_ERROR) | \ 107b843c749SSergey Zigachev (1 << LOG_DETECTION_EDID_PARSER)) 108b843c749SSergey Zigachev 109b843c749SSergey Zigachev #define DC_DEFAULT_LOG_MASK ((1 << LOG_ERROR) | \ 110b843c749SSergey Zigachev (1 << LOG_WARNING) | \ 111b843c749SSergey Zigachev (1 << LOG_EVENT_MODE_SET) | \ 112b843c749SSergey Zigachev (1 << LOG_EVENT_DETECTION) | \ 113b843c749SSergey Zigachev (1 << LOG_EVENT_LINK_TRAINING) | \ 114b843c749SSergey Zigachev (1 << LOG_EVENT_LINK_LOSS) | \ 115b843c749SSergey Zigachev (1 << LOG_EVENT_UNDERFLOW) | \ 116b843c749SSergey Zigachev (1 << LOG_RESOURCE) | \ 117b843c749SSergey Zigachev (1 << LOG_FEATURE_OVERRIDE) | \ 118b843c749SSergey Zigachev (1 << LOG_DETECTION_EDID_PARSER) | \ 119b843c749SSergey Zigachev (1 << LOG_DC) | \ 120b843c749SSergey Zigachev (1 << LOG_HW_HOTPLUG) | \ 121b843c749SSergey Zigachev (1 << LOG_HW_SET_MODE) | \ 122b843c749SSergey Zigachev (1 << LOG_HW_RESUME_S3) | \ 123b843c749SSergey Zigachev (1 << LOG_HW_HPD_IRQ) | \ 124b843c749SSergey Zigachev (1 << LOG_SYNC) | \ 125b843c749SSergey Zigachev (1 << LOG_BANDWIDTH_VALIDATION) | \ 126b843c749SSergey Zigachev (1 << LOG_MST) | \ 127b843c749SSergey Zigachev (1 << LOG_DETECTION_DP_CAPS) | \ 128b843c749SSergey Zigachev (1 << LOG_BACKLIGHT)) | \ 129b843c749SSergey Zigachev (1 << LOG_I2C_AUX) | \ 130b843c749SSergey Zigachev (1 << LOG_IF_TRACE) | \ 131b843c749SSergey Zigachev (1 << LOG_DTN) /* | \ 132b843c749SSergey Zigachev (1 << LOG_DEBUG) | \ 133b843c749SSergey Zigachev (1 << LOG_BIOS) | \ 134b843c749SSergey Zigachev (1 << LOG_SURFACE) | \ 135b843c749SSergey Zigachev (1 << LOG_SCALER) | \ 136b843c749SSergey Zigachev (1 << LOG_DML) | \ 137b843c749SSergey Zigachev (1 << LOG_HW_LINK_TRAINING) | \ 138b843c749SSergey Zigachev (1 << LOG_HW_AUDIO)| \ 139b843c749SSergey Zigachev (1 << LOG_BANDWIDTH_CALCS)*/ 140b843c749SSergey Zigachev 141b843c749SSergey Zigachev #endif /* __DAL_LOGGER_TYPES_H__ */ 142