Age | Commit message (Collapse) | Author |
|
get bus clock. copy in some more code from i386 to deal with both families,
and be more watchful for unknown models.
fixes a panic reported by johan lindman. ok gwk
|
|
both 32- and 64-bit versions can be created (previously only one or the
other could be built for a given boot loader).
Use this to allow the i386 and amd64 boot blocks to boot both ELF32 and
ELF64 kernels (i.e. amd64 boot blocks can now load i386 kernels, and
vice versa). Obviously the system must support LONG mode in order to
successfully run the amd64 kernel once it is loaded.
Advice and discussions from/with dale@ (going back three years). Much
testing nick@ and todd@; thanks.
|
|
use); ok tedu
|
|
|
|
Add EST support from i386, minus the tables
Also add in support for CPU temperature sensors, based on diff to tech
by Pierre Riteau.
ok deraadt gwk
|
|
drahn@ ok
|
|
mbuf constants from MD param.h to MI param.h.
Besides being the same on every arch, things will
most probly break if any arch has different values
then the others.
The NMBCLUSTERS constants needs to be MD though;
ok miod@,krw@,claudio@
|
|
|
|
in locore so that we can use the direct map in pmap_bootstrap when
setting up the initial page tables.
- Introduce a second direct map (I love large address spaces) with
uncached pages.
jason@ ok
|
|
miod@ ok
|
|
simple. This is basically the same code as on i386 and basically the same
performance improvements.
This change also includes code to delay the freeing of ptps until they
have been properly shot.
in snaps for a week, no problems reported.
|
|
splassert_ctl > 0 in __predict_false().
ok deraadt@
|
|
have cpu_info now, so kill the option.
eyeballed by jsg@ and grange@
|
|
deraadt@ ok
|
|
option. Every architecture implements mutexes now.
|
|
years ago; ok miod
|
|
ok miod@, art@
|
|
all cpus in a system supporting frequency and voltage scaling to be scaled
by the same amount corresponding to the user (or apmd on their behalf)
performance level.
This diff also teaches amd64 about acpi_hasprocfvs (ACPI has processor
frequency and voltage scaling).
It also moves initilization of the underlying setperf mechanism such
as powernow to mainbus from the cpu indentification and initilization
code inspired by similar changes dim@ made to i386 durring h2k6. This
is necessary to implement the AMD recommended method for retreiving
p_state data from the ACPI _PSS object (a diff comming soon). It will
also simplify the potential addition of enhanced speedstep as found
on newer intel processors with EMT64 capable of running OpenBSD/amd64.
MP setperf functionality verifed by myself and Johan M:son Lindman <tybolt
AT solace DOT miun DOT se> on opteron 265 and 270 systems respectively.
General testing done by many others thanks!
ok tedu, dim
|
|
found by lint, ok deraadt@
|
|
PCs too...
Tested by dlg@ and brad.
|
|
it's a good idea to use atomic.h operations on it. This mechanic
change updates all bit operations on p_flag to atomic_{set,clear}bits_int.
Only exception is that P_OWEUPC is set by MI code before calling
need_proftick and it's automatically cleared by ADDUPC. There's
no reason for MD handling of that flag since everyone handles it the
same way.
kettenis@ ok
|
|
rt and such; tested and ok miod drahn
|
|
possible. Taken from NetBSD.
ok deraadt@
|
|
ok tom@ gwk@ krw@
|
|
|
|
right now that are supposed to be atomic with respect to interrupts and
SMP: atomic_setbits_int and atomic_clearbits_int.
All architectures other than i386 and amd64 get dummy implementations
since at first we'll be replacing operations that are done with
"a |= bit" and "a &= ~bit" today. More proper implementations will follow
kettenis@, miod@ ok
|
|
cpu and if we do, send it an IPI that will force to get into the kernel
and process the AST.
This makes signals to processes on other CPUs to be actually delivered
as soon as possible instead of some time in the future when some
interupt happens.
heavy testing by krw@, miod@ ok (in principle, since he doesn't do amd64)
|
|
it doesn't do anything (other than poking into the kernel a processing
ASTs).
|
|
statclock(), do not bother doing this in userret() anymore. As a result,
userret() does not need its pc and ticks arguments, simplify.
|
|
is declared in the equivalent file on i386 and delete the repeticious
declarations already scattered in a few places.
Thanks to Will Backman for letting me test this on his machine,
ok mk@
|
|
errors to userland: make all cpu_setperf functions return void.
Tested by many, ok gwk@
|
|
multi-ioapic systems.
ok kettenis
|
|
|
|
ok drahn@, miod@
|
|
"The dosparts member of cpu_disklabel was not used for any persistant
data. Eliminate it, and just use the data being read in while
processing MBR and EBR records.
Should be no functional change.
ok weingart@ deraadt@"
|
|
some architectures (kaboom); that will be fixed in the next iteration
hopefully!
|
|
data. Eliminate it, and just use the data being read in while
processing MBR and EBR records.
Should be no functional change.
ok weingart@ deraadt@
|
|
|
|
a few obsolete and easily replaced disk models. And didn't work anyway
according to Bob, who has tried.
ok beck@
|
|
ok deraadt@
|
|
precision instead of 53-bit precision, giving us proper support for
"long double".
ok deraadt@
|
|
calls in alpha, hppa, hppa64 and mips63 when accessing the two DOS MBR
u_int32_t fields dp_size and dp_start.
No functional change.
|
|
functional change.
ok deraadt@
|
|
|
|
Improve the heuristics a little and extend them to the version and serial
number fields. Clean the strings of leading/trailing space and deal with
strings which consist entirely of space. Use fixed buffers for strings
instead of using pointers into the table.
ok deraadt@, and tested by many.
|
|
|
|
hook up some sysctls to add system vendor/product/version and UUID reporting.
"get it in" deraadt@
|
|
add a BUS_DMA_24BIT flag to signify that dmamap being created
is for the isadma use (thus already backed up by the bounce
buffers). later also to be used for dmamem allocation.
|
|
|
|
routing for SATA on those chipsets in GENERIC.MP.
ok mickey@, brad@.
|