The drm_atomic_plane_print_state(), drm_atomic_crtc_print_state(), drm_atomic_connector_print_state(), and drm_atomic_private_obj_print_state() functions are currently static.
The SRO infrastructure needs to call them from drm_atomic_sro.c to print the readout state for debugging purposes. Make them available by dropping the static qualifier and declaring them in drm_internal.h. Signed-off-by: Maxime Ripard <[email protected]> --- drivers/gpu/drm/drm_atomic.c | 16 ++++++++-------- drivers/gpu/drm/drm_internal.h | 12 ++++++++++++ 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c index 4f1b22551352..6bae998dd36a 100644 --- a/drivers/gpu/drm/drm_atomic.c +++ b/drivers/gpu/drm/drm_atomic.c @@ -538,12 +538,12 @@ static int drm_atomic_crtc_check(const struct drm_crtc_state *old_crtc_state, } return 0; } -static void drm_atomic_crtc_print_state(struct drm_printer *p, - const struct drm_crtc_state *state) +void drm_atomic_crtc_print_state(struct drm_printer *p, + const struct drm_crtc_state *state) { struct drm_crtc *crtc = state->crtc; drm_printf(p, "crtc[%u]: %s\n", crtc->base.id, crtc->name); drm_printf_indent(p, 1, "enable=%d\n", state->enable); @@ -933,12 +933,12 @@ static void drm_atomic_colorop_print_state(struct drm_printer *p, } drm_printf_indent(p, 1, "next=%d\n", colorop->next ? colorop->next->base.id : 0); } -static void drm_atomic_plane_print_state(struct drm_printer *p, - const struct drm_plane_state *state) +void drm_atomic_plane_print_state(struct drm_printer *p, + const struct drm_plane_state *state) { struct drm_plane *plane = state->plane; struct drm_rect src = drm_plane_state_src(state); struct drm_rect dest = drm_plane_state_dest(state); @@ -1426,12 +1426,12 @@ drm_atomic_get_connector_state(struct drm_atomic_commit *state, return connector_state; } EXPORT_SYMBOL(drm_atomic_get_connector_state); -static void drm_atomic_connector_print_state(struct drm_printer *p, - const struct drm_connector_state *state) +void drm_atomic_connector_print_state(struct drm_printer *p, + const struct drm_connector_state *state) { struct drm_connector *connector = state->connector; drm_printf(p, "connector[%u]: %s\n", connector->base.id, connector->name); drm_printf_indent(p, 1, "crtc=%s\n", state->crtc ? state->crtc->name : "(null)"); @@ -2072,12 +2072,12 @@ int __drm_atomic_helper_set_config(struct drm_mode_set *set, return 0; } EXPORT_SYMBOL(__drm_atomic_helper_set_config); -static void drm_atomic_private_obj_print_state(struct drm_printer *p, - const struct drm_private_state *state) +void drm_atomic_private_obj_print_state(struct drm_printer *p, + const struct drm_private_state *state) { struct drm_private_obj *obj = state->obj; if (obj->funcs->atomic_print_state) obj->funcs->atomic_print_state(p, state); diff --git a/drivers/gpu/drm/drm_internal.h b/drivers/gpu/drm/drm_internal.h index f893b1e3a596..91ce23f69ec4 100644 --- a/drivers/gpu/drm/drm_internal.h +++ b/drivers/gpu/drm/drm_internal.h @@ -38,18 +38,30 @@ struct dentry; struct dma_buf; struct iosys_map; struct drm_connector; struct drm_crtc; +struct drm_crtc_state; struct drm_framebuffer; struct drm_gem_object; struct drm_master; struct drm_minor; +struct drm_plane_state; struct drm_prime_file_private; struct drm_printer; +struct drm_private_state; struct drm_vblank_crtc; +/* drm_atomic.c */ +void drm_atomic_plane_print_state(struct drm_printer *p, + const struct drm_plane_state *state); +void drm_atomic_crtc_print_state(struct drm_printer *p, + const struct drm_crtc_state *state); +void drm_atomic_connector_print_state(struct drm_printer *p, + const struct drm_connector_state *state); +void drm_atomic_private_obj_print_state(struct drm_printer *p, + const struct drm_private_state *state); /* drm_client_event.c */ #if defined(CONFIG_DRM_CLIENT) void drm_client_debugfs_init(struct drm_device *dev); #else static inline void drm_client_debugfs_init(struct drm_device *dev) -- 2.54.0
