Module Name:    src
Committed By:   riastradh
Date:           Mon Aug 27 06:16:37 UTC 2018

Modified Files:
        src/sys/external/bsd/drm2/dist/drm/i915: intel_fbdev.c intel_i2c.c
        src/sys/external/bsd/drm2/i915drm: files.i915drmkms

Log Message:
bring in old drm changes

ifdef out some fb_info usage which we don't have and some of it
ifdef'd out in old drm

strangely reg_offset isn't used in the i2c whatever-thing

we need one more member to drm_fb_helper

define CONFIG_DRM_FBDEV_EMULATION so hopefully fewer redefinitions

Author: coypu <[email protected]>
Committer: Taylor R Campbell <[email protected]>


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 \
    src/sys/external/bsd/drm2/dist/drm/i915/intel_fbdev.c
cvs rdiff -u -r1.15 -r1.16 \
    src/sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c
cvs rdiff -u -r1.13 -r1.14 src/sys/external/bsd/drm2/i915drm/files.i915drmkms

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

Modified files:

Index: src/sys/external/bsd/drm2/dist/drm/i915/intel_fbdev.c
diff -u src/sys/external/bsd/drm2/dist/drm/i915/intel_fbdev.c:1.6 src/sys/external/bsd/drm2/dist/drm/i915/intel_fbdev.c:1.7
--- src/sys/external/bsd/drm2/dist/drm/i915/intel_fbdev.c:1.6	Mon Aug 27 04:58:24 2018
+++ src/sys/external/bsd/drm2/dist/drm/i915/intel_fbdev.c	Mon Aug 27 06:16:37 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: intel_fbdev.c,v 1.6 2018/08/27 04:58:24 riastradh Exp $	*/
+/*	$NetBSD: intel_fbdev.c,v 1.7 2018/08/27 06:16:37 riastradh Exp $	*/
 
 /*
  * Copyright © 2007 David Airlie
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: intel_fbdev.c,v 1.6 2018/08/27 04:58:24 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: intel_fbdev.c,v 1.7 2018/08/27 06:16:37 riastradh Exp $");
 
 #include <linux/async.h>
 #include <linux/module.h>
@@ -214,7 +214,6 @@ static int intelfb_create(struct drm_fb_
 	bool prealloc = false;
 
 	mutex_lock(&dev->struct_mutex);
-
 	if (intel_fb &&
 	    (sizes->fb_width > intel_fb->base.width ||
 	     sizes->fb_height > intel_fb->base.height)) {
@@ -722,11 +721,13 @@ out:
 
 static void intel_fbdev_suspend_worker(struct work_struct *work)
 {
+#ifndef __NetBSD__		/* XXX fb suspend */
 	intel_fbdev_set_suspend(container_of(work,
 					     struct drm_i915_private,
 					     fbdev_suspend_work)->dev,
 				FBINFO_STATE_RUNNING,
 				true);
+#endif
 }
 
 int intel_fbdev_init(struct drm_device *dev)

Index: src/sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c
diff -u src/sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c:1.15 src/sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c:1.16
--- src/sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c:1.15	Mon Aug 27 04:58:24 2018
+++ src/sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c	Mon Aug 27 06:16:37 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: intel_i2c.c,v 1.15 2018/08/27 04:58:24 riastradh Exp $	*/
+/*	$NetBSD: intel_i2c.c,v 1.16 2018/08/27 06:16:37 riastradh Exp $	*/
 
 /*
  * Copyright (c) 2006 Dave Airlie <[email protected]>
@@ -29,7 +29,7 @@
  *	Chris Wilson <[email protected]>
  */
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: intel_i2c.c,v 1.15 2018/08/27 04:58:24 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: intel_i2c.c,v 1.16 2018/08/27 06:16:37 riastradh Exp $");
 
 #include <linux/i2c.h>
 #include <linux/i2c-algo-bit.h>
@@ -289,7 +289,7 @@ gmbus_wait_hw_status(struct drm_i915_pri
 	if (cold) {
 		i = 50;
 		do {
-			gmbus2 = I915_READ_NOTRACE(GMBUS2 + reg_offset);
+			gmbus2 = I915_READ_NOTRACE(GMBUS2);
 			if (ISSET(gmbus2, (GMBUS_SATOER | gmbus2_status)))
 				break;
 			DELAY(1000);
@@ -304,7 +304,7 @@ gmbus_wait_hw_status(struct drm_i915_pri
 			    &dev_priv->gmbus_wait_queue,
 			    &dev_priv->gmbus_wait_lock,
 			    1,
-			    (gmbus2 = I915_READ_NOTRACE(GMBUS2 + reg_offset),
+			    (gmbus2 = I915_READ_NOTRACE(GMBUS2),
 				ISSET(gmbus2,
 				    (GMBUS_SATOER | gmbus2_status))));
 			spin_unlock(&dev_priv->gmbus_wait_lock);
@@ -718,7 +718,11 @@ int intel_setup_gmbus(struct drm_device 
 			 "i915 gmbus %s",
 			 get_gmbus_pin(dev_priv, pin)->name);
 
+#ifdef __NetBSD__
 		bus->adapter.dev.parent = dev->dev;
+#else
+		bus->adapter.dev.parent = &dev->pdev->dev;
+#endif
 		bus->dev_priv = dev_priv;
 
 		bus->adapter.algo = &gmbus_algorithm;

Index: src/sys/external/bsd/drm2/i915drm/files.i915drmkms
diff -u src/sys/external/bsd/drm2/i915drm/files.i915drmkms:1.13 src/sys/external/bsd/drm2/i915drm/files.i915drmkms:1.14
--- src/sys/external/bsd/drm2/i915drm/files.i915drmkms:1.13	Mon Aug 27 05:44:57 2018
+++ src/sys/external/bsd/drm2/i915drm/files.i915drmkms	Mon Aug 27 06:16:37 2018
@@ -1,4 +1,4 @@
-#	$NetBSD: files.i915drmkms,v 1.13 2018/08/27 05:44:57 riastradh Exp $
+#	$NetBSD: files.i915drmkms,v 1.14 2018/08/27 06:16:37 riastradh Exp $
 
 define	intelfbbus	{ }
 device	i915drmkms: drmkms, drmkms_pci, intelfbbus, agp_i810
@@ -19,6 +19,7 @@ makeoptions 	i915drmkms 	"CWARNFLAGS.int
 # XXX x86 kludge.
 makeoptions	i915drmkms	CPPFLAGS+="-DCONFIG_DRM_I915_FBDEV=1"
 makeoptions	i915drmkms	CPPFLAGS+="-DCONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT=0"
+makeoptions	i915drmkms	CPPFLAGS+="-DCONFIG_DRM_FBDEV_EMULATION=1"
 
 file	external/bsd/drm2/i915drm/i915_module.c		i915drmkms
 file	external/bsd/drm2/i915drm/i915_pci.c		i915drmkms

Reply via email to