123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- /* SPDX-License-Identifier: GPL-2.0-only */
- /*
- * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
- */
- #ifndef __SDE_ROTATOR_DEBUG_H__
- #define __SDE_ROTATOR_DEBUG_H__
- #include <linux/types.h>
- #include <linux/dcache.h>
- #define SDE_ROT_DATA_LIMITER (-1)
- #define SDE_ROT_EVTLOG_TOUT_DATA_LIMITER (NULL)
- #define SDE_ROT_EVTLOG_PANIC 0xdead
- #define SDE_ROT_EVTLOG_FATAL 0xbad
- #define SDE_ROT_EVTLOG_ERROR 0xebad
- enum sde_rot_dbg_reg_dump_flag {
- SDE_ROT_DBG_DUMP_IN_LOG = BIT(0),
- SDE_ROT_DBG_DUMP_IN_MEM = BIT(1),
- };
- enum sde_rot_dbg_evtlog_flag {
- SDE_ROT_EVTLOG_DEFAULT = BIT(0),
- SDE_ROT_EVTLOG_IOMMU = BIT(1),
- SDE_ROT_EVTLOG_DBG = BIT(6),
- SDE_ROT_EVTLOG_ALL = BIT(7)
- };
- #define SDEROT_EVTLOG(...) sde_rot_evtlog(__func__, __LINE__, \
- SDE_ROT_EVTLOG_DEFAULT, ##__VA_ARGS__, SDE_ROT_DATA_LIMITER)
- #define SDEROT_EVTLOG_TOUT_HANDLER(...) \
- sde_rot_evtlog_tout_handler(false, __func__, ##__VA_ARGS__, \
- SDE_ROT_EVTLOG_TOUT_DATA_LIMITER)
- #if defined(CONFIG_MSM_SDE_ROTATOR_EVTLOG_DEBUG) && \
- defined(CONFIG_DEBUG_FS)
- void sde_rot_evtlog(const char *name, int line, int flag, ...);
- void sde_rot_evtlog_tout_handler(bool queue, const char *name, ...);
- #else
- static inline
- void sde_rot_evtlog(const char *name, int line, int flag, ...)
- {
- }
- static inline
- void sde_rot_evtlog_tout_handler(bool queue, const char *name, ...)
- {
- }
- #endif
- struct sde_rotator_device;
- struct sde_rotator_debug_base {
- char name[80];
- void __iomem *base;
- size_t off;
- size_t cnt;
- size_t max_offset;
- char *buf;
- size_t buf_len;
- struct sde_rot_mgr *mgr;
- struct mutex buflock;
- };
- #if defined(CONFIG_DEBUG_FS)
- struct dentry *sde_rotator_create_debugfs(
- struct sde_rotator_device *rot_dev);
- void sde_rotator_destroy_debugfs(struct dentry *debugfs);
- #else
- static inline
- struct dentry *sde_rotator_create_debugfs(
- struct sde_rotator_device *rot_dev)
- {
- return NULL;
- }
- static inline
- void sde_rotator_destroy_debugfs(struct dentry *debugfs)
- {
- }
- #endif
- #endif /* __SDE_ROTATOR_DEBUG_H__ */
|