aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1635-drm-amd-display-Move-dm_read_reg_func-to-dc_helper.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1635-drm-amd-display-Move-dm_read_reg_func-to-dc_helper.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1635-drm-amd-display-Move-dm_read_reg_func-to-dc_helper.patch89
1 files changed, 89 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1635-drm-amd-display-Move-dm_read_reg_func-to-dc_helper.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1635-drm-amd-display-Move-dm_read_reg_func-to-dc_helper.patch
new file mode 100644
index 00000000..f06ebf33
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1635-drm-amd-display-Move-dm_read_reg_func-to-dc_helper.patch
@@ -0,0 +1,89 @@
+From db8e197ef96f40bd8b660722e93382f86f4de8e9 Mon Sep 17 00:00:00 2001
+From: Yongqiang Sun <yongqiang.sun@amd.com>
+Date: Thu, 28 Feb 2019 15:14:39 -0500
+Subject: [PATCH 1635/2940] drm/amd/display: Move dm_read_reg_func to
+ dc_helper.
+
+Move out of header to dc_helper.c, in preparation for future
+implementations.
+
+Change-Id: I004584f11db4a136e704c4c80f830a20ff05809d
+Signed-off-by: Yongqiang Sun <yongqiang.sun@amd.com>
+Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
+Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
+---
+ drivers/gpu/drm/amd/display/dc/dc_helper.c | 18 +++++++++++++++++
+ drivers/gpu/drm/amd/display/dc/dm_services.h | 21 ++++----------------
+ 2 files changed, 22 insertions(+), 17 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/dc_helper.c b/drivers/gpu/drm/amd/display/dc/dc_helper.c
+index d8fe455e5872..5360f0858c8c 100644
+--- a/drivers/gpu/drm/amd/display/dc/dc_helper.c
++++ b/drivers/gpu/drm/amd/display/dc/dc_helper.c
+@@ -160,6 +160,24 @@ uint32_t generic_reg_set_ex(const struct dc_context *ctx,
+ return reg_val;
+ }
+
++uint32_t dm_read_reg_func(
++ const struct dc_context *ctx,
++ uint32_t address,
++ const char *func_name)
++{
++ uint32_t value;
++#ifdef DM_CHECK_ADDR_0
++ if (address == 0) {
++ DC_ERR("invalid register read; address = 0\n");
++ return 0;
++ }
++#endif
++ value = cgs_read_register(ctx->cgs_device, address);
++ trace_amdgpu_dc_rreg(&ctx->perf_trace->read_count, address, value);
++
++ return value;
++}
++
+ uint32_t generic_reg_get(const struct dc_context *ctx, uint32_t addr,
+ uint8_t shift, uint32_t mask, uint32_t *field_value)
+ {
+diff --git a/drivers/gpu/drm/amd/display/dc/dm_services.h b/drivers/gpu/drm/amd/display/dc/dm_services.h
+index b351d3dcf8b2..b426ba02b793 100644
+--- a/drivers/gpu/drm/amd/display/dc/dm_services.h
++++ b/drivers/gpu/drm/amd/display/dc/dm_services.h
+@@ -52,30 +52,17 @@ irq_handler_idx dm_register_interrupt(
+ * GPU registers access
+ *
+ */
+-
++uint32_t dm_read_reg_func(
++ const struct dc_context *ctx,
++ uint32_t address,
++ const char *func_name);
+ /* enable for debugging new code, this adds 50k to the driver size. */
+ /* #define DM_CHECK_ADDR_0 */
+
+ #define dm_read_reg(ctx, address) \
+ dm_read_reg_func(ctx, address, __func__)
+
+-static inline uint32_t dm_read_reg_func(
+- const struct dc_context *ctx,
+- uint32_t address,
+- const char *func_name)
+-{
+- uint32_t value;
+-#ifdef DM_CHECK_ADDR_0
+- if (address == 0) {
+- DC_ERR("invalid register read; address = 0\n");
+- return 0;
+- }
+-#endif
+- value = cgs_read_register(ctx->cgs_device, address);
+- trace_amdgpu_dc_rreg(&ctx->perf_trace->read_count, address, value);
+
+- return value;
+-}
+
+ #define dm_write_reg(ctx, address, value) \
+ dm_write_reg_func(ctx, address, value, __func__)
+--
+2.17.1
+