summaryrefslogtreecommitdiffstats
path: root/sys/sparc64/include/cache.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix a bug in the data access error recorvery. Before re-enabling the datajake2003-11-111-0/+9
| | | | | | | | | | | | cache after a data access error we must discard all cache lines. When disabled existing cache lines are not invalidated by stores to memory, so we risk reading stale data that was cached before the data access error if we don't flush them. This is especially fatal when the memory involved is the active part of the kernel or user stack. For good measure we also flush the instruction cache. This fixes random crashes when the X server probes the PCI bus through /dev/pci.
* Avoid exposing declarations for kernel variables to userland.jake2003-07-171-0/+4
| | | | PR: 54528
* Use vm_paddr_t for physical addresses.jake2003-04-081-6/+6
|
* - Remove unused cache flushing routines. These will not necessary workjake2003-03-191-57/+19
| | | | | | | | | | | | | | | | | | | on future UltraSPARC cpus for which the data cache is not direct mapped. - Move UltraSPARC I and II (spitfire, blackbird, sapphire, sabre) specific functions to spitfire.c, and add cheetah.c for UltraSPARC III specific functions. Initially just cache flushing, but there are a few other functions that will need to move here. - Add an ipi handler for data cache flushing on UltraSPARC III. - Use function pointers to select the right cache flushing functions based on cpu_impl. With this it is possible to boot single user from an mfs root on UltraSPARC III systems, including spinning up secondary processors. There is currently no support for the host to pci bridge, and no documentation for it is publically available. Thanks to Oleg Derevenetz for providing access to a system with UltraSPARC III+ cpus.
* Add SMP aware cache flushing functions, which operate on a single physicaljake2002-05-201-15/+38
| | | | | page. These send IPIs if necessary in order to keep the caches in sync on all cpus.
* Remove __P.alfred2002-03-211-9/+9
| | | | | | profile.h and bus.h were excluded because there is currently WIP. Reviewed by: tmm
* Use stxa_sync() when accessing the diagnostic registers to invalidatetmm2002-02-131-1/+2
| | | | | caches; this is needed to avoid undefined behaviour. Clean up a bit.
* Prototype dcache_inval_phys.jake2001-12-291-0/+1
| | | | Submitted by: tmm
* Add cache handling code for sparc64.tmm2001-11-091-0/+126
OpenPOWER on IntegriCloud