* [PATCH] drm: add missing ctx argument to plane transitional helpers
@ 2018-07-02 16:21 Russell King
[not found] ` <E1fa1Zr-0005gT-VF-eh5Bv4kxaXIk46pC+1QYvQNdhmdF6hFW@public.gmane.org>
0 siblings, 1 reply; 2+ messages in thread
From: Russell King @ 2018-07-02 16:21 UTC (permalink / raw)
To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, Daniel Vetter
Cc: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, David Airlie,
Gustavo Padovan, Maarten Lankhorst, Liviu Dudau, Shawn Guo,
Eric Anholt, Rob Clark, Alexey Brodkin, Mali DP Maintainers,
Benjamin Gaignard, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA,
Sean Paul, Vincent Abriou, Brian Starkey
In commits:
34a2ab5e0689 ("drm: Add acquire ctx parameter to ->update_plane")
1931529448bc ("drm: Add acquire ctx parameter to ->plane_disable")
a pointer to a drm_modeset_acquire_ctx structure was added as an
argument to the method prototypes. The transitional helpers are
supposed to be directly plugged in as implementations of these
methods, but doing so generates a warning. Add the missing
argument.
A number of buggy users were added for drm_plane_helper_disable()
which need to be fixed up for this change, which we do by passing
a NULL ctx argument.
Fixes: 1931529448bc ("drm: Add acquire ctx parameter to ->plane_disable")
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
---
Note: not build for all the affected drivers yet.
drivers/gpu/drm/arc/arcpgu_crtc.c | 2 +-
drivers/gpu/drm/arm/hdlcd_crtc.c | 2 +-
drivers/gpu/drm/drm_plane_helper.c | 8 ++++++--
drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c | 2 +-
drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c | 2 +-
drivers/gpu/drm/sti/sti_cursor.c | 2 +-
drivers/gpu/drm/sti/sti_gdp.c | 2 +-
drivers/gpu/drm/sti/sti_hqvdp.c | 2 +-
drivers/gpu/drm/vc4/vc4_plane.c | 2 +-
drivers/gpu/drm/zte/zx_plane.c | 2 +-
include/drm/drm_plane_helper.h | 6 ++++--
11 files changed, 19 insertions(+), 13 deletions(-)
diff --git a/drivers/gpu/drm/arc/arcpgu_crtc.c b/drivers/gpu/drm/arc/arcpgu_crtc.c
index c3349b8fb58b..965cda48dc13 100644
--- a/drivers/gpu/drm/arc/arcpgu_crtc.c
+++ b/drivers/gpu/drm/arc/arcpgu_crtc.c
@@ -186,7 +186,7 @@ static const struct drm_plane_helper_funcs arc_pgu_plane_helper_funcs = {
static void arc_pgu_plane_destroy(struct drm_plane *plane)
{
- drm_plane_helper_disable(plane);
+ drm_plane_helper_disable(plane, NULL);
drm_plane_cleanup(plane);
}
diff --git a/drivers/gpu/drm/arm/hdlcd_crtc.c b/drivers/gpu/drm/arm/hdlcd_crtc.c
index cf5cbd63ecdf..f3f08cd6e9ef 100644
--- a/drivers/gpu/drm/arm/hdlcd_crtc.c
+++ b/drivers/gpu/drm/arm/hdlcd_crtc.c
@@ -282,7 +282,7 @@ static const struct drm_plane_helper_funcs hdlcd_plane_helper_funcs = {
static void hdlcd_plane_destroy(struct drm_plane *plane)
{
- drm_plane_helper_disable(plane);
+ drm_plane_helper_disable(plane, NULL);
drm_plane_cleanup(plane);
}
diff --git a/drivers/gpu/drm/drm_plane_helper.c b/drivers/gpu/drm/drm_plane_helper.c
index 2010794943bc..621f17643bb0 100644
--- a/drivers/gpu/drm/drm_plane_helper.c
+++ b/drivers/gpu/drm/drm_plane_helper.c
@@ -440,6 +440,7 @@ int drm_plane_helper_commit(struct drm_plane *plane,
* @src_y: y offset of @fb for panning
* @src_w: width of source rectangle in @fb
* @src_h: height of source rectangle in @fb
+ * @ctx: lock acquire context, not used here
*
* Provides a default plane update handler using the atomic plane update
* functions. It is fully left to the driver to check plane constraints and
@@ -455,7 +456,8 @@ int drm_plane_helper_update(struct drm_plane *plane, struct drm_crtc *crtc,
int crtc_x, int crtc_y,
unsigned int crtc_w, unsigned int crtc_h,
uint32_t src_x, uint32_t src_y,
- uint32_t src_w, uint32_t src_h)
+ uint32_t src_w, uint32_t src_h,
+ struct drm_modeset_acquire_ctx *ctx)
{
struct drm_plane_state *plane_state;
@@ -489,6 +491,7 @@ EXPORT_SYMBOL(drm_plane_helper_update);
/**
* drm_plane_helper_disable() - Transitional helper for plane disable
* @plane: plane to disable
+ * @ctx: lock acquire context, not used here
*
* Provides a default plane disable handler using the atomic plane update
* functions. It is fully left to the driver to check plane constraints and
@@ -499,7 +502,8 @@ EXPORT_SYMBOL(drm_plane_helper_update);
* RETURNS:
* Zero on success, error code on failure
*/
-int drm_plane_helper_disable(struct drm_plane *plane)
+int drm_plane_helper_disable(struct drm_plane *plane,
+ struct drm_modeset_acquire_ctx *ctx)
{
struct drm_plane_state *plane_state;
struct drm_framebuffer *old_fb;
diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c b/drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c
index 7b641fa6dc4d..79ff653d8081 100644
--- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c
+++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c
@@ -68,7 +68,7 @@ static void mdp4_plane_destroy(struct drm_plane *plane)
{
struct mdp4_plane *mdp4_plane = to_mdp4_plane(plane);
- drm_plane_helper_disable(plane);
+ drm_plane_helper_disable(plane, NULL);
drm_plane_cleanup(plane);
kfree(mdp4_plane);
diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c
index c4f115fe96ff..7d306c5acd09 100644
--- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c
+++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c
@@ -46,7 +46,7 @@ static void mdp5_plane_destroy(struct drm_plane *plane)
{
struct mdp5_plane *mdp5_plane = to_mdp5_plane(plane);
- drm_plane_helper_disable(plane);
+ drm_plane_helper_disable(plane, NULL);
drm_plane_cleanup(plane);
kfree(mdp5_plane);
diff --git a/drivers/gpu/drm/sti/sti_cursor.c b/drivers/gpu/drm/sti/sti_cursor.c
index df0a282b9615..57b870e1e696 100644
--- a/drivers/gpu/drm/sti/sti_cursor.c
+++ b/drivers/gpu/drm/sti/sti_cursor.c
@@ -332,7 +332,7 @@ static void sti_cursor_destroy(struct drm_plane *drm_plane)
{
DRM_DEBUG_DRIVER("\n");
- drm_plane_helper_disable(drm_plane);
+ drm_plane_helper_disable(drm_plane, NULL);
drm_plane_cleanup(drm_plane);
}
diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c
index 49813d34bdf0..c32de6cbf061 100644
--- a/drivers/gpu/drm/sti/sti_gdp.c
+++ b/drivers/gpu/drm/sti/sti_gdp.c
@@ -883,7 +883,7 @@ static void sti_gdp_destroy(struct drm_plane *drm_plane)
{
DRM_DEBUG_DRIVER("\n");
- drm_plane_helper_disable(drm_plane);
+ drm_plane_helper_disable(drm_plane, NULL);
drm_plane_cleanup(drm_plane);
}
diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c
index 106be8c4e58b..03ac3b4a4469 100644
--- a/drivers/gpu/drm/sti/sti_hqvdp.c
+++ b/drivers/gpu/drm/sti/sti_hqvdp.c
@@ -1260,7 +1260,7 @@ static void sti_hqvdp_destroy(struct drm_plane *drm_plane)
{
DRM_DEBUG_DRIVER("\n");
- drm_plane_helper_disable(drm_plane);
+ drm_plane_helper_disable(drm_plane, NULL);
drm_plane_cleanup(drm_plane);
}
diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
index 8604fd2e7c5a..9d7a36f148cf 100644
--- a/drivers/gpu/drm/vc4/vc4_plane.c
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
@@ -902,7 +902,7 @@ static const struct drm_plane_helper_funcs vc4_plane_helper_funcs = {
static void vc4_plane_destroy(struct drm_plane *plane)
{
- drm_plane_helper_disable(plane);
+ drm_plane_helper_disable(plane, NULL);
drm_plane_cleanup(plane);
}
diff --git a/drivers/gpu/drm/zte/zx_plane.c b/drivers/gpu/drm/zte/zx_plane.c
index d1931f5ea0b2..ae8c53b4b261 100644
--- a/drivers/gpu/drm/zte/zx_plane.c
+++ b/drivers/gpu/drm/zte/zx_plane.c
@@ -446,7 +446,7 @@ static const struct drm_plane_helper_funcs zx_gl_plane_helper_funcs = {
static void zx_plane_destroy(struct drm_plane *plane)
{
- drm_plane_helper_disable(plane);
+ drm_plane_helper_disable(plane, NULL);
drm_plane_cleanup(plane);
}
diff --git a/include/drm/drm_plane_helper.h b/include/drm/drm_plane_helper.h
index 28d7ce620729..26cee2934781 100644
--- a/include/drm/drm_plane_helper.h
+++ b/include/drm/drm_plane_helper.h
@@ -67,8 +67,10 @@ int drm_plane_helper_update(struct drm_plane *plane, struct drm_crtc *crtc,
int crtc_x, int crtc_y,
unsigned int crtc_w, unsigned int crtc_h,
uint32_t src_x, uint32_t src_y,
- uint32_t src_w, uint32_t src_h);
-int drm_plane_helper_disable(struct drm_plane *plane);
+ uint32_t src_w, uint32_t src_h,
+ struct drm_modeset_acquire_ctx *ctx);
+int drm_plane_helper_disable(struct drm_plane *plane,
+ struct drm_modeset_acquire_ctx *ctx);
/* For use by drm_crtc_helper.c */
int drm_plane_helper_commit(struct drm_plane *plane,
--
2.7.4
_______________________________________________
Freedreno mailing list
Freedreno@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/freedreno
^ permalink raw reply related [flat|nested] 2+ messages in thread[parent not found: <E1fa1Zr-0005gT-VF-eh5Bv4kxaXIk46pC+1QYvQNdhmdF6hFW@public.gmane.org>]
* Re: [PATCH] drm: add missing ctx argument to plane transitional helpers [not found] ` <E1fa1Zr-0005gT-VF-eh5Bv4kxaXIk46pC+1QYvQNdhmdF6hFW@public.gmane.org> @ 2018-07-03 7:32 ` Daniel Vetter 0 siblings, 0 replies; 2+ messages in thread From: Daniel Vetter @ 2018-07-03 7:32 UTC (permalink / raw) To: Russell King Cc: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, Benjamin Gaignard, David Airlie, Alexey Brodkin, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA, Maarten Lankhorst, Liviu Dudau, Shawn Guo, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, Eric Anholt, Rob Clark, Mali DP Maintainers, Daniel Vetter, Gustavo Padovan, Sean Paul, Vincent Abriou, Brian Starkey On Mon, Jul 02, 2018 at 05:21:23PM +0100, Russell King wrote: > In commits: > 34a2ab5e0689 ("drm: Add acquire ctx parameter to ->update_plane") > 1931529448bc ("drm: Add acquire ctx parameter to ->plane_disable") > > a pointer to a drm_modeset_acquire_ctx structure was added as an > argument to the method prototypes. The transitional helpers are > supposed to be directly plugged in as implementations of these > methods, but doing so generates a warning. Add the missing > argument. > > A number of buggy users were added for drm_plane_helper_disable() > which need to be fixed up for this change, which we do by passing > a NULL ctx argument. > > Fixes: 1931529448bc ("drm: Add acquire ctx parameter to ->plane_disable") > Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> > --- > Note: not build for all the affected drivers yet. Did build just fine, so I applied it and pushed it out. I think Gustavo will do another drm-misc-next pull later this week, so next week it should be all in drm-next for you to do an armada pull against. Thanks, Daniel > > drivers/gpu/drm/arc/arcpgu_crtc.c | 2 +- > drivers/gpu/drm/arm/hdlcd_crtc.c | 2 +- > drivers/gpu/drm/drm_plane_helper.c | 8 ++++++-- > drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c | 2 +- > drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c | 2 +- > drivers/gpu/drm/sti/sti_cursor.c | 2 +- > drivers/gpu/drm/sti/sti_gdp.c | 2 +- > drivers/gpu/drm/sti/sti_hqvdp.c | 2 +- > drivers/gpu/drm/vc4/vc4_plane.c | 2 +- > drivers/gpu/drm/zte/zx_plane.c | 2 +- > include/drm/drm_plane_helper.h | 6 ++++-- > 11 files changed, 19 insertions(+), 13 deletions(-) > > diff --git a/drivers/gpu/drm/arc/arcpgu_crtc.c b/drivers/gpu/drm/arc/arcpgu_crtc.c > index c3349b8fb58b..965cda48dc13 100644 > --- a/drivers/gpu/drm/arc/arcpgu_crtc.c > +++ b/drivers/gpu/drm/arc/arcpgu_crtc.c > @@ -186,7 +186,7 @@ static const struct drm_plane_helper_funcs arc_pgu_plane_helper_funcs = { > > static void arc_pgu_plane_destroy(struct drm_plane *plane) > { > - drm_plane_helper_disable(plane); > + drm_plane_helper_disable(plane, NULL); > drm_plane_cleanup(plane); > } > > diff --git a/drivers/gpu/drm/arm/hdlcd_crtc.c b/drivers/gpu/drm/arm/hdlcd_crtc.c > index cf5cbd63ecdf..f3f08cd6e9ef 100644 > --- a/drivers/gpu/drm/arm/hdlcd_crtc.c > +++ b/drivers/gpu/drm/arm/hdlcd_crtc.c > @@ -282,7 +282,7 @@ static const struct drm_plane_helper_funcs hdlcd_plane_helper_funcs = { > > static void hdlcd_plane_destroy(struct drm_plane *plane) > { > - drm_plane_helper_disable(plane); > + drm_plane_helper_disable(plane, NULL); > drm_plane_cleanup(plane); > } > > diff --git a/drivers/gpu/drm/drm_plane_helper.c b/drivers/gpu/drm/drm_plane_helper.c > index 2010794943bc..621f17643bb0 100644 > --- a/drivers/gpu/drm/drm_plane_helper.c > +++ b/drivers/gpu/drm/drm_plane_helper.c > @@ -440,6 +440,7 @@ int drm_plane_helper_commit(struct drm_plane *plane, > * @src_y: y offset of @fb for panning > * @src_w: width of source rectangle in @fb > * @src_h: height of source rectangle in @fb > + * @ctx: lock acquire context, not used here > * > * Provides a default plane update handler using the atomic plane update > * functions. It is fully left to the driver to check plane constraints and > @@ -455,7 +456,8 @@ int drm_plane_helper_update(struct drm_plane *plane, struct drm_crtc *crtc, > int crtc_x, int crtc_y, > unsigned int crtc_w, unsigned int crtc_h, > uint32_t src_x, uint32_t src_y, > - uint32_t src_w, uint32_t src_h) > + uint32_t src_w, uint32_t src_h, > + struct drm_modeset_acquire_ctx *ctx) > { > struct drm_plane_state *plane_state; > > @@ -489,6 +491,7 @@ EXPORT_SYMBOL(drm_plane_helper_update); > /** > * drm_plane_helper_disable() - Transitional helper for plane disable > * @plane: plane to disable > + * @ctx: lock acquire context, not used here > * > * Provides a default plane disable handler using the atomic plane update > * functions. It is fully left to the driver to check plane constraints and > @@ -499,7 +502,8 @@ EXPORT_SYMBOL(drm_plane_helper_update); > * RETURNS: > * Zero on success, error code on failure > */ > -int drm_plane_helper_disable(struct drm_plane *plane) > +int drm_plane_helper_disable(struct drm_plane *plane, > + struct drm_modeset_acquire_ctx *ctx) > { > struct drm_plane_state *plane_state; > struct drm_framebuffer *old_fb; > diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c b/drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c > index 7b641fa6dc4d..79ff653d8081 100644 > --- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c > +++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c > @@ -68,7 +68,7 @@ static void mdp4_plane_destroy(struct drm_plane *plane) > { > struct mdp4_plane *mdp4_plane = to_mdp4_plane(plane); > > - drm_plane_helper_disable(plane); > + drm_plane_helper_disable(plane, NULL); > drm_plane_cleanup(plane); > > kfree(mdp4_plane); > diff --git a/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c b/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c > index c4f115fe96ff..7d306c5acd09 100644 > --- a/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c > +++ b/drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c > @@ -46,7 +46,7 @@ static void mdp5_plane_destroy(struct drm_plane *plane) > { > struct mdp5_plane *mdp5_plane = to_mdp5_plane(plane); > > - drm_plane_helper_disable(plane); > + drm_plane_helper_disable(plane, NULL); > drm_plane_cleanup(plane); > > kfree(mdp5_plane); > diff --git a/drivers/gpu/drm/sti/sti_cursor.c b/drivers/gpu/drm/sti/sti_cursor.c > index df0a282b9615..57b870e1e696 100644 > --- a/drivers/gpu/drm/sti/sti_cursor.c > +++ b/drivers/gpu/drm/sti/sti_cursor.c > @@ -332,7 +332,7 @@ static void sti_cursor_destroy(struct drm_plane *drm_plane) > { > DRM_DEBUG_DRIVER("\n"); > > - drm_plane_helper_disable(drm_plane); > + drm_plane_helper_disable(drm_plane, NULL); > drm_plane_cleanup(drm_plane); > } > > diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c > index 49813d34bdf0..c32de6cbf061 100644 > --- a/drivers/gpu/drm/sti/sti_gdp.c > +++ b/drivers/gpu/drm/sti/sti_gdp.c > @@ -883,7 +883,7 @@ static void sti_gdp_destroy(struct drm_plane *drm_plane) > { > DRM_DEBUG_DRIVER("\n"); > > - drm_plane_helper_disable(drm_plane); > + drm_plane_helper_disable(drm_plane, NULL); > drm_plane_cleanup(drm_plane); > } > > diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c > index 106be8c4e58b..03ac3b4a4469 100644 > --- a/drivers/gpu/drm/sti/sti_hqvdp.c > +++ b/drivers/gpu/drm/sti/sti_hqvdp.c > @@ -1260,7 +1260,7 @@ static void sti_hqvdp_destroy(struct drm_plane *drm_plane) > { > DRM_DEBUG_DRIVER("\n"); > > - drm_plane_helper_disable(drm_plane); > + drm_plane_helper_disable(drm_plane, NULL); > drm_plane_cleanup(drm_plane); > } > > diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c > index 8604fd2e7c5a..9d7a36f148cf 100644 > --- a/drivers/gpu/drm/vc4/vc4_plane.c > +++ b/drivers/gpu/drm/vc4/vc4_plane.c > @@ -902,7 +902,7 @@ static const struct drm_plane_helper_funcs vc4_plane_helper_funcs = { > > static void vc4_plane_destroy(struct drm_plane *plane) > { > - drm_plane_helper_disable(plane); > + drm_plane_helper_disable(plane, NULL); > drm_plane_cleanup(plane); > } > > diff --git a/drivers/gpu/drm/zte/zx_plane.c b/drivers/gpu/drm/zte/zx_plane.c > index d1931f5ea0b2..ae8c53b4b261 100644 > --- a/drivers/gpu/drm/zte/zx_plane.c > +++ b/drivers/gpu/drm/zte/zx_plane.c > @@ -446,7 +446,7 @@ static const struct drm_plane_helper_funcs zx_gl_plane_helper_funcs = { > > static void zx_plane_destroy(struct drm_plane *plane) > { > - drm_plane_helper_disable(plane); > + drm_plane_helper_disable(plane, NULL); > drm_plane_cleanup(plane); > } > > diff --git a/include/drm/drm_plane_helper.h b/include/drm/drm_plane_helper.h > index 28d7ce620729..26cee2934781 100644 > --- a/include/drm/drm_plane_helper.h > +++ b/include/drm/drm_plane_helper.h > @@ -67,8 +67,10 @@ int drm_plane_helper_update(struct drm_plane *plane, struct drm_crtc *crtc, > int crtc_x, int crtc_y, > unsigned int crtc_w, unsigned int crtc_h, > uint32_t src_x, uint32_t src_y, > - uint32_t src_w, uint32_t src_h); > -int drm_plane_helper_disable(struct drm_plane *plane); > + uint32_t src_w, uint32_t src_h, > + struct drm_modeset_acquire_ctx *ctx); > +int drm_plane_helper_disable(struct drm_plane *plane, > + struct drm_modeset_acquire_ctx *ctx); > > /* For use by drm_crtc_helper.c */ > int drm_plane_helper_commit(struct drm_plane *plane, > -- > 2.7.4 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Freedreno mailing list Freedreno@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/freedreno ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2018-07-03 7:32 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-02 16:21 [PATCH] drm: add missing ctx argument to plane transitional helpers Russell King
[not found] ` <E1fa1Zr-0005gT-VF-eh5Bv4kxaXIk46pC+1QYvQNdhmdF6hFW@public.gmane.org>
2018-07-03 7:32 ` Daniel Vetter
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox