]> git.lizzy.rs Git - plan9front.git/commit
pc, pc64: make mtrr() callable from interrupt context and before mpinit
authorcinap_lenrek <cinap_lenrek@felloff.net>
Tue, 21 Oct 2014 04:03:03 +0000 (06:03 +0200)
committercinap_lenrek <cinap_lenrek@felloff.net>
Tue, 21 Oct 2014 04:03:03 +0000 (06:03 +0200)
commite81e1a4aeddad2bc612c9c5243573250b6ff33a4
treef1c178d36e86819bc725fa3b009295553b01e737
parentdfe8c8bffb497ecd46e9e43eb838ff3e10912663
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.
sys/src/9/pc/dat.h
sys/src/9/pc/devarch.c
sys/src/9/pc/fns.h
sys/src/9/pc/mp.c
sys/src/9/pc/mtrr.c
sys/src/9/pc/screen.c
sys/src/9/pc/squidboy.c
sys/src/9/pc64/dat.h
sys/src/9/pc64/fns.h
sys/src/9/pc64/squidboy.c