[Intel-gfx] [PATCH 50/59] drm/arc: Inline arcpgu_drm_hdmi_init
Sam Ravnborg
sam at ravnborg.org
Fri Apr 24 17:54:10 UTC 2020
Hi Daniel.
On Wed, Apr 15, 2020 at 09:40:25AM +0200, Daniel Vetter wrote:
> Really not worth the function, much less the separate file now that
> almost all the code is gone.
>
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> ---
> drivers/gpu/drm/arc/Makefile | 2 +-
> drivers/gpu/drm/arc/arcpgu.h | 1 -
> drivers/gpu/drm/arc/arcpgu_drv.c | 12 +++++++++---
> drivers/gpu/drm/arc/arcpgu_hdmi.c | 27 ---------------------------
> 4 files changed, 10 insertions(+), 32 deletions(-)
> delete mode 100644 drivers/gpu/drm/arc/arcpgu_hdmi.c
>
> diff --git a/drivers/gpu/drm/arc/Makefile b/drivers/gpu/drm/arc/Makefile
> index c686e0287a71..379a1145bc2f 100644
> --- a/drivers/gpu/drm/arc/Makefile
> +++ b/drivers/gpu/drm/arc/Makefile
> @@ -1,3 +1,3 @@
> # SPDX-License-Identifier: GPL-2.0-only
> -arcpgu-y := arcpgu_hdmi.o arcpgu_sim.o arcpgu_drv.o
> +arcpgu-y := arcpgu_sim.o arcpgu_drv.o
> obj-$(CONFIG_DRM_ARCPGU) += arcpgu.o
> diff --git a/drivers/gpu/drm/arc/arcpgu.h b/drivers/gpu/drm/arc/arcpgu.h
> index cee2448a07d6..7dce0c2313ba 100644
> --- a/drivers/gpu/drm/arc/arcpgu.h
> +++ b/drivers/gpu/drm/arc/arcpgu.h
> @@ -34,7 +34,6 @@ static inline u32 arc_pgu_read(struct arcpgu_drm_private *arcpgu,
> return ioread32(arcpgu->regs + reg);
> }
>
> -int arcpgu_drm_hdmi_init(struct drm_device *drm, struct device_node *np);
> int arcpgu_drm_sim_init(struct drm_device *drm, struct device_node *np);
>
> #endif
> diff --git a/drivers/gpu/drm/arc/arcpgu_drv.c b/drivers/gpu/drm/arc/arcpgu_drv.c
> index 2443e3c78a76..8fbfd956de0a 100644
> --- a/drivers/gpu/drm/arc/arcpgu_drv.c
> +++ b/drivers/gpu/drm/arc/arcpgu_drv.c
> @@ -227,9 +227,15 @@ static int arcpgu_load(struct arcpgu_drm_private *arcpgu)
> }
>
> if (encoder_node) {
> - ret = arcpgu_drm_hdmi_init(drm, encoder_node);
> - of_node_put(encoder_node);
This put is missing when arcpgu_drm_hdmi_init() was inlined.
At least in the (!bridge) case - I did not look at the surrounding code.
Sam
> - if (ret < 0)
> + struct drm_bridge *bridge;
> +
> + /* Locate drm bridge from the hdmi encoder DT node */
> + bridge = of_drm_find_bridge(encoder_node);
> + if (!bridge)
> + return -EPROBE_DEFER;
> +
> + ret = drm_simple_display_pipe_attach_bridge(&arcpgu->pipe, bridge);
> + if (ret)
> return ret;
> } else {
> dev_info(drm->dev, "no encoder found. Assumed virtual LCD on simulation platform\n");
> diff --git a/drivers/gpu/drm/arc/arcpgu_hdmi.c b/drivers/gpu/drm/arc/arcpgu_hdmi.c
> deleted file mode 100644
> index d430af686cbc..000000000000
> --- a/drivers/gpu/drm/arc/arcpgu_hdmi.c
> +++ /dev/null
> @@ -1,27 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0-only
> -/*
> - * ARC PGU DRM driver.
> - *
> - * Copyright (C) 2016 Synopsys, Inc. (www.synopsys.com)
> - */
> -
> -#include <drm/drm_bridge.h>
> -#include <drm/drm_crtc.h>
> -#include <drm/drm_encoder.h>
> -#include <drm/drm_device.h>
> -
> -#include "arcpgu.h"
> -
> -int arcpgu_drm_hdmi_init(struct drm_device *drm, struct device_node *np)
> -{
> - struct arcpgu_drm_private *arcpgu = dev_to_arcpgu(drm);
> - struct drm_bridge *bridge;
> -
> - /* Locate drm bridge from the hdmi encoder DT node */
> - bridge = of_drm_find_bridge(np);
> - if (!bridge)
> - return -EPROBE_DEFER;
> -
> - /* Link drm_bridge to encoder */
> - return drm_simple_display_pipe_attach_bridge(&arcpgu->pipe, bridge);
> -}
> --
> 2.25.1
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
More information about the Intel-gfx
mailing list