Module Name:    src
Committed By:   riastradh
Date:           Sun Dec 19 12:44:35 UTC 2021

Modified Files:
        src/sys/dev/i2c: tda19988.c

Log Message:
drm: Fix tda19988 drm build.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/dev/i2c/tda19988.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/i2c/tda19988.c
diff -u src/sys/dev/i2c/tda19988.c:1.7 src/sys/dev/i2c/tda19988.c:1.8
--- src/sys/dev/i2c/tda19988.c:1.7	Wed Jan 27 02:29:48 2021
+++ src/sys/dev/i2c/tda19988.c	Sun Dec 19 12:44:34 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: tda19988.c,v 1.7 2021/01/27 02:29:48 thorpej Exp $ */
+/* $NetBSD: tda19988.c,v 1.8 2021/12/19 12:44:34 riastradh Exp $ */
 
 /*-
  * Copyright (c) 2015 Oleksandr Tymoshenko <go...@freebsd.org>
@@ -27,10 +27,10 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tda19988.c,v 1.7 2021/01/27 02:29:48 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tda19988.c,v 1.8 2021/12/19 12:44:34 riastradh Exp $");
 
 /*
-* NXP TDA19988 HDMI encoder 
+* NXP TDA19988 HDMI encoder
 */
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -49,10 +49,12 @@ __KERNEL_RCSID(0, "$NetBSD: tda19988.c,v
 #include <dev/videomode/videomode.h>
 #include <dev/videomode/edidvar.h>
 
-#include <drm/drmP.h>
+#include <drm/drm_bridge.h>
 #include <drm/drm_crtc.h>
 #include <drm/drm_crtc_helper.h>
+#include <drm/drm_drv.h>
 #include <drm/drm_edid.h>
+#include <drm/drm_probe_helper.h>
 
 enum {
 	TDA19988_PORT_INPUT = 0
@@ -729,7 +731,6 @@ tda19988_connector_get_modes(struct drm_
 	struct tda19988_connector *tda_connector = to_tda_connector(connector);
 	struct tda19988_softc * const sc = tda_connector->sc;
 	struct edid *pedid = NULL;
-	int error;
 
 	if (sc->sc_edid_valid) {
 		pedid = (struct edid *)sc->sc_edid;
@@ -741,37 +742,15 @@ tda19988_connector_get_modes(struct drm_
 		sc->sc_edid_valid = true;
 	}
 
-	drm_mode_connector_update_edid_property(connector, pedid);
+	drm_connector_update_edid_property(connector, pedid);
 	if (pedid == NULL)
 		return 0;
 
-	error = drm_add_edid_modes(connector, pedid);
-	drm_edid_to_eld(connector, pedid);
-
-	return error;
-}
-
-static struct drm_encoder *
-tda19988_connector_best_encoder(struct drm_connector *connector)
-{
-	int enc_id = connector->encoder_ids[0];
-	struct drm_mode_object *obj;
-	struct drm_encoder *encoder = NULL;
-
-	if (enc_id) {
-		obj = drm_mode_object_find(connector->dev, enc_id,
-		    DRM_MODE_OBJECT_ENCODER);
-		if (obj == NULL)
-			return NULL;
-		encoder = obj_to_encoder(obj);
-	}
-
-	return encoder;
+	return drm_add_edid_modes(connector, pedid);
 }
 
 static const struct drm_connector_helper_funcs tda19988_connector_helper_funcs = {
 	.get_modes = tda19988_connector_get_modes,
-	.best_encoder = tda19988_connector_best_encoder,
 };
 
 static int
@@ -792,8 +771,8 @@ tda19988_bridge_attach(struct drm_bridge
 	    DRM_MODE_CONNECTOR_HDMIA);
 	drm_connector_helper_add(connector, &tda19988_connector_helper_funcs);
 
-	error = drm_mode_connector_attach_encoder(connector, bridge->encoder);
-	if (error != 0)
+	error = drm_connector_attach_encoder(connector, bridge->encoder);
+	if (error)
 		return error;
 
 	return drm_connector_register(connector);
@@ -827,7 +806,8 @@ tda19988_bridge_post_disable(struct drm_
 
 static void
 tda19988_bridge_mode_set(struct drm_bridge *bridge,
-    struct drm_display_mode *mode, struct drm_display_mode *adjusted_mode)
+    const struct drm_display_mode *mode,
+    const struct drm_display_mode *adjusted_mode)
 {
 	struct tda19988_softc * const sc = bridge->driver_private;
 
@@ -882,12 +862,10 @@ tda19988_ep_activate(device_t dev, struc
 	sc->sc_bridge.driver_private = sc;
 	sc->sc_bridge.funcs = &tda19988_bridge_funcs;
 	sc->sc_bridge.encoder = encoder;
-	error = drm_bridge_attach(encoder->dev, &sc->sc_bridge);
-	if (error != 0)
+	error = drm_bridge_attach(encoder, &sc->sc_bridge, NULL);
+	if (error)
 		return EIO;
 
-	encoder->bridge = &sc->sc_bridge;
-
 	return 0;
 }
 

Reply via email to