plan9fox/sys/src/9/pc
cinap_lenrek e81e1a4aed pc, pc64: make mtrr() callable from interrupt context and before mpinit
to make it possible to mark the bootscreen framebuffer
as write combining in early initialization, mtrr() is
changed not not to error() but to return an error string.

as bootscreen() is used before multiprocessor initialization,
we have to synchronize the mtrr's for every processor as
it comes online. for this, a new mtrrsync() function is
provided that is called from cpuidentify() if mtrr support
is indicated.

the boot processor runs mtrrsync() which snarfs the
registers. later, mtrrsync() is run again from the
application processors which apply the values from the
boot processor.

checkmtrr() from mp.c was removed as its task is also
done by mtrrsync() now.
2014-10-21 06:03:03 +02:00
..
a100p.cp Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
ahci.h adiahci: drive onlining, task file error (atapi) handling, missed interrupts, bios handoff, idle, cleanup 2012-12-24 18:07:18 +01:00
apbootstrap.s Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
apic.c apic: eleminate splhi and apictimerlock, per cpu apictimer structure 2013-06-22 09:50:34 +02:00
apm.c guesscpuhz(), apm suspend 2012-09-30 19:41:34 +02:00
apmjump.s apm: fix wrong segment load, zero segment registers 2013-09-16 16:23:51 +02:00
archacpi.c pc, pc64: allow passing RSDT pointer in *acpi= boot parameter, early bootscreeninit(), fix rampage() usage 2014-10-18 02:01:58 +02:00
archmp.c pc kernel: split mpstartap() and squidboy into separate file... stuff for amd64 2014-02-01 10:23:17 +01:00
audioac97.c audioac97: remove i/o bar magic, fix ac97mixreset busywait-forever timeout 2013-09-26 23:34:06 +02:00
audioac97mix.c audioac97: remove i/o bar magic, fix ac97mixreset busywait-forever timeout 2013-09-26 23:34:06 +02:00
audiohda.c audiohda: add Intel 8 Series/C220 Series support 2014-06-09 21:53:40 +02:00
audiosb16.c audio: fix delay control, increase default buffer delay to 40ms 2013-02-01 15:23:38 +01:00
bios32.c add unified sigsearch() function to look for bios data structures 2012-08-24 15:36:56 +02:00
cga.c fix utf and rune handling in preparation for 32bit runes 2012-12-31 21:09:46 +01:00
cputemp.c rdmsr/wrmsr become tryrdmsr/trywrmsr, we can should check for trap 2012-08-31 16:48:33 +02:00
dat.h pc, pc64: make mtrr() callable from interrupt context and before mpinit 2014-10-21 06:03:03 +02:00
devarch.c pc, pc64: make mtrr() callable from interrupt context and before mpinit 2014-10-21 06:03:03 +02:00
devether.c devether: fix spelling mistype 2013-12-17 12:48:17 +01:00
devfloppy.c add Echange[] error string 2012-08-07 07:15:41 +02:00
devi82365.c kernel: xalloc error handling 2011-12-14 00:22:46 +01:00
devkbd.c pc/pc64: fix ps2mouse memory corruption race 2014-09-28 18:28:38 +02:00
devlm78.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
devlml.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
devlml.h Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
devlpt.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
devpccard.c pc kernel: kproc error and exit 2013-11-22 22:29:31 +01:00
devrtc.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
devtv.c panic: trailing newlines 2012-03-28 18:13:45 +02:00
devvga.c reduce software cursor flickering 2013-04-14 16:28:54 +02:00
dma.c pc kernel: split mpstartap() and squidboy into separate file... stuff for amd64 2014-02-01 10:23:17 +01:00
ether79c970.c ether79c970: fix mistake 2014-06-09 07:21:36 +02:00
ether589.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
ether2000.c kernel: fix more malloc bugs 2011-12-12 22:24:25 +01:00
ether2114x.c panic: trailing newlines 2012-03-28 18:13:45 +02:00
ether8003.c kernel: fix more malloc bugs 2011-12-12 22:24:25 +01:00
ether8139.c ether8139: fix pointer to smaller int tuncation warning on amd64 2014-09-02 16:20:43 +02:00
ether8169.c ether8169: use u16int instead of u8int for C+ command register (thanks pavel / erik) 2014-06-22 19:01:37 +02:00
ether8390.c panic: trailing newlines 2012-03-28 18:13:45 +02:00
ether8390.h Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
ether82543gc.c kernel: remove Block refcounting (thanks erik) 2014-06-08 00:19:33 +02:00
ether82557.c pc kernel: kproc error and exit 2013-11-22 22:29:31 +01:00
ether82563.c pc kernel: split mpstartap() and squidboy into separate file... stuff for amd64 2014-02-01 10:23:17 +01:00
ether82598.c ether82598, ether82563: remove packblock() avoidance hack 2013-12-16 21:47:06 +01:00
ether83815.c ether83815: fix `auto neg timed out' error with sis 900 rev 635. 2013-10-03 17:13:08 -04:00
etherbcm.c pc64: port etherbcm 2014-03-19 09:00:20 +01:00
etherdp83820.c kernel: remove Block refcounting (thanks erik) 2014-06-08 00:19:33 +02:00
etherec2t.c kernel: fix more malloc bugs 2011-12-12 22:24:25 +01:00
etherelnk3.c panic: trailing newlines 2012-03-28 18:13:45 +02:00
etherga620.c kernel: fix inproper use of malloc/smalloc 2011-12-12 16:55:26 +01:00
etherga620fw.h Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
etherif.h increase MaxEther to 64 avoiding "too many ether cards" panic 2013-07-09 19:17:38 +02:00
etherigbe.c pc kernel: kproc error and exit 2013-11-22 22:29:31 +01:00
etheriwl.c kernel: remove Block refcounting (thanks erik) 2014-06-08 00:19:33 +02:00
etherm10g.c kernel: remove Block refcounting (thanks erik) 2014-06-08 00:19:33 +02:00
etherm10g2k.fw generate etherm10g firmware hexdumps in mkfile 2011-05-04 10:33:59 +00:00
etherm10g4k.fw generate etherm10g firmware hexdumps in mkfile 2011-05-04 10:33:59 +00:00
ethermii.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
ethermii.h Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
etherrt2860.c etherrt2860: add rt3090 support and make style more consistent 2013-07-21 18:13:27 -04:00
ethersink.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
ethersmc.c kernel: fix more malloc bugs 2011-12-12 22:24:25 +01:00
ethervgbe.c ethervgbe: fix broken rx block handling 2012-12-20 09:44:10 +01:00
ethervt6102.c pc kernel: kproc error and exit 2013-11-22 22:29:31 +01:00
ethervt6105m.c kernel: remove Block refcounting (thanks erik) 2014-06-08 00:19:33 +02:00
etherwavelan.c kernel: fix more malloc bugs 2011-12-12 22:24:25 +01:00
etheryuk.c etheryuk: fix lockups (thanks burnzez for testing) 2014-01-12 12:08:10 +01:00
floppy.h Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
fns.h pc, pc64: make mtrr() callable from interrupt context and before mpinit 2014-10-21 06:03:03 +02:00
hcwAMC.h Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
i8253.c guesscpuhz(), apm suspend 2012-09-30 19:41:34 +02:00
i8259.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
init9.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
initcode.s Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
io.h pc, pc64: handle sse simd exceptions 2014-05-11 05:59:10 +02:00
l.s pc, pc64: fix off by one error in _multibootentry 2014-08-18 03:16:11 +02:00
main.c pc, pc64: allow passing RSDT pointer in *acpi= boot parameter, early bootscreeninit(), fix rampage() usage 2014-10-18 02:01:58 +02:00
mem.h sse kernel support (sources) 2013-05-22 23:47:05 +05:30
memory.c pc: sanity check bda value in lowraminit() to avoid overflow with efi 2014-10-12 20:18:59 +02:00
mkfile pc kernel: split mpstartap() and squidboy into separate file... stuff for amd64 2014-02-01 10:23:17 +01:00
mmu.c pc, pc64: allow passing RSDT pointer in *acpi= boot parameter, early bootscreeninit(), fix rampage() usage 2014-10-18 02:01:58 +02:00
mouse.c pc/pc64: fix ps2mouse memory corruption race 2014-09-28 18:28:38 +02:00
mp.c pc, pc64: make mtrr() callable from interrupt context and before mpinit 2014-10-21 06:03:03 +02:00
mp.h pc kernel: split mpstartap() and squidboy into separate file... stuff for amd64 2014-02-01 10:23:17 +01:00
mtrr.c pc, pc64: make mtrr() callable from interrupt context and before mpinit 2014-10-21 06:03:03 +02:00
nv_dma.h Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
pccpuf pc kernel: split mpstartap() and squidboy into separate file... stuff for amd64 2014-02-01 10:23:17 +01:00
pcf pc kernel: split mpstartap() and squidboy into separate file... stuff for amd64 2014-02-01 10:23:17 +01:00
pci.c Add Intel C226 chipset PCI support. (from sources) 2014-07-10 00:07:09 +02:00
pcmciamodem.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
pcmkfile Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
pcrandom.c pc kernel: kproc error and exit 2013-11-22 22:29:31 +01:00
piix4smbus.c kernel: fix inproper use of malloc/smalloc 2011-12-12 16:55:26 +01:00
pmmc.c pmmc: recognize generic mmc controllers (untested) 2014-04-26 18:22:17 +02:00
psaux.c Qcoalesce patch to satisfy full read length 2012-09-14 03:35:15 +02:00
ptclbsum386.s Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
rebootcode.s pc64: amd64 kernel reboot support 2014-03-16 20:22:59 +01:00
screen.c pc, pc64: make mtrr() callable from interrupt context and before mpinit 2014-10-21 06:03:03 +02:00
screen.h reduce software cursor flickering 2013-04-14 16:28:54 +02:00
sd53c8xx.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
sd53c8xx.n Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
sdiahci.c Add AHCI support for Intel 8 Series/C220 Series Chipset Family SATA Controller. (from sources) 2014-07-10 00:07:51 +02:00
sdide.c sdide: never timeout or retry scsi commands from the controller driver 2014-05-02 04:23:21 +02:00
sdmv50xx.c pc kernel: kproc error and exit 2013-11-22 22:29:31 +01:00
sdmylex.c merge sd changes from 9atom 2011-07-10 14:14:23 +02:00
sdodin.c kernel: remove _xinc()/_xdec() 2014-06-08 01:35:22 +02:00
sdvirtio.c sdvirtio: experimental support for virtio-scsi 2014-06-07 02:13:57 +02:00
segdesc.c segdesc: add /dev/^(ldt gdt) support 2011-07-12 15:46:22 +02:00
squidboy.c pc, pc64: make mtrr() callable from interrupt context and before mpinit 2014-10-21 06:03:03 +02:00
trap.c pc, pc64: initial machine check architecture support 2014-07-09 22:45:51 +02:00
uartaxp.c kernel: fix more malloc bugs 2011-12-12 22:24:25 +01:00
uarti8250.c uarti8250: print on malloc failure 2013-05-20 17:43:30 +02:00
uartisa.c pcuart: malloc error handling, cleanup 2013-05-20 17:32:48 +02:00
uartpci.c pcuart: malloc error handling, cleanup 2013-05-20 17:32:48 +02:00
uncached.h Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
usbehci.h usbehci: fix broken bios takeover 2012-11-25 16:24:10 +01:00
usbehcipc.c kernel: usb fixes for amd64 2014-02-01 10:20:43 +01:00
usbohci.c nusb: resolve endpoint id conflict with different input and output types 2014-04-23 20:03:01 +02:00
usbuhci.c nusb: resolve endpoint id conflict with different input and output types 2014-04-23 20:03:01 +02:00
vga.c fix utf and rune handling in preparation for 32bit runes 2012-12-31 21:09:46 +01:00
vga3dfx.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgaark2000pv.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
vgabt485.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
vgaclgd542x.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgaclgd546x.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgact65545.c kernel: replace BY2WD in scanline width calculation to sizeof(ulong) like libmemdraw 2014-01-19 03:29:52 +01:00
vgacyber938x.c kernel: replace BY2WD in scanline width calculation to sizeof(ulong) like libmemdraw 2014-01-19 03:29:52 +01:00
vgaet4000.c kernel: replace BY2WD in scanline width calculation to sizeof(ulong) like libmemdraw 2014-01-19 03:29:52 +01:00
vgageode.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgahiqvideo.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgai81x.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgamach64xx.c kernel: replace BY2WD in scanline width calculation to sizeof(ulong) like libmemdraw 2014-01-19 03:29:52 +01:00
vgamga4xx.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgamga2164w.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vganeomagic.c kernel: replace BY2WD in scanline width calculation to sizeof(ulong) like libmemdraw 2014-01-19 03:29:52 +01:00
vganvidia.c kernel: replace BY2WD in scanline width calculation to sizeof(ulong) like libmemdraw 2014-01-19 03:29:52 +01:00
vgaradeon.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgargb524.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
vgas3.c kernel: replace BY2WD in scanline width calculation to sizeof(ulong) like libmemdraw 2014-01-19 03:29:52 +01:00
vgasavage.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
vgat2r4.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgatvp3020.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
vgatvp3026.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
vgavesa.c vesa: explicitely use /386/include/ureg.h 2014-02-01 10:14:41 +01:00
vgavmware.c vga: make kernel vga drivers more stupid 2013-01-02 01:19:51 +01:00
vgax.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
wavelan.c pc kernel: kproc error and exit 2013-11-22 22:29:31 +01:00
wavelan.h Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
wifi.c wifi: set ether->mbps to highest supported rate of the associated ap 2014-04-21 16:44:38 +02:00
wifi.h wifi: first attempt on negotiating data rates 2014-04-21 03:43:51 +02:00
yukdump.h etheryuk: fix problems with yukon2 ep+ rev0, deoptimize 2013-12-16 21:39:22 +01:00