diff --git a/drivers/gpu/drm/display/drm_dp_mst_topology.c b/drivers/gpu/drm/display/drm_dp_mst_topology.c index 7ce9e212770a..b7fce0bf8acc 100644 --- a/drivers/gpu/drm/display/drm_dp_mst_topology.c +++ b/drivers/gpu/drm/display/drm_dp_mst_topology.c @@ -2161,6 +2161,9 @@ ssize_t drm_dp_mst_dpcd_read(struct drm_dp_aux *aux, struct drm_dp_mst_port *port = container_of(aux, struct drm_dp_mst_port, aux); + if (!port->ddps) + return -EIO; + return drm_dp_send_dpcd_read(port->mgr, port, offset, size, buffer); } @@ -2184,6 +2187,9 @@ ssize_t drm_dp_mst_dpcd_write(struct drm_dp_aux *aux, struct drm_dp_mst_port *port = container_of(aux, struct drm_dp_mst_port, aux); + if (!port->ddps) + return -EIO; + return drm_dp_send_dpcd_write(port->mgr, port, offset, size, buffer); }