annotate libdha/sysdep/pci_isc.c @ 22888:43b8a7c3595c

Use "generic" optimization instead of 686 as default for runtime-cpudetection if available. It promises to deliver optimal performance on a collection of comtemporary CPUs. patch by Zuxy Meng, zuxy.meng gmail com
author diego
date Tue, 03 Apr 2007 13:16:46 +0000
parents 4cfb6b9a6da3
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4164
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
1 /*
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
2 This file is based on:
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
3 $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
4 Modified for readability by Nick Kurshev
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
5 */
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
6 #include <sys/param.h>
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
7 #include <sys/immu.h>
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
8 #include <sys/region.h>
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
9 #include <sys/proc.h>
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
10 #include <sys/tss.h>
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
11 #include <sys/sysi86.h>
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
12 #include <sys/v86.h>
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
13
4174
4cfb6b9a6da3 api changed: enable/disable_os_io returns error-code (or zero if ok) and pciconfig_read exported for mga_vid
alex
parents: 4164
diff changeset
14 static __inline__ int enable_os_io(void)
4164
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
15 {
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
16 #if defined(SI86IOPL)
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
17 sysi86(SI86IOPL, 3);
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
18 #else
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
19 sysi86(SI86V86, V86SC_IOPL, PS_IOPL);
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
20 #endif
4174
4cfb6b9a6da3 api changed: enable/disable_os_io returns error-code (or zero if ok) and pciconfig_read exported for mga_vid
alex
parents: 4164
diff changeset
21 return(0);
4164
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
22 }
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
23
4174
4cfb6b9a6da3 api changed: enable/disable_os_io returns error-code (or zero if ok) and pciconfig_read exported for mga_vid
alex
parents: 4164
diff changeset
24 static __inline__ int disable_os_io(void)
4164
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
25 {
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
26 #if defined(SI86IOPL)
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
27 sysi86(SI86IOPL, 0);
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
28 #else
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
29 sysi86(SI86V86, V86SC_IOPL, 0);
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
30 #endif
4174
4cfb6b9a6da3 api changed: enable/disable_os_io returns error-code (or zero if ok) and pciconfig_read exported for mga_vid
alex
parents: 4164
diff changeset
31 return(0);
4164
2e3262002acb Improved readability and new stuffs
nick
parents:
diff changeset
32 }