svn commit: r299381 - head/sys/dev/drm2/i915
Hans Petter Selasky
hselasky at FreeBSD.org
Tue May 10 18:18:30 UTC 2016
Author: hselasky
Date: Tue May 10 18:18:29 2016
New Revision: 299381
URL: https://svnweb.freebsd.org/changeset/base/299381
Log:
Ensure waiting loops terminate during cold boot. This fixes boot with
MacBookPro and i915kms_load="YES" in /boot/loader.conf.
A lowlevel timeout in one of the display ports caused an infinite wait
because a ticks/jiffies comparison was constant. The clock subsystem
which makes ticks/jiffies increment is started after the initial
driver probing is done. Refer to sys/kernel.h and SI_SUB_DRIVERS vs
SI_SUB_CLOCKS .
Discussed with: kmacy @
Modified:
head/sys/dev/drm2/i915/intel_drv.h
Modified: head/sys/dev/drm2/i915/intel_drv.h
==============================================================================
--- head/sys/dev/drm2/i915/intel_drv.h Tue May 10 18:00:37 2016 (r299380)
+++ head/sys/dev/drm2/i915/intel_drv.h Tue May 10 18:18:29 2016 (r299381)
@@ -50,6 +50,8 @@
pause((WMSG), 1); \
else \
DELAY(1000); \
+ if (cold) \
+ end -= howmany(hz, 1000); \
} \
\
ret; \
@@ -68,6 +70,8 @@
} else { \
DELAY(1000); \
} \
+ if (cold) \
+ timeout__ -= howmany(hz, 1000); \
} \
ret__; \
})
More information about the svn-src-head
mailing list