From 711b55f3fca418de8c6484a1aa38bcc241acc536 Mon Sep 17 00:00:00 2001 From: Harry Wentland Date: Mon, 16 Oct 2017 22:11:04 -0400 Subject: [PATCH] Revert "amdgpu/dc: inline a bunch of the dml wrappers." This reverts commit 3e8c3108dab197858e74dbb740c5312ae636ea9b. Unfortunately these clash with our DML update from the HW guys. Will attempt to reroll them after. Signed-off-by: Alex Deucher --- .../amd/display/dc/dml/display_mode_support.c | 1 - .../amd/display/dc/dml/display_rq_dlg_calc.c | 2 - .../amd/display/dc/dml/display_watermark.c | 1 - .../drm/amd/display/dc/dml/dml_common_defs.c | 56 ++++++++++++++++- .../drm/amd/display/dc/dml/dml_common_defs.h | 11 ++++ .../drm/amd/display/dc/dml/dml_inline_defs.h | 61 ------------------- .../drm/amd/display/dc/dml/soc_bounding_box.c | 1 - 7 files changed, 66 insertions(+), 67 deletions(-) delete mode 100644 drivers/gpu/drm/amd/display/dc/dml/dml_inline_defs.h diff --git a/drivers/gpu/drm/amd/display/dc/dml/display_mode_support.c b/drivers/gpu/drm/amd/display/dc/dml/display_mode_support.c index ac573568c10a..3b4ee74527f5 100644 --- a/drivers/gpu/drm/amd/display/dc/dml/display_mode_support.c +++ b/drivers/gpu/drm/amd/display/dc/dml/display_mode_support.c @@ -26,7 +26,6 @@ #include "display_mode_support.h" #include "display_mode_lib.h" -#include "dml_inline_defs.h" int dml_ms_check( struct display_mode_lib *mode_lib, struct _vcs_dpi_display_e2e_pipe_params_st *e2e, diff --git a/drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_calc.c b/drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_calc.c index 7a5fb1cef303..9fccbbffe129 100644 --- a/drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_calc.c +++ b/drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_calc.c @@ -25,8 +25,6 @@ #include "display_rq_dlg_calc.h" #include "display_mode_lib.h" -#include "dml_inline_defs.h" - static unsigned int get_bytes_per_element(enum source_format_class source_format, bool is_chroma) { unsigned int ret_val = 0; diff --git a/drivers/gpu/drm/amd/display/dc/dml/display_watermark.c b/drivers/gpu/drm/amd/display/dc/dml/display_watermark.c index 142a3284ac44..390f09391433 100644 --- a/drivers/gpu/drm/amd/display/dc/dml/display_watermark.c +++ b/drivers/gpu/drm/amd/display/dc/dml/display_watermark.c @@ -24,7 +24,6 @@ */ #include "display_watermark.h" #include "display_mode_lib.h" -#include "dml_inline_defs.h" static void get_bytes_per_pixel( enum source_format_class format, diff --git a/drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.c b/drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.c index c242b8d41b8a..21349a022de3 100644 --- a/drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.c +++ b/drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.c @@ -26,7 +26,26 @@ #include "dml_common_defs.h" #include "../calcs/dcn_calc_math.h" -#include "dml_inline_defs.h" +double dml_min(double a, double b) +{ + return (double) dcn_bw_min2(a, b); +} + +double dml_max(double a, double b) +{ + return (double) dcn_bw_max2(a, b); +} + +double dml_ceil(double a) +{ + return (double) dcn_bw_ceil2(a, 1); +} + +double dml_floor(double a) +{ + return (double) dcn_bw_floor2(a, 1); +} + double dml_round(double a) { double round_pt = 0.5; @@ -39,6 +58,16 @@ double dml_round(double a) return floor; } +int dml_log2(double x) +{ + return dml_round((double)dcn_bw_log(x, 2)); +} + +double dml_pow(double a, int exp) +{ + return (double) dcn_bw_pow(a, exp); +} + unsigned int dml_round_to_multiple( unsigned int num, unsigned int multiple, @@ -60,6 +89,16 @@ unsigned int dml_round_to_multiple( return (num - remainder); } +double dml_fmod(double f, int val) +{ + return (double) dcn_bw_mod(f, val); +} + +double dml_ceil_2(double f) +{ + return (double) dcn_bw_ceil2(f, 2); +} + bool dml_util_is_420(enum source_format_class sorce_format) { bool val = false; @@ -92,3 +131,18 @@ bool dml_util_is_420(enum source_format_class sorce_format) return val; } + +double dml_ceil_ex(double x, double granularity) +{ + return (double) dcn_bw_ceil2(x, granularity); +} + +double dml_floor_ex(double x, double granularity) +{ + return (double) dcn_bw_floor2(x, granularity); +} + +double dml_log(double x, double base) +{ + return (double) dcn_bw_log(x, base); +} diff --git a/drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.h b/drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.h index c621f8321b03..c5340d41eedb 100644 --- a/drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.h +++ b/drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.h @@ -32,9 +32,20 @@ #define DTRACE(str, ...) dm_logger_write(mode_lib->logger, LOG_DML, str, ##__VA_ARGS__); +double dml_min(double a, double b); +double dml_max(double a, double b); bool dml_util_is_420(enum source_format_class sorce_format); +double dml_ceil_ex(double x, double granularity); +double dml_floor_ex(double x, double granularity); +double dml_log(double x, double base); +double dml_ceil(double a); +double dml_floor(double a); double dml_round(double a); +int dml_log2(double x); +double dml_pow(double a, int exp); unsigned int dml_round_to_multiple( unsigned int num, unsigned int multiple, bool up); +double dml_fmod(double f, int val); +double dml_ceil_2(double f); #endif /* __DC_COMMON_DEFS_H__ */ diff --git a/drivers/gpu/drm/amd/display/dc/dml/dml_inline_defs.h b/drivers/gpu/drm/amd/display/dc/dml/dml_inline_defs.h deleted file mode 100644 index 1c6c631daad4..000000000000 --- a/drivers/gpu/drm/amd/display/dc/dml/dml_inline_defs.h +++ /dev/null @@ -1,61 +0,0 @@ -#ifndef __DML_INLINE_DEFS_H__ -#define __DML_INLINE_DEFS_H__ -#include "dml_common_defs.h" -#include "../calcs/dcn_calc_math.h" - -static inline double dml_min(double a, double b) -{ - return (double) dcn_bw_min2(a, b); -} - -static inline double dml_max(double a, double b) -{ - return (double) dcn_bw_max2(a, b); -} - -static inline double dml_ceil(double a) -{ - return (double) dcn_bw_ceil2(a, 1); -} - -static inline double dml_floor(double a) -{ - return (double) dcn_bw_floor2(a, 1); -} - -static inline int dml_log2(double x) -{ - return dml_round((double)dcn_bw_log(x, 2)); -} - -static inline double dml_pow(double a, int exp) -{ - return (double) dcn_bw_pow(a, exp); -} - -static inline double dml_fmod(double f, int val) -{ - return (double) dcn_bw_mod(f, val); -} - -static inline double dml_ceil_2(double f) -{ - return (double) dcn_bw_ceil2(f, 2); -} - -static inline double dml_ceil_ex(double x, double granularity) -{ - return (double) dcn_bw_ceil2(x, granularity); -} - -static inline double dml_floor_ex(double x, double granularity) -{ - return (double) dcn_bw_floor2(x, granularity); -} - -static inline double dml_log(double x, double base) -{ - return (double) dcn_bw_log(x, base); -} - -#endif diff --git a/drivers/gpu/drm/amd/display/dc/dml/soc_bounding_box.c b/drivers/gpu/drm/amd/display/dc/dml/soc_bounding_box.c index d40f6ae9622c..112b0b728b4d 100644 --- a/drivers/gpu/drm/amd/display/dc/dml/soc_bounding_box.c +++ b/drivers/gpu/drm/amd/display/dc/dml/soc_bounding_box.c @@ -25,7 +25,6 @@ #include "soc_bounding_box.h" #include "display_mode_lib.h" -#include "dml_inline_defs.h" void dml_socbb_set_latencies( struct display_mode_lib *mode_lib, struct _vcs_dpi_soc_bounding_box_st *from_box) -- 2.30.2