Hey Heiko, > this description is missing a rationale. > > Looking at the drm git history, I guess here you could add a second > paragraph, with something like: > > ----------- 8< ----------- > The helpers have been deprecated for years as they only add an an > intermediate layer between atomic modesetting and the DRM driver. > ----------- 8< ----------- > > Shamelessly stolen from the Todo item ;-)
True. I will add the rationale then. > Any reason for only changing the DSI driver? > > Looking at [0] a number of the Rockchip drivers use the same pattern: > - drivers/gpu/drm/rockchip/analogix_dp-rockchip.c > - drivers/gpu/drm/rockchip/cdn-dp-core.c > - drivers/gpu/drm/rockchip/dw-mipi-dsi-rockchip.c > - drivers/gpu/drm/rockchip/dw-mipi-dsi2-rockchip.c > - drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c > - drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c > - drivers/gpu/drm/rockchip/rk3066_hdmi.c > - drivers/gpu/drm/rockchip/rockchip_lvds.c > - drivers/gpu/drm/rockchip/rockchip_rgb.c > > You can just do all Rockchip ones - even in one patch I think :-) . Yes, indeed. I wanted to send a tiny patch to check if all my configurations were ok, but since it looks like they are, I will add the other rockchip drivers that have the deprecated functions. Thanks, Diogo On Sun, 7 Jun 2026 at 12:59, Heiko Stuebner <[email protected]> wrote: > > Hi Diego, > > Am Donnerstag, 4. Juni 2026, 14:32:25 Mitteleuropäische Sommerzeit schrieb > Diogo Silva: > > Remove the dependency on drm_simple_kms_helper by open-coding the > > drm_simple_encoder_init call. > > this description is missing a rationale. > > Looking at the drm git history, I guess here you could add a second > paragraph, with something like: > > ----------- 8< ----------- > The helpers have been deprecated for years as they only add an an > intermediate layer between atomic modesetting and the DRM driver. > ----------- 8< ----------- > > Shamelessly stolen from the Todo item ;-) > > > > Signed-off-by: Diogo Silva <[email protected]> > > --- > > drivers/gpu/drm/rockchip/dw-mipi-dsi-rockchip.c | 9 +++++++-- > > Any reason for only changing the DSI driver? > > Looking at [0] a number of the Rockchip drivers use the same pattern: > - drivers/gpu/drm/rockchip/analogix_dp-rockchip.c > - drivers/gpu/drm/rockchip/cdn-dp-core.c > - drivers/gpu/drm/rockchip/dw-mipi-dsi-rockchip.c > - drivers/gpu/drm/rockchip/dw-mipi-dsi2-rockchip.c > - drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c > - drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c > - drivers/gpu/drm/rockchip/rk3066_hdmi.c > - drivers/gpu/drm/rockchip/rockchip_lvds.c > - drivers/gpu/drm/rockchip/rockchip_rgb.c > > You can just do all Rockchip ones - even in one patch I think :-) . > > > Thanks > Heiko > > [0] https://elixir.bootlin.com/linux/v7.1-rc6/A/ident/drm_simple_encoder_init > > > > 1 file changed, 7 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/rockchip/dw-mipi-dsi-rockchip.c > > b/drivers/gpu/drm/rockchip/dw-mipi-dsi-rockchip.c > > index 3547d91b25d3..a09b382d208e 100644 > > --- a/drivers/gpu/drm/rockchip/dw-mipi-dsi-rockchip.c > > +++ b/drivers/gpu/drm/rockchip/dw-mipi-dsi-rockchip.c > > @@ -25,7 +25,6 @@ > > #include <drm/drm_mipi_dsi.h> > > #include <drm/drm_of.h> > > #include <drm/drm_print.h> > > -#include <drm/drm_simple_kms_helper.h> > > > > #include "rockchip_drm_drv.h" > > > > @@ -825,6 +824,10 @@ static void dw_mipi_dsi_encoder_enable(struct > > drm_encoder *encoder) > > clk_disable_unprepare(dsi->grf_clk); > > } > > > > +static const struct drm_encoder_funcs dw_mipi_dsi_encoder_funcs = { > > + .destroy = drm_encoder_cleanup, > > +}; > > + > > static const struct drm_encoder_helper_funcs > > dw_mipi_dsi_encoder_helper_funcs = { > > .atomic_check = dw_mipi_dsi_encoder_atomic_check, > > @@ -840,7 +843,9 @@ static int rockchip_dsi_drm_create_encoder(struct > > dw_mipi_dsi_rockchip *dsi, > > encoder->possible_crtcs = drm_of_find_possible_crtcs(drm_dev, > > > > dsi->dev->of_node); > > > > - ret = drm_simple_encoder_init(drm_dev, encoder, DRM_MODE_ENCODER_DSI); > > + ret = drm_encoder_init(drm_dev, encoder, > > + &dw_mipi_dsi_encoder_funcs, > > + DRM_MODE_ENCODER_DSI, NULL); > > if (ret) { > > DRM_ERROR("Failed to initialize encoder with drm\n"); > > return ret; > > > > > >
