summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2011-10-13I'm sick and tired of people doing misalgned reads and writes to PCI configMark Kettenis
space and not noticing because they only test on amd64. So enforce alignment there as well, at least for a little while such that we find those bugs and force people to fix them.
2011-10-13I'm sick and tired of people doing misalgned reads and writes to PCI configMark Kettenis
space and not noticing because they only test on amd64. So enforce alignment there as well, at least for a little while such that we find those bugs and force people to fix them.
2011-10-12Remove all MD diagnostics in cpu_switchto(), and move them to MI code ifMiod Vallat
they apply. ok oga@ deraadt@
2011-10-10Extend pci_probe_device_hook() on sgi xbridge(4) to return either the straightMiod Vallat
accessors or the byte-swapped accessors, depending upon the byteswap setting of the device we are trying to attach. This allows for the removal of byteswap knowledge from ioc(4) and iof(4) drivers. While there, build pci_chipset_t md structs by bcopy'ing a template and filling the few runtime fields, instead of assigning every field of them.
2011-10-10Introduce pci_probe_device_hook(pci_chipset_tag_t, struct pci_attach_args *).Miod Vallat
This mandatory function will get invoked in pci_probe_device(), and allows a pci host driver to alter the pci_attach_args passed to a device when attaching. This function will also, if returning non-zero, cause the device to be skipped completely during all the phases of the PCI device discovery (i.e. ressource enumeration, ressource assignment, and actual attachment). This particular feature is experimental and might be reverted in the future (or the scope narrowed to device attachment only). A dummy #define pci_probe_device_hook() 0 is added to all platforms except sgi, where real functions (currently only returning 0) are added; real meat will be added shortly. Discussed at s2k11, no objection from the usual suspects.
2011-10-10add tlphy everywhere tl is enabledJonathan Gray
pointed out by Loganaden Velvindron/brad
2011-10-09Pad the ECOFF output file to a 512 bytes boundary; older AViiON firmware willMiod Vallat
reject non-padded files with an irrelevant error message, and newer firmware won't mind the extra bytes.
2011-10-09Cope with the recent pmap changes to prevent them from accidentally unmapMiod Vallat
the VBR page (quick workaround until the VBR page is relocated as has been done on mvme88k)
2011-10-09Let BUS_DMA_COHERENT allocations return cache-inhibited pages.Miod Vallat
2011-10-09Finally fix the kernel mode apr to remove the forced write-through cacheMiod Vallat
control, and enjoy the joys of write back (16% performance improvement for non-cpu bound workloads). While there, there is no need to map the page tables cache inhibited on 88100 systems; they only need to be write-through, and snooping will do the rest. Kernel WB is still disabled on 88110 SMP kernels, until the last MP bootstrap bug is understood and fixed.
2011-10-09Split the tlb invalidate routines into 88100 and 88110 specific routines, ↵Miod Vallat
and use function pointers to invoke them (if they can't be choosen at compile-time depending upon the kernel configuration). The routines now get the new pte value as an extra argument; they don't use it yet, but code I am working on will soon on 88110.
2011-10-09Correctly handle invalidate of partial cache lines, for the Nth time.Miod Vallat
2011-10-09Rework secondary processor initialization. cmmu initialization is nowMiod Vallat
performed much earlier in the processor startup. No visible change, paves the way for the much important diff three commits from here.
2011-10-06ccd goes to the atticTheo de Raadt
discussed with jsing and millert
2011-10-06An #ifdef without a #else in the middle of an indexed array is bad.Theo de Raadt
ok miod
2011-10-04In the coming future, we are more likely to need ehci(4) than sk(4) orTheo de Raadt
vge(4) discussed at length with jsg
2011-09-29Fix local types in vgafb_pci_probe(), to match what pci_*_find() expect,Miod Vallat
after the bus_{addr,size}_t type definition change.
2011-09-29Get size of struct disklabel for the sake of the assembly code with aMiod Vallat
genassym script, instead of relying upon <sys/disklabel.h> to provide them as proper .set statements if _LOCORE is defined. Requested by weingart@ long ago; ok jsing@ krw@
2011-09-28Oops, do not do last minute edits before commit... Make the previous changeMiod Vallat
compile.
2011-09-28disable the fifo on m series systems by telling the driver its a 16550David Gwynne
which stops the MI com code from probing it as a 16550a. hopefully this will prevent the awesome faults on the mainboard from locking the system up. ok kettenis@
2011-09-27Make bus_addr_t and bus_size_t u_long types, instead of either uint32_t orMiod Vallat
uint64_t, depending upon the platform; this makes the declaration of these types consistent accross all our supported platform, and we do not intend to support a platform where bus_addr_t could be larger than the size of the cpu register. Requested by deraadt@ during s2k11
2011-09-27Make struct label_t large enough for the kernel setjmp() purposes. Found afterMiod Vallat
deraadt@ and jsing@ noticed hppa64 label_t was too short; amazing this did not get noticed earlier.
2011-09-27Use a pool to allocate pv_entry from, instead of allocating whole pages andMiod Vallat
maintaining our own free lists. No functional change.
2011-09-27Try to put more sanity in the machine check handling:Miod Vallat
- only handle a machine check as caused by badaddr() if the local `memtest' variable is nonzero, instead of abusing `cold'. And be sure to clear `memtest' upon returning from badaddr, of course. - do not write to the MCESR register on microVAX II and SOC processors, as this register is not implemented on those models. - get rid of the `write the SBIFS and EHSR registers depending upon the cpu model' chunk, since these only matter on true 11/780 and 86x0 models, support for which has been removed recently.
2011-09-26Notify ifmedia layer of loss of link on SGEC interfaces (which only getsMiod Vallat
detected upon failure to transmit if it is indeed lost), so that `ifconfig ze0' reports the correct state of the link instead of always pretending it is up.
2011-09-22KNF of mlarkin's code, requested by him. Some improvements to the interfaceTheo de Raadt
for talking to the disk driver snuck in. ok mlarkin
2011-09-22Ansify functions definitions.Joel Sing
2011-09-22Declare waittime variable to unbreak build.Joel Sing
2011-09-22None of the mainbus child devices care about getting a bus_space_tag_t fromMiod Vallat
its parent, because they know better; so don't bother providing one, which allows more unused code to go to the Attic. While there, redo the config machinery for mainbus child devices, to bring it to our current standards. This also allows them to be disabled in UKC, should there be a need for this in the future.
2011-09-22nowadays uvm_init() calls pmap_init(), not vm_init(); so update the comments.Jasper Lievisse Adriaanse
ok ariane@
2011-09-22this escaped when miod threw cats off a bridgeJonathan Gray
ok miod@
2011-09-22Start removing some tiny irrelevant differences between hppa64 and hppaTheo de Raadt
so that important differences can be spotted easier.
2011-09-22Catchup to hppa disksubr: determining label offset the new wayTheo de Raadt
2011-09-22Do not trash the mask value when setting and clearing the system mask.Joel Sing
Add a diagnostic for interrupt handler IPL levels.
2011-09-22The MY_COUNT abstraction which depends on locore including these twoTheo de Raadt
files is ridiculous. Remove it.
2011-09-22spacing cleanup after mlarkin visited the fileTheo de Raadt
2011-09-22Disable option DEBUG for hppa64 - it is now too noisy to be useful.Joel Sing
ok kettenis@
2011-09-21disable st*, since we doubt anyone uses it. suggested by jsing inTheo de Raadt
response to some i386 ramdiskA bloat that has struck unexpectedly.
2011-09-21Get rid of curlwp references; mk@Miod Vallat
2011-09-21Rename pmap_procwr() to pmap_proc_iflush() to get the intended behaviour.Miod Vallat
2011-09-21Remove stale comments about vm freelistsMiod Vallat
2011-09-21Fix range check in intc_intr_establish()Miod Vallat
2011-09-21Perform most of the remaining refactoring of hibernate code intoMike Larkin
MI/MD parts. This also introduces a chunk placement routine that was originally developed at c2k11 with help from drahn and ariane. There are still a few more things to do for hibernate, but those can be worked on in-tree. This code is disabled by default, and not yet called. ok deraadt@ (and deraadt@ said kettenis@ also ok'ed it :) )
2011-09-20Remove !defined(CACHE_CLEAN_BLOCK_INTR) code, and make CACHE_CLEAN_BLOCK_INTRMiod Vallat
no longer an option.
2011-09-20Late spring cleaning of the arm code for old dusty bits we do not want toMiod Vallat
keep: - remove bootconfig parameter passing feature (unused). - unifdef __PROG32 and remove all remains of arm26 code. - remove ARMFPE support (unused). - remove support for ARM2, ARM2AS, ARM3, ARM6, ARM7, ARM7TDMI and StrongARM processor families, and the related silicon bug workarounds (especially the SA-110 STM^ bug). - remove cpu_functions no longer necessary after previous removals. - remove ARM32_DISABLE_ALIGNMENT_FAULTS option (unused). - make FIQ support conditional on option FIQ (unused, but may be eventually). Discussed with drahn@ and jasper@ long ago, I was sitting on this commit for no good reason.
2011-09-20calee -> calleeMiod Vallat
2011-09-20Remove unused MD_CACHE_CTL() macro and related defines.Miod Vallat
2011-09-20Don't bother checking for SPX on KA410 (VS2000), since the only colour optionMiod Vallat
for this machine is good'ol'GPX.
2011-09-20Remove commented-out leftovers from old drm drivers that have been removedMatthieu Herrb
from tree. ok oga@
2011-09-20When restarting a system call we need to go back four instructions, notJoel Sing
three, since this has to match libc/arch/hppa64/SYS.h. ok miod@