Factor out the manual container_of() uses to a common to_lvds_codec() macro to shorten lines (and provide better type safety, although that won't matter much in this case).
Signed-off-by: Laurent Pinchart laurent.pinchart+renesas@ideasonboard.com --- drivers/gpu/drm/bridge/lvds-codec.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-)
Boris,
This patch conflicts with "[PATCH v10 08/12] drm/bridge: lvds-codec: Implement basic bus format negotiation" (it's actually a drive-by patch that I wrote as I was reviewing yours series). Feel free to get it merged first if that can help.
diff --git a/drivers/gpu/drm/bridge/lvds-codec.c b/drivers/gpu/drm/bridge/lvds-codec.c index 5f04cc11227e..ae173d84dc8f 100644 --- a/drivers/gpu/drm/bridge/lvds-codec.c +++ b/drivers/gpu/drm/bridge/lvds-codec.c @@ -21,10 +21,14 @@ struct lvds_codec { u32 connector_type; };
+static inline struct lvds_codec *to_lvds_codec(struct drm_bridge *bridge) +{ + return container_of(bridge, struct lvds_codec, bridge); +} + static int lvds_codec_attach(struct drm_bridge *bridge) { - struct lvds_codec *lvds_codec = container_of(bridge, - struct lvds_codec, bridge); + struct lvds_codec *lvds_codec = to_lvds_codec(bridge);
return drm_bridge_attach(bridge->encoder, lvds_codec->panel_bridge, bridge); @@ -32,8 +36,7 @@ static int lvds_codec_attach(struct drm_bridge *bridge)
static void lvds_codec_enable(struct drm_bridge *bridge) { - struct lvds_codec *lvds_codec = container_of(bridge, - struct lvds_codec, bridge); + struct lvds_codec *lvds_codec = to_lvds_codec(bridge);
if (lvds_codec->powerdown_gpio) gpiod_set_value_cansleep(lvds_codec->powerdown_gpio, 0); @@ -41,8 +44,7 @@ static void lvds_codec_enable(struct drm_bridge *bridge)
static void lvds_codec_disable(struct drm_bridge *bridge) { - struct lvds_codec *lvds_codec = container_of(bridge, - struct lvds_codec, bridge); + struct lvds_codec *lvds_codec = to_lvds_codec(bridge);
if (lvds_codec->powerdown_gpio) gpiod_set_value_cansleep(lvds_codec->powerdown_gpio, 1);
dri-devel@lists.freedesktop.org