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