Commit Graph

28488 Commits

Author SHA1 Message Date
chris 5695ad388d Update pmap_clearbit to flush the cache if the area is being made readonly. Also only do this and the tlb flush if the pmap is the current pmap. 2001-09-13 22:45:23 +00:00
thorpej face3e948d Add "pci" at cdev 83. 2001-09-13 22:08:44 +00:00
tshiozak 5341bac833 correct the set/get trigger code for ALi M1543 interrupt router. 2001-09-13 14:00:52 +00:00
pk 0a4ccdfd3c Some sun4c machine (e.g. an IPC) can also have just 7 register windows,
so check for a possible context switch optimization #if SUN4C too.
2001-09-13 13:25:48 +00:00
pk e85ab176f8 The SAVE macro used in the context switch code wound up being defined
only if MULTIPROCESSOR in rev 1.142, causing spurious register window
corruption on some machines.
2001-09-13 13:12:13 +00:00
manu dea90b1ed2 Linux emulation is no longer experimental, removed comment 2001-09-12 21:05:37 +00:00
rjs fcd39c5f2e Add bs_notimpl_bs_mmap to bus space struct. 2001-09-12 12:32:16 +00:00
rearnsha 9358e3ecc3 Fix warning errors for printing size_t types when compiling with
DEBUG_DMA (uses casts due to a.out and ELF having different base
types for size_t).
2001-09-12 09:41:50 +00:00
fvdl 43bbb8500a Apparently some ServerWorks Host-PCI bridges only get their memory space
enabled, even though IO space does work. A few drivers (like ahc)
will only work reliably with IO space, so check for this condition
and correct it.
2001-09-12 08:25:17 +00:00
jmc 9185cf1b34 Add mtrr.h to INCS list to get installed on a make includes 2001-09-12 04:44:21 +00:00
chs 0f63dc99dc replace pmap_enter() with pmap_kenter_pa() where appropriate. 2001-09-11 20:37:12 +00:00
bjh21 5321796010 Add a minimal bus_space_mmap which always fails. The MEMC can only map DRAM
into the user's address space -- I/O devices can only ever be got at by the
kernel.
2001-09-11 11:38:59 +00:00
chs e5c9089c28 fix typo. 2001-09-11 07:30:51 +00:00
eeh 93b54eb36a Implement pmap_growkernel(). 2001-09-11 04:35:43 +00:00
bjh21 e416135347 Driver for the standard Archimedes Econet interface, based around the
Motorola 6854 ADLC.
2001-09-10 23:41:48 +00:00
chris bd81d66bb5 Update the pmap following some comments from Chuck Silvers:
Remove some overzealous locking of HEAD_TO_MAP
Remove a potential deadlock in pmap_copy_page
Change alloc and free l1pt to use kenter/kremove.
Update pmap_map to use kenter (only actually used by dumpsys, so no matching kremove)
2001-09-10 23:40:02 +00:00
bjh21 c30b958988 Add fiq_installhandler(), so the current FIQ owner can change what handler
they've got installed without relinquishing the FIQ.
2001-09-10 23:17:48 +00:00
chris 70907ad742 Add stubs for mmap to footbridge, must implement proper mmap real soon. 2001-09-10 23:05:19 +00:00
chris 0e7661f023 Update pmap_update to now take the updated pmap as an argument.
This will allow improvements to the pmaps so that they can more easily defer expensive operations, eg tlb/cache flush, til the last possible moment.

Currently this is a no-op on most platforms, so they should see no difference.

Reviewed by Jason.
2001-09-10 21:19:08 +00:00
eeh 574892a487 Get rid of spurious OF_getprop(). 2001-09-10 16:27:53 +00:00
eeh 9d636228e1 Sun Blade 100 support (and some psycho fixes from Jason Wright). 2001-09-10 16:17:06 +00:00
pooka 58bcf84390 Add bs_notimpl_bs_mmap into the bus space struct to make this cope with
the recent ARM bus_space_mmap() change and hence make this compile.
2001-09-10 15:47:38 +00:00
rafal 39c82fe985 Use the newly committed imcreg.h to get rid of the magic numbers polluting
this file; while I'm here, rework the GIO arbitrator parameter setup to
match more closely what is done by lunix on the same hardware... Finally,
on a tip from Wilbern Cobb, preserve the graphics-related bits of the
GIO arbitrator parameter register from the PROM-initialized settings so
ARCS console on the graphics display works (tested on both my Indy with
Newport and my Indigo2 with XL gfx).
2001-09-10 15:36:19 +00:00
eeh e29b0dab62 Change some debug printfs to make gcc happy. 2001-09-10 14:56:33 +00:00
rafal efa747227e Register defines for the SGI MC memory controller. Not 100% complete, but
has enough register/bit definitions to get rid of all the magic numbers that
currently pollute imc.c
2001-09-10 14:13:31 +00:00
fvdl 8e76d96c85 wrap decl in #if NAGP > 0 2001-09-10 10:54:46 +00:00
fvdl 5f5910616d Oops, didn't mean to enable agp by default yet. 2001-09-10 10:19:12 +00:00
fvdl 927ade4753 Add agp* at pchb? 2001-09-10 10:18:37 +00:00
fvdl 5b6f2046cc Add MTRR option. 2001-09-10 10:17:29 +00:00
fvdl 30bd1cf759 Clean up 'volatile' MTRRs owned by a process when it exits. 2001-09-10 10:14:57 +00:00
fvdl 5b0257ed49 Backend for MTRRs on PII and up or Athlon CPUs. The only other implementation
is on the AMD K6.
2001-09-10 10:14:21 +00:00
fvdl 86b144f468 Syscall frontend for mtrr functions. 2001-09-10 10:13:04 +00:00
fvdl 38db8748a4 Initialize MTRRs on startup if they're enabled. 2001-09-10 10:12:16 +00:00
fvdl 78742dd0e0 Add flag to indicate that a process set some mtrrs that need to be
cleaned up automatically on exit.
2001-09-10 10:11:21 +00:00
fvdl c823d05ca0 Add definitions for mtrr syscalls. 2001-09-10 10:10:57 +00:00
fvdl e0a68652a8 MTRR include file, based on the one by Bill Sommerfeld from the i386 mp
branch.
2001-09-10 10:10:33 +00:00
fvdl a46fbfc5a8 Add agp device. 2001-09-10 10:08:40 +00:00
fvdl d106bb1f19 Add agp files (enabled only on i386, but the main code itself should not
be MD, so could be enabled on other platforms).
2001-09-10 10:08:10 +00:00
fvdl 2c8172cbd3 Attach agp gart support @ pchb. Not very clean, but agp support may
be spread over several devices, and the phcb is usually the main one.

Add agp_machdep.c file which implements MD agp functions (currently
just agp_flush_cache).
2001-09-10 10:06:54 +00:00
msaitoh 78db8b9715 add missing check for framing error 2001-09-10 08:50:33 +00:00
perry edea1a2c17 Make it possible to query each battery individually by making the
APM_IOC_GETPOWER ioctl read/write. Setting the batteryid in the passed
structure returns the data for just that battery. The old ioctl
remains for binary compatibility but has been renamed.

Itojun already did the hard work -- I just added a couple of lines.

reviewed by: thorpej
2001-09-10 05:23:30 +00:00
reinoud a425cc29ac Make it compile again if for some configuration there are no FIQ's ... It
complained about the unused label.
2001-09-10 02:21:42 +00:00
reinoud 7bace466ad Initial commitment of the bus_space_mmap() functions as proposed by Jason R
Thorpe as an extension to the bus_space(9) API.

Only the mainbus has a working mmap... iomd, podulebus and isa dont have
one yet. Its trivial to add the iomd and isa's memory part but am a bit
hessistant to add it without knowing its implications by heart.

Podulebus might be implemented in 32 bits EASI but otherwise its not really
transparent since there is AFAIK no function to explicitly read one byte or
so .. or is this implemented in a higher level ?

ARM26 and arch/arm32/dnard (Shark) kernels compile and RiscPC and Shark
kernels are tested and function OK.

Implications of other ARM systems like hpcarm and ebarm are propably
minimal or solved trivially.
2001-09-10 02:20:19 +00:00
matt 97c7e7fe8d Always include -Wno-main 2001-09-09 22:53:02 +00:00
chs 7d353e82b0 - in PMAP_IS_ACTIVE(), the kernel pmap is always active, and we don't
need to check for curproc being non-NULL since none of the pmap
   interfaces which are legal to use in interrupt handlers use this macro.
 - use the hit op when flushing the cache in pmap_kremove().
 - avoid trusting the optimizer in pmap_clear_reference().
 - fix pmap_clear_modify() to reset the mod-bit emulation so we can
   detect further modifications to the page, also flushing the cache
   for any mappings which might have dirty lines.
2001-09-09 19:48:12 +00:00
perry fe9074d8dc boost maximum MAXUSERS to 128 2001-09-09 18:36:36 +00:00
bouyer a4638cc6d5 Properly initiatize sc->sc_wdcdev.set_modes for non-DMA controllers. 2001-09-09 16:08:49 +00:00
reinoud 180a40eb5b A long int for kernel sizes is a bit overdone for an arm32 ... make it
compile again by changing the format string to use ints.
2001-09-09 15:15:14 +00:00
tls 3d4146e21f Add asm versions of blowfish and des transforms for i386.
This also involved updating the in-kernel DES functions to correspond
to the versions in our in-tree OpenSSL, because the des_SPtrans table
has changed; the asm code will not work with the old permutation table!

C and i386 asm code for the DES, 3DES, and Blowfish CBC modes is also
included; it is not currently built as the ESP processing in esp_core.c
splits the CBC operation and the cipher transform apart.  Hopefully that
will be fixed as there is a substantial performance improvement to be had
from doing so.  It will remain necessary to use the C version of the
Blowfish CBC function on some i386 machines, however, as the asm version
uses bswapl, which ony 486 and later processors have.  The DES CBC code
doesn't have this problem.

Finally, change esp_core.c to use the ecb3_encrypt function instead of
calling ecb_encrypt three times; this improves performance a bit, in
particular in the asm case.
2001-09-09 11:00:59 +00:00
toshii 7c9e82d6e3 Don't define pcb_* register macros.
pcb_sp macro conflicts with sys/netinet6/ipsec.c.
2001-09-09 10:33:42 +00:00