Existing DPCD access functions return an error code or the number of bytes being read / write in case of partial access. However a lot of drivers either (incorrectly) ignore partial access or mishandle error codes. In other cases this results in a boilerplate code which compares returned value with the size. As suggested by Jani implement new set of DPCD access helpers, which ignore partial access, always return 0 or an error code. Reimplement existing helpers using the new functions to ensure backwards compatibility. This series targets only the DRM helpers code. If the approach is found to be acceptable, each of the drivers should be converted on its own. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> --- Dmitry Baryshkov (7): drm/display: dp: change drm_dp_dpcd_read_link_status() return drm/display: dp: implement new access helpers drm/display: dp: use new DCPD access helpers drm/display: dp-aux-dev: use new DCPD access helpers drm/display: dp-cec: use new DCPD access helpers drm/display: dp-mst-topology: use new DCPD access helpers drm/display: dp-tunnel: use new DCPD access helpers drivers/gpu/drm/display/drm_dp_aux_dev.c | 12 +- drivers/gpu/drm/display/drm_dp_cec.c | 37 ++- drivers/gpu/drm/display/drm_dp_helper.c | 345 +++++++++++--------------- drivers/gpu/drm/display/drm_dp_mst_topology.c | 132 +++++----- drivers/gpu/drm/display/drm_dp_tunnel.c | 20 +- drivers/gpu/drm/msm/dp/dp_ctrl.c | 45 ++-- drivers/gpu/drm/msm/dp/dp_link.c | 17 +- include/drm/display/drm_dp_helper.h | 81 +++++- include/drm/display/drm_dp_mst_helper.h | 10 +- 9 files changed, 354 insertions(+), 345 deletions(-) --- base-commit: 440aaf479c9aaf5ecea9a463eb826ec243d5f1cf change-id: 20241231-drm-rework-dpcd-access-b0fc2e47d613 Best regards, -- Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>