summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c
diff options
context:
space:
mode:
authorCharlene Liu <charlene.liu@amd.com>2018-06-25 19:28:54 -0400
committerAlex Deucher <alexander.deucher@amd.com>2018-07-13 14:51:04 -0500
commite0d85b20c74fc078862262da64b36e8e7b6663e7 (patch)
tree216d562ef781c0c44c77b91c741aea0a00cd042c /drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c
parentedf6ffe4f47e6749cfd45c1489feea2dbb0041c7 (diff)
downloadblackbird-obmc-linux-e0d85b20c74fc078862262da64b36e8e7b6663e7.tar.gz
blackbird-obmc-linux-e0d85b20c74fc078862262da64b36e8e7b6663e7.zip
drm/amd/display: introduce concept of send_reset_length for i2c engines
Signed-off-by: Charlene Liu <charlene.liu@amd.com> Reviewed-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@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/i2caux/dce110/i2caux_dce110.c')
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c
index e0557d353818..1d748ac1d6d6 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c
@@ -43,6 +43,9 @@
#include "i2c_sw_engine_dce110.h"
#include "i2c_hw_engine_dce110.h"
#include "aux_engine_dce110.h"
+#include "../../dc.h"
+#include "dc_types.h"
+
/*
* Post-requisites: headers required by this unit
@@ -250,7 +253,20 @@ void dal_i2caux_dce110_construct(
base->i2c_hw_engines[line_id] =
dal_i2c_hw_engine_dce110_create(&hw_arg_dce110);
-
+ if (base->i2c_hw_engines[line_id] != NULL) {
+ switch (ctx->dce_version) {
+ case DCN_VERSION_1_0:
+ base->i2c_hw_engines[line_id]->setup_limit =
+ I2C_SETUP_TIME_LIMIT_DCN;
+ base->i2c_hw_engines[line_id]->send_reset_length = 0;
+ break;
+ default:
+ base->i2c_hw_engines[line_id]->setup_limit =
+ I2C_SETUP_TIME_LIMIT_DCE;
+ base->i2c_hw_engines[line_id]->send_reset_length = 0;
+ break;
+ }
+ }
++i;
} while (i < num_i2caux_inst);
OpenPOWER on IntegriCloud