Hi Daniel. On Wed, Apr 15, 2020 at 09:40:15AM +0200, Daniel Vetter wrote: > Upcasting using a container_of macro is more typesafe, faster and > easier for the compiler to optimize. > > Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx> > Cc: Alexey Brodkin <abrodkin@xxxxxxxxxxxx> Subject: drm/arc: arcpgu: Stop using drm_device->dev_private And another bikeshedding below. With this considered: Acked-by: Sam Ravnborg <sam@xxxxxxxxxxxx> > --- > drivers/gpu/drm/arc/arcpgu.h | 2 ++ > drivers/gpu/drm/arc/arcpgu_crtc.c | 4 ++-- > drivers/gpu/drm/arc/arcpgu_drv.c | 4 +--- > 3 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/arc/arcpgu.h b/drivers/gpu/drm/arc/arcpgu.h > index cd9e932f501e..87821c91a00c 100644 > --- a/drivers/gpu/drm/arc/arcpgu.h > +++ b/drivers/gpu/drm/arc/arcpgu.h > @@ -17,6 +17,8 @@ struct arcpgu_drm_private { > struct drm_plane *plane; > }; > > +#define dev_to_arcpgu(x) container_of(x, struct arcpgu_drm_private, drm) > + Preferred name is to_arcgpu(). There is no device in the name of struct arcpgu_drm_private. And the general consensus it to use to_<driver> for the top-level struct. > #define crtc_to_arcpgu_priv(x) container_of(x, struct arcpgu_drm_private, crtc) > > static inline void arc_pgu_write(struct arcpgu_drm_private *arcpgu, > diff --git a/drivers/gpu/drm/arc/arcpgu_crtc.c b/drivers/gpu/drm/arc/arcpgu_crtc.c > index be7c29cec318..ba796a216244 100644 > --- a/drivers/gpu/drm/arc/arcpgu_crtc.c > +++ b/drivers/gpu/drm/arc/arcpgu_crtc.c > @@ -178,7 +178,7 @@ static const struct drm_plane_funcs arc_pgu_plane_funcs = { > > static struct drm_plane *arc_pgu_plane_init(struct drm_device *drm) > { > - struct arcpgu_drm_private *arcpgu = drm->dev_private; > + struct arcpgu_drm_private *arcpgu = dev_to_arcpgu(drm); > struct drm_plane *plane = NULL; > int ret; > > @@ -202,7 +202,7 @@ static struct drm_plane *arc_pgu_plane_init(struct drm_device *drm) > > int arc_pgu_setup_crtc(struct drm_device *drm) > { > - struct arcpgu_drm_private *arcpgu = drm->dev_private; > + struct arcpgu_drm_private *arcpgu = dev_to_arcpgu(drm); > struct drm_plane *primary; > int ret; > > diff --git a/drivers/gpu/drm/arc/arcpgu_drv.c b/drivers/gpu/drm/arc/arcpgu_drv.c > index bbd7acb150f3..81b8d7ae6623 100644 > --- a/drivers/gpu/drm/arc/arcpgu_drv.c > +++ b/drivers/gpu/drm/arc/arcpgu_drv.c > @@ -50,8 +50,6 @@ static int arcpgu_load(struct arcpgu_drm_private *arcpgu) > struct resource *res; > int ret; > > - drm->dev_private = arcpgu; > - > arcpgu->clk = devm_clk_get(drm->dev, "pxlclk"); > if (IS_ERR(arcpgu->clk)) > return PTR_ERR(arcpgu->clk); > @@ -120,7 +118,7 @@ static int arcpgu_show_pxlclock(struct seq_file *m, void *arg) > { > struct drm_info_node *node = (struct drm_info_node *)m->private; > struct drm_device *drm = node->minor->dev; > - struct arcpgu_drm_private *arcpgu = drm->dev_private; > + struct arcpgu_drm_private *arcpgu = dev_to_arcpgu(drm); > unsigned long clkrate = clk_get_rate(arcpgu->clk); > unsigned long mode_clock = arcpgu->crtc.mode.crtc_clock * 1000; > > -- > 2.25.1 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx