summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/display/dc/os_types.h
diff options
context:
space:
mode:
authorHarry Wentland <harry.wentland@amd.com>2017-10-12 12:27:48 -0400
committerAlex Deucher <alexander.deucher@amd.com>2017-10-21 16:51:49 -0400
commit75e68891200e3404fb3283e47ed74184932a748a (patch)
tree6f621b0b5748bf069f51793e77351a5f95737fab /drivers/gpu/drm/amd/display/dc/os_types.h
parentb9b171fffc9358be9e98cbc2bc7ef3fbe029f170 (diff)
drm/amd/display: Move OS types to os_types.h
Some of this stuff is not really dm_services Signed-off-by: Harry Wentland <harry.wentland@amd.com> Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> Acked-by: Harry Wentland <Harry.Wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/os_types.h')
-rw-r--r--drivers/gpu/drm/amd/display/dc/os_types.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/os_types.h b/drivers/gpu/drm/amd/display/dc/os_types.h
index e0cd5278aae8..86170b40b5c5 100644
--- a/drivers/gpu/drm/amd/display/dc/os_types.h
+++ b/drivers/gpu/drm/amd/display/dc/os_types.h
@@ -56,5 +56,45 @@
#endif
+/*
+ *
+ * general debug capabilities
+ *
+ */
+#if defined(CONFIG_DEBUG_KERNEL) || defined(CONFIG_DEBUG_DRIVER)
+
+#if defined(CONFIG_HAVE_KGDB) || defined(CONFIG_KGDB)
+#define ASSERT_CRITICAL(expr) do { \
+ if (WARN_ON(!(expr))) { \
+ kgdb_breakpoint(); \
+ } \
+} while (0)
+#else
+#define ASSERT_CRITICAL(expr) do { \
+ if (WARN_ON(!(expr))) { \
+ ; \
+ } \
+} while (0)
+#endif
+
+#if defined(CONFIG_DEBUG_KERNEL_DC)
+#define ASSERT(expr) ASSERT_CRITICAL(expr)
+
+#else
+#define ASSERT(expr) WARN_ON(!(expr))
+#endif
+
+#define BREAK_TO_DEBUGGER() ASSERT(0)
+
+#endif /* CONFIG_DEBUG_KERNEL || CONFIG_DEBUG_DRIVER */
+
+#define DC_ERR(...) do { \
+ dm_error(__VA_ARGS__); \
+ BREAK_TO_DEBUGGER(); \
+} while (0)
+
+#if defined(CONFIG_DRM_AMD_DC_DCN1_0)
+#include <asm/fpu/api.h>
+#endif
#endif /* _OS_TYPES_H_ */