On Thu, 7 Dec 2023 at 12:10, Maxime Ripard <mripard@xxxxxxxxxx> wrote: > > Hi, > > On Wed, Dec 06, 2023 at 01:14:54PM +0300, Dmitry Baryshkov wrote: > > The drm_atomic_helper_check_wb_encoder_state() function doesn't use > > encoder for anything other than getting the drm_device instance. The > > function's description talks about checking the writeback connector > > state, not the encoder state. Moreover, there is no such thing as an > > encoder state, encoders generally do not have a state on their own. > > > > Rename the function to drm_atomic_helper_check_wb_connector_state() > > and change arguments to drm_writeback_connector and drm_atomic_state. > > > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> > > --- > > drivers/gpu/drm/drm_atomic_helper.c | 16 +++++++++------- > > drivers/gpu/drm/vkms/vkms_writeback.c | 5 ++++- > > include/drm/drm_atomic_helper.h | 5 ++--- > > 3 files changed, 15 insertions(+), 11 deletions(-) > > > > diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c > > index c3f677130def..c98a766ca3bd 100644 > > --- a/drivers/gpu/drm/drm_atomic_helper.c > > +++ b/drivers/gpu/drm/drm_atomic_helper.c > > @@ -795,9 +795,9 @@ drm_atomic_helper_check_modeset(struct drm_device *dev, > > EXPORT_SYMBOL(drm_atomic_helper_check_modeset); > > > > /** > > - * drm_atomic_helper_check_wb_encoder_state() - Check writeback encoder state > > - * @encoder: encoder state to check > > - * @conn_state: connector state to check > > + * drm_atomic_helper_check_wb_connector_state() - Check writeback connector state > > + * @connector: corresponding connector > > + * @state: the driver state object > > * > > * Checks if the writeback connector state is valid, and returns an error if it > > * isn't. > > @@ -806,9 +806,11 @@ EXPORT_SYMBOL(drm_atomic_helper_check_modeset); > > * Zero for success or -errno > > */ > > int > > -drm_atomic_helper_check_wb_encoder_state(struct drm_encoder *encoder, > > - struct drm_connector_state *conn_state) > > +drm_atomic_helper_check_wb_connector_state(struct drm_connector *connector, > > + struct drm_atomic_state *state) > > { > > + struct drm_connector_state *conn_state = > > + drm_atomic_get_new_connector_state(state, connector); > > struct drm_writeback_job *wb_job = conn_state->writeback_job; > > struct drm_property_blob *pixel_format_blob; > > struct drm_framebuffer *fb; > > @@ -827,11 +829,11 @@ drm_atomic_helper_check_wb_encoder_state(struct drm_encoder *encoder, > > if (fb->format->format == formats[i]) > > return 0; > > > > - drm_dbg_kms(encoder->dev, "Invalid pixel format %p4cc\n", &fb->format->format); > > + drm_dbg_kms(connector->dev, "Invalid pixel format %p4cc\n", &fb->format->format); > > > > return -EINVAL; > > } > > -EXPORT_SYMBOL(drm_atomic_helper_check_wb_encoder_state); > > +EXPORT_SYMBOL(drm_atomic_helper_check_wb_connector_state); > > Thanks for updating the prototype ... > > > /** > > * drm_atomic_helper_check_plane_state() - Check plane state for validity > > diff --git a/drivers/gpu/drm/vkms/vkms_writeback.c b/drivers/gpu/drm/vkms/vkms_writeback.c > > index d7e63aa14663..23c4f7b61cb6 100644 > > --- a/drivers/gpu/drm/vkms/vkms_writeback.c > > +++ b/drivers/gpu/drm/vkms/vkms_writeback.c > > @@ -34,6 +34,9 @@ static int vkms_wb_encoder_atomic_check(struct drm_encoder *encoder, > > struct drm_crtc_state *crtc_state, > > struct drm_connector_state *conn_state) > > { > > + struct drm_connector *connector = conn_state->connector; > > + struct drm_writeback_connector *wb_conn = > > + drm_connector_to_writeback(connector); > > struct drm_framebuffer *fb; > > const struct drm_display_mode *mode = &crtc_state->mode; > > int ret; > > @@ -48,7 +51,7 @@ static int vkms_wb_encoder_atomic_check(struct drm_encoder *encoder, > > return -EINVAL; > > } > > > > - ret = drm_atomic_helper_check_wb_encoder_state(encoder, conn_state); > > + ret = drm_atomic_helper_check_wb_connector_state(wb_conn, conn_state->state); > > ... but it looks like you forgot to update it here Indeed, I fixed it in the second patch, but forgot to update the first one. > > Maxime -- With best wishes Dmitry