diff options
author | Lewis Huang <Lewis.Huang@amd.com> | 2019-08-27 17:03:41 +0800 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2019-09-17 08:06:54 -0500 |
commit | 0594ffee9011e7e32b7ad92fe6d815e8727281f8 (patch) | |
tree | 5f5177f6a0edb047e592fc2ebbf930408993e50c /drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c | |
parent | drm/amd/display: Handle virtual signal type in disable_link() (diff) | |
download | linux-dev-0594ffee9011e7e32b7ad92fe6d815e8727281f8.tar.xz linux-dev-0594ffee9011e7e32b7ad92fe6d815e8727281f8.zip |
drm/amd/display: fix i2c wtire mot incorrect issue
[Why]
I2C write command always send mot = true will cause sink state incorrect.
[How]
1. Remove default i2c write mot = true.
2. Deciding mot flag by is_end_of_payload flag.
Signed-off-by: Lewis Huang <Lewis.Huang@amd.com>
Reviewed-by: Charlene Liu <Charlene.Liu@amd.com>
Acked-by: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c')
-rw-r--r-- | drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c b/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c index e8f3ba9c5475..57fb0574f198 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c @@ -525,7 +525,7 @@ bool dal_ddc_service_query_ddc_data( if (write_size != 0) { payload.write = true; - payload.mot = true; + payload.mot = false; payload.length = write_size; payload.data = write_buf; @@ -594,7 +594,7 @@ bool dal_ddc_submit_aux_command(struct ddc_service *ddc, current_payload.i2c_over_aux = payload->i2c_over_aux; current_payload.length = is_end_of_payload ? payload->length - retrieved : DEFAULT_AUX_MAX_DATA_SIZE; - current_payload.mot = payload->mot ? payload->mot : !is_end_of_payload; + current_payload.mot = !is_end_of_payload; current_payload.reply = payload->reply; current_payload.write = payload->write; |