Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 16 Jul 2004 19:30:54 GMT
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 57475 for review
Message-ID:  <200407161930.i6GJUsAh009361@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=57475

Change 57475 by jhb@jhb_slimer on 2004/07/16 19:30:25

	Hack hack.  Try mapping all of the BIOS (0xc0000 - 0xfffff) as
	read/write to see if that fixes problems people have with
	PnP BIOS enumeration on Intel motherboards.

Affected files ...

.. //depot/projects/smpng/sys/i386/i386/locore.s#23 edit

Differences ...

==== //depot/projects/smpng/sys/i386/i386/locore.s#23 (text+ko) ====

@@ -787,9 +787,24 @@
 	movl	$1,%ecx
 	fillkptphys(%edx)
 
-/* Map read-only from page 1 to the beginning of the kernel text section */
+#define	BIOS_START	0xc0000
+#define	BIOS_END	0xfffff
+
+/* Map read-only from page 1 to the beginning of BIOS */
 	movl	$PAGE_SIZE, %eax
 	xorl	%edx,%edx
+	movl	$(BIOS_START - PAGE_SIZE)/PAGE_SIZE,%ecx
+	fillkptphys(%edx)
+
+/* Map the BIOS read-write for BIOS calls that want to write to it */
+	movl	$BIOS_START, %eax	
+	movl	$PG_RW,%edx
+	movl	$(BIOS_END + 1 - BIOS_START)/PAGE_SIZE,%ecx
+	fillkptphys(%edx)
+
+/* Map read-only from the BIOS to the beginning of the kernel text section */
+	movl	$BIOS_END + 1, %eax
+	xorl	%edx,%edx
 	movl	$R(btext),%ecx
 	addl	$PAGE_MASK,%ecx
 	subl	%eax,%ecx



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200407161930.i6GJUsAh009361>