Age | Commit message (Collapse) | Author |
|
test period; i think 3 years ago the last bugs fell out.
ok otto beck others
|
|
|
|
Might have to find a better place for the cache.h header but until then
it will have to do.
Discussed with miod@
|
|
STANDBY and SUSPEND result in the machine being suspended.
HIBERNATE results in the machine being hibernated.
Also make sure all the hibernate bits are isolated by ifdefs.
|
|
While at it use STANDBY for RAM and SUSPEND for disk.
Okay miod@
|
|
from Sylvestre Gallon ccna.syl gmail.com
|
|
This is work in progress. Nothing to test or play with for now.
Commiting it now so that I can work on it in-tree.
Okay miod@
|
|
ok miod@ pirofti@
|
|
ok guenther@
|
|
cleaning up some shutdown-hook related code on the way.
(A few drivers related to sparc are still skipped at kettenis' request)
ok kettenis mlarkin, tested by many others too
|
|
ok miod@, mikeb@
|
|
to the state of the SDA bit; the MI i2c code is about to depend upon this.
|
|
definitions instead. We don't change usb.h for now to stay compatible
with userland.
missed bits from previous change; ok mpi
|
|
bss sections. The current kernel linker script is not gp-friendly enough for
that; and while gas 2.15 was not attempting to output gp-relative relocations
for variables which might have ended up in .sdata or .sbss, gas 2.17 will,
and the kernel will fail to link.
To be improved eventually with a better kernel ld script putting the
gp-addressable sections close enough to gp... and making sure kernel gp is
reloaded in all the userland->kernel code paths which might need gp in the
kernel.
|
|
ok deraadt miod
|
|
another symbol without weak attribute. To be used in libc and libm
soon. Agreed by kettenis@, guenther@, matthew@.
|
|
the Yeelong Lemote mips-based netbook. Kernel bits only for now, needs
polishing; most of this work done during h2k9 last month, although the
porting effort started earlier this year.
|
|
"looks good" deraadt@
|
|
|
|
to keep definitions our of user space. The MD files now follow a consistant
order -- all namespace intrusion is at the tail can be cleaned up
independently. locore, bootblocks, and libkvm still see enough visibility to
build. Checked on 90% of platforms...
|
|
|
|
on all Loongson2F systems yet; Gdium does not have a separate scheduling
clock yet and can't afford throttling until then.
|
|
This commit allows CPU throttling on the 2F systems.
Inspired by an old diff from otto@.
Help from and okay miod@.
|
|
The stat clock is implemented so that it also covers, at least
according to the tests I've done, Torek's paper on randomized sampling.
Most of the bits for randomizing the stat ticks were taken from sparc's
implementation and adapted to the companion chip's MFGPT frequencies.
Before this my lemote showed a 8% cpu usage for the cpuhog example from
Torek's paper even though openssl speed showed differences up to 27%
when ran with and without cpuhog. With the new stat clock it shows
cpuhog around 18-22%, which I think is the proper value.
Okay miod@.
|
|
Increases readability.
|
|
Patch appended my final work on glxclk to an earlier version that
I forgot was there.
|
|
CPU throttling was not possible due to the fact that the system clock
was the CPU clock. So slowing down the CPU would also slow down the
passing of time.
This commit adds a driver for the MFGPT1 clock from the AMD companion
chip found on lemote and hooks it up as the system clock.
It also changes the frequency value of hz from the default, which was
100, to 128. That's because the scaling on MFGPT clocks is represented
by powers of two.
Okay miod@.
|
|
|
|
|
|
handlers how hard they should hit the hardware.
|
|
paths are reflexive. It is now possible to fail part-way through a
suspend sequence, and recover along the resume code path.
Split DVACT_SUSPEND by adding a new DVACT_POWERDOWN method is used
after hibernate (and suspend too) to finish the job. Some drivers
must be converted at the same time to use this instead of shutdown hooks
(the others will follow at a later time)
ok kettenis mlarkin
|
|
list in loongson's <machine/autoconf.h> directly. <mips64/archtype.h> is
intended to be only used on ARCBios-like platforms.
|
|
which will remain in <machine/cpu.h>, and a new mips_cpu.h containing only the
goriest md details, which are only of interest to a handful set of files; this
is similar in spirit to what alpha does, but here <machine/cpu.h> does not
include the new file.
|
|
as some odd mips designs need moro than 32 bits in there. This causes a lot
of mechanical changes everywhere getsr() is used.
|
|
knowledge to <machine/pte.h>. Add specific routines for tlb handling setup
(at cpu initialization time) and tlb ASID wrap.
|
|
such statements with it.
|
|
|
|
ok deraadt@
|
|
|
|
updated gcc and ld to understand the new -nopie flag.
ok deraadt@
|
|
ok deraadt@
|
|
|
|
|
|
`struct device' as its softc. This is not the case on loongson, and the
glxpcib softc gets subtly corrupted, causing a kernel panic when attempting
to select the glxpcib timecounter as the current timecounter.
Skirt this by not using the pcib softc fields if we are invoked from
glxpcib - it is not really worth putting pcib_softc in a header for the sake
of MI glxpcib code.
|
|
ok guenther@
|
|
MI float.h which pulls in and defines the values that are needed from
there, and repair sys/limits.h so that it defines the values it needs
as well (depending on POSIX version, XPG version, etc). guenther has
a more exact selection of that coming for limits.h.
this also fixes a few mistakes for the vax.
reviewed by kettenis and guenther.
|
|
to pass both the virtual and physical addresses of the page to clean to
SyncDCachePage, which is the only routine using `Index' operations on the data
cache, which might be virtually indexed at some levels but physically indexed
at others. On the other hand, it does not make any sense to pass a physical
address to routines using `Hit' operations (and they were discarding them
anyway).
In addition to making things cleaner, this fixes sporadic userland misbehaviour
(read: SIGSGEV) on RM7000 O2 systems.
|
|
|
|
rather than abusing <machine/cpu.h>.
|
|
subspaces in the CCA_NC uncached memory space. However, being coherent,
there was never a need for bus_dma to use uncached addresses.
This means that, on the only systems where uncached_base was not set to
PHYS_TO_XKPHYS(0, CCA_NC), it was never used.
Remove the variable, and replace PHYS_TO_UNCACHED() with
PHYS_TO_XKPHYS(, CCA_NC). No functional change.
|