summaryrefslogtreecommitdiff
path: root/sys/arch/loongson
AgeCommit message (Collapse)Author
2013-06-11final removal of daddr64_t. daddr_t has been 64 bit for a long enoughTheo de Raadt
test period; i think 3 years ago the last bugs fell out. ok otto beck others
2013-06-05Remove unused variables.Paul Irofti
2013-06-05Implement hibernate_flush.Paul Irofti
Might have to find a better place for the cache.h header but until then it will have to do. Discussed with miod@
2013-06-05Keep things sane in the apm ioctl handler.Paul Irofti
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.
2013-06-04Make apm aware of the APM_IOC_HIBERNATE command.Paul Irofti
While at it use STANDBY for RAM and SUSPEND for disk. Okay miod@
2013-06-03changes for isc fuse support. not enabled. ok beck deraadt.Ted Unangst
from Sylvestre Gallon ccna.syl gmail.com
2013-06-02Start working on hibernate support for LoongsonPaul Irofti
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@
2013-06-02compile with -fno-builtin-exitJasper Lievisse Adriaanse
ok miod@ pirofti@
2013-06-01add missing license (PD) blockJasper Lievisse Adriaanse
ok guenther@
2013-05-30Enforce ca_activate tree-walks over the entire heirarchy for all events,Theo de Raadt
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
2013-05-17Add a dummy IPL_MPSAFE definition.Mark Kettenis
ok miod@, mikeb@
2013-04-19In {gpio,gdium}iic_bb_read_bits(), report the state of the SCL bit in additionMiod Vallat
to the state of the SDA bit; the MI i2c code is about to depend upon this.
2013-04-16Get rid of various 'typedef struct' definitions and use plain structureTheo de Raadt
definitions instead. We don't change usb.h for now to stay compatible with userland. missed bits from previous change; ok mpi
2013-04-01Build mips kernels with -G 0, to disable use of so-called `small' data andMiod Vallat
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.
2013-03-30reorder include search directories. cuts lookups by quite a bit.Ted Unangst
ok deraadt miod
2013-03-28Add __strong_alias macros for all architectures to be able to aliasMartynas Venckus
another symbol without weak attribute. To be used in libc and libm soon. Agreed by kettenis@, guenther@, matthew@.
2009-07-31By popular demand and peer pressure, check-in work in progress work to supportMiod Vallat
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.
2013-03-26sync TDIRS with realityJasper Lievisse Adriaanse
"looks good" deraadt@
2013-03-24Use sys/param.h to be able to get at DEV_BSIZETheo de Raadt
2013-03-23refactor sys/param.h and machine/param.h. A lot of #ifdef _KERNEL is addedTheo de Raadt
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...
2013-03-23avoid machine/param.h useTheo de Raadt
2013-01-16On second thought, do not unconditionnaly register the cpu throttling codeMiod Vallat
on all Loongson2F systems yet; Gdium does not have a separate scheduling clock yet and can't afford throttling until then.
2013-01-16Loongson: add throttling support.Paul Irofti
This commit allows CPU throttling on the 2F systems. Inspired by an old diff from otto@. Help from and okay miod@.
2013-01-15Loongson: Add a stat clock for the lemote machines.Paul Irofti
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@.
2013-01-15Loongson: Remove some of the unused defines.Paul Irofti
Increases readability.
2013-01-15Loongson: Unbreak the tree after my last commit.Paul Irofti
Patch appended my final work on glxclk to an earlier version that I forgot was there.
2013-01-14Loongson: Replace the system clock provided by the CPU with a GLX MFGPT.Paul Irofti
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@.
2013-01-02miod let one exec.c slideTheo de Raadt
2012-11-04Simplify Makefiles a bit, removing redundant stuff. ok espie@Matthieu Herrb
2012-10-17Document the 'boothowto hack' used to flag to (a few) DVACT_POWERDOWNTheo de Raadt
handlers how hard they should hit the hardware.
2012-10-08Revamp the sequences for suspend/hibernate -> resume so that the codeTheo de Raadt
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
2012-10-03Do not use <mips64/archtype.h> for loongson model numbers, but rather put theMiod Vallat
list in loongson's <machine/autoconf.h> directly. <mips64/archtype.h> is intended to be only used on ARCBios-like platforms.
2012-10-03Split ever-growing mips <machine/cpu.h> into what 99% of the kernel needs,Miod Vallat
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.
2012-09-29Handle the coprocessor 0 cause and status registers as a 64 bit value now,Miod Vallat
as some odd mips designs need moro than 32 bits in there. This causes a lot of mechanical changes everywhere getsr() is used.
2012-09-29Kill the mostly unused VMTLB_xxx and VMNUM_xxx defines. Move all tlbMiod Vallat
knowledge to <machine/pte.h>. Add specific routines for tlb handling setup (at cpu initialization time) and tlb ASID wrap.
2012-09-29Proide a mips_sync() macro to wrap asm("sync"), and replace gazillions ofMiod Vallat
such statements with it.
2012-09-27enable smscJonathan Gray
2012-08-31Kill NOPIE and NOPIE_FLAGS in loongson/stand.Pascal Stumpf
ok deraadt@
2012-08-29Implement pci_min_powerstate().Mark Kettenis
2012-08-28Add -nopie to LINKFLAGS on ELF architectures. Note that this needs anPascal Stumpf
updated gcc and ld to understand the new -nopie flag. ok deraadt@
2012-08-23missed NOPIE_FLAGS, noticed by Brian CallahanPascal Stumpf
ok deraadt@
2012-08-23missing ${NOPIE_FLAGS}; ok pascalTheo de Raadt
2012-08-23kill nnpfs deadTheo de Raadt
2012-08-18glxpcib(4) invokes pcibattach assuming pcib doesn't need more than aMiod Vallat
`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.
2012-08-02remove leftover NOLINT, WANTLINT, LINTFLAGS, LOBJ vars and lint targets.Okan Demirmen
ok guenther@
2012-06-26create new machine/_float.h which is namespace clean. create a newTheo de Raadt
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.
2012-04-21Rework the signature of the cache handling routines again. It makes more senseMiod Vallat
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.
2012-03-26Add APM_IOC_HIBERNATETheo de Raadt
2012-03-25Move cache handling routines related definitions to a dedicated header file,Miod Vallat
rather than abusing <machine/cpu.h>.
2012-03-15uncached_base was introduced early in IP27 support, since these designs useMiod Vallat
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.