The drm_atomic_print_new_state() already prints private object state via
drm_atomic_private_obj_print_state(). Add private object state dumping
to __drm_state_dump(), so that it is also included into drm_state_dump()
output and into debugfs/dri/N/state file.

Signed-off-by: Dmitry Baryshkov <dmitry.barysh...@linaro.org>
---
 drivers/gpu/drm/drm_atomic.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
index c277b198fa3f..9543e284dc15 100644
--- a/drivers/gpu/drm/drm_atomic.c
+++ b/drivers/gpu/drm/drm_atomic.c
@@ -1773,6 +1773,7 @@ static void __drm_state_dump(struct drm_device *dev, 
struct drm_printer *p,
        struct drm_crtc *crtc;
        struct drm_connector *connector;
        struct drm_connector_list_iter conn_iter;
+       struct drm_private_obj *obj;
 
        if (!drm_drv_uses_atomic_modeset(dev))
                return;
@@ -1801,6 +1802,14 @@ static void __drm_state_dump(struct drm_device *dev, 
struct drm_printer *p,
        if (take_locks)
                drm_modeset_unlock(&dev->mode_config.connection_mutex);
        drm_connector_list_iter_end(&conn_iter);
+
+       list_for_each_entry(obj, &config->privobj_list, head) {
+               if (take_locks)
+                       drm_modeset_lock(&obj->lock, NULL);
+               drm_atomic_private_obj_print_state(p, obj->state);
+               if (take_locks)
+                       drm_modeset_unlock(&obj->lock);
+       }
 }
 
 /**
-- 
2.39.2

Reply via email to