On 08/05/17 17:26, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Thursday 27 Apr 2017 13:27:51 Tomi Valkeinen wrote: >> At the moment we have ovl_set_channel_out() to configure the output >> channel of an overlay. It makes sense to have this configuration as part >> of the reset of overlay configuration, and in DSS6+ we need the output > > Do you mean s/reset/rest/ ? > >> channel when doing the other overlay configuration. >> >> This patch adds 'channel' parameter to ovl_setup(), so that all overlay > > s/adds/adds a/ Thanks, fixed. >> configuration is done via the same function, and removes the >> ovl_set_channel_out(). >> >> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx> >> --- >> drivers/gpu/drm/omapdrm/dss/dispc.c | 13 ++++++------- >> drivers/gpu/drm/omapdrm/dss/omapdss.h | 3 ++- >> drivers/gpu/drm/omapdrm/omap_plane.c | 6 ++---- >> 3 files changed, 10 insertions(+), 12 deletions(-) >> >> diff --git a/drivers/gpu/drm/omapdrm/dss/dispc.c >> b/drivers/gpu/drm/omapdrm/dss/dispc.c index 9fba92973d0e..97f4a1163fbe >> 100644 >> --- a/drivers/gpu/drm/omapdrm/dss/dispc.c >> +++ b/drivers/gpu/drm/omapdrm/dss/dispc.c >> @@ -2834,21 +2834,21 @@ static int dispc_ovl_setup_common(enum omap_plane_id >> plane, >> >> static int dispc_ovl_setup(enum omap_plane_id plane, >> const struct omap_overlay_info *oi, >> - const struct videomode *vm, bool mem_to_mem) >> + const struct videomode *vm, bool mem_to_mem, >> + enum omap_channel channel) >> { >> int r; >> enum omap_overlay_caps caps = dss_feat_get_overlay_caps(plane); >> - enum omap_channel channel; >> const bool replication = true; >> >> - channel = dispc_ovl_get_channel_out(plane); >> - >> DSSDBG("dispc_ovl_setup %d, pa %pad, pa_uv %pad, sw %d, %d,%d, %dx%d - >> " >> " %dx%d, cmode %x, rot %d, mir %d, chan %d repl %d\n", >> plane, &oi->paddr, &oi->p_uv_addr, oi->screen_width, oi- >> pos_x, >> oi->pos_y, oi->width, oi->height, oi->out_width, oi- >> out_height, >> oi->color_mode, oi->rotation, oi->mirror, channel, > replication); >> >> + dispc_ovl_set_channel_out(plane, channel); >> + >> r = dispc_ovl_setup_common(plane, caps, oi->paddr, oi->p_uv_addr, >> oi->screen_width, oi->pos_x, oi->pos_y, oi->width, oi->height, >> oi->out_width, oi->out_height, oi->color_mode, oi->rotation, >> @@ -4304,8 +4304,8 @@ static void dispc_errata_i734_wa(void) >> REG_FLD_MOD(DISPC_CONFIG, 0x1f, 8, 4); >> >> /* Setup and enable GFX plane */ >> - dispc_ovl_set_channel_out(OMAP_DSS_GFX, OMAP_DSS_CHANNEL_LCD); >> - dispc_ovl_setup(OMAP_DSS_GFX, &ovli, &i734.vm, false); >> + dispc_ovl_setup(OMAP_DSS_GFX, &ovli, &i734.vm, false, >> + OMAP_DSS_CHANNEL_LCD); >> dispc_ovl_enable(OMAP_DSS_GFX, true); >> >> /* Set up and enable display manager for LCD1 */ >> @@ -4372,7 +4372,6 @@ static const struct dispc_ops dispc_ops = { >> .mgr_set_gamma = dispc_mgr_set_gamma, >> >> .ovl_enable = dispc_ovl_enable, >> - .ovl_set_channel_out = dispc_ovl_set_channel_out, >> .ovl_setup = dispc_ovl_setup, >> .ovl_get_color_modes = dispc_ovl_get_color_modes, >> }; >> diff --git a/drivers/gpu/drm/omapdrm/dss/omapdss.h >> b/drivers/gpu/drm/omapdrm/dss/omapdss.h index d9ad33df0455..a2b9b7f29472 >> 100644 >> --- a/drivers/gpu/drm/omapdrm/dss/omapdss.h >> +++ b/drivers/gpu/drm/omapdrm/dss/omapdss.h >> @@ -917,7 +917,8 @@ struct dispc_ops { >> enum omap_channel channel); > > Shouldn't you also remove the .ovl_set_channel_out() operation from this > structure ? Ah missed that, thanks.
Attachment:
signature.asc
Description: OpenPGP digital signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel