[PATCH] drm/arcpgu: remove drm_encoder_slave
Daniel Vetter
daniel at ffwll.ch
Tue Jan 30 09:15:54 UTC 2018
On Wed, Jan 17, 2018 at 03:17:55PM +0100, Daniel Vetter wrote:
> drm_encoder_slave is the old way to write bridge drivers, for i2c
> bridges only. It's deprecated, and definitely should not be used in
> new drivers. This has absolutely nothing to do with the new bridge
> driver infrastructure implemented by drm_bridge.
>
> What's even strange is that arcpgu doesn't even use any of this, it
> really only wants a plain normal drm_encoder. Nuke all the surplus
> real estate.
>
> v2: Actually git add after compile testing ...
>
> v3: Clarify commit message and stop including drm_encoder_slave.h.
>
> Cc: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> Cc: Alexey Brodkin <abrodkin at synopsys.com>
> Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
I assumed this is ok and applied it to drm-misc-next.
-Daniel
> ---
> drivers/gpu/drm/arc/arcpgu_hdmi.c | 3 ++-
> drivers/gpu/drm/arc/arcpgu_sim.c | 16 ++++++----------
> 2 files changed, 8 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/arc/arcpgu_hdmi.c b/drivers/gpu/drm/arc/arcpgu_hdmi.c
> index 0ce7f398bcff..977dfa55162f 100644
> --- a/drivers/gpu/drm/arc/arcpgu_hdmi.c
> +++ b/drivers/gpu/drm/arc/arcpgu_hdmi.c
> @@ -15,7 +15,8 @@
> */
>
> #include <drm/drm_crtc.h>
> -#include <drm/drm_encoder_slave.h>
> +#include <drm/drm_encoder.h>
> +#include <drm/drm_device.h>
>
> #include "arcpgu.h"
>
> diff --git a/drivers/gpu/drm/arc/arcpgu_sim.c b/drivers/gpu/drm/arc/arcpgu_sim.c
> index bca3a678c955..b8f6f9a5dfbe 100644
> --- a/drivers/gpu/drm/arc/arcpgu_sim.c
> +++ b/drivers/gpu/drm/arc/arcpgu_sim.c
> @@ -15,7 +15,6 @@
> */
>
> #include <drm/drm_crtc_helper.h>
> -#include <drm/drm_encoder_slave.h>
> #include <drm/drm_atomic_helper.h>
>
> #include "arcpgu.h"
> @@ -29,7 +28,6 @@
>
> struct arcpgu_drm_connector {
> struct drm_connector connector;
> - struct drm_encoder_slave *encoder_slave;
> };
>
> static int arcpgu_drm_connector_get_modes(struct drm_connector *connector)
> @@ -68,7 +66,7 @@ static struct drm_encoder_funcs arcpgu_drm_encoder_funcs = {
> int arcpgu_drm_sim_init(struct drm_device *drm, struct device_node *np)
> {
> struct arcpgu_drm_connector *arcpgu_connector;
> - struct drm_encoder_slave *encoder;
> + struct drm_encoder *encoder;
> struct drm_connector *connector;
> int ret;
>
> @@ -76,10 +74,10 @@ int arcpgu_drm_sim_init(struct drm_device *drm, struct device_node *np)
> if (encoder == NULL)
> return -ENOMEM;
>
> - encoder->base.possible_crtcs = 1;
> - encoder->base.possible_clones = 0;
> + encoder->possible_crtcs = 1;
> + encoder->possible_clones = 0;
>
> - ret = drm_encoder_init(drm, &encoder->base, &arcpgu_drm_encoder_funcs,
> + ret = drm_encoder_init(drm, encoder, &arcpgu_drm_encoder_funcs,
> DRM_MODE_ENCODER_VIRTUAL, NULL);
> if (ret)
> return ret;
> @@ -101,21 +99,19 @@ int arcpgu_drm_sim_init(struct drm_device *drm, struct device_node *np)
> goto error_encoder_cleanup;
> }
>
> - ret = drm_mode_connector_attach_encoder(connector, &encoder->base);
> + ret = drm_mode_connector_attach_encoder(connector, encoder);
> if (ret < 0) {
> dev_err(drm->dev, "could not attach connector to encoder\n");
> drm_connector_unregister(connector);
> goto error_connector_cleanup;
> }
>
> - arcpgu_connector->encoder_slave = encoder;
> -
> return 0;
>
> error_connector_cleanup:
> drm_connector_cleanup(connector);
>
> error_encoder_cleanup:
> - drm_encoder_cleanup(&encoder->base);
> + drm_encoder_cleanup(encoder);
> return ret;
> }
> --
> 2.15.1
>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the dri-devel
mailing list