Commit Graph

1152 Commits

Author SHA1 Message Date
is
db6e62f6ec pcb_ustp went away long ago. 1998-05-12 23:48:34 +00:00
chopps
9ed2f725ab add -m and -k flags 1998-05-08 23:03:49 +00:00
chopps
09332ff276 remove -Z (load from chipmem) flag
fix copier code (startit) to work bi-directionally.
change compiler optimization options to save some bytes
1998-05-08 19:08:18 +00:00
kleink
aa36ad1f55 Fix some arithmetics lossage on typeless pointers. 1998-05-07 21:01:41 +00:00
veego
8a9498f09a Don't use an 'register char' as an array index, change it to an int. 1998-04-17 17:57:08 +00:00
veego
d15b06459b Add missing int after an register. 1998-04-17 17:38:14 +00:00
is
e61d6bdb82 Dont define splserial here... its now different from spltty. 1998-04-16 21:28:00 +00:00
is
c61f5c0cc5 Uhm... looks like I forgot this when doing the MACHINE_NEW_NONCONTIG stuff.
Sorry folks.
1998-04-14 20:18:08 +00:00
tv
b21bfbde11 Add -Wno-main conditional on compiler being gcc 2.8 or egcs. (This adds
a HAVE_GCC28 check-variable that can now be used to add other gcc-2.8
flags in cases where they may be useful, or to remove gcc 2.7.2 "bug
workaround" flags.)
1998-04-12 23:47:41 +00:00
is
4e23fff56a Make ser.c compile again (preliminary release). It needs still a lot of
cleanup, but at least mainstream usage should be possible again (worked
for me 5 minutes ago).
1998-04-11 19:30:56 +00:00
is
da0b5bf913 amiga_ttyspl -> amiga_serialspl (and keep ttyspl constant at 4 again).
(Part of this change slipped in with my last machdep commit; thanks to
Matthias Scheler for pointing this out).
1998-04-11 18:28:33 +00:00
mhitch
11b4024ccf Initialize proc0.p_addr so we don't dref NULL in trap(). [From hp300 locore.s]
Fixes PR 5281.
1998-04-11 16:13:57 +00:00
mhitch
18114765d8 Fix a bug I think I introduced long, long ago. The bug would only show
up on systems that have Zorro I/O space allocated outside the Z2 I/O
region, and then only if kvm usage is high enough to begin allocating
pages already mapped for hardware mappings.  Found and fixed by Niklas
Hallqvist on OpenBSD.

From niklas@cvs.openbsd.org:
Yay! This fixes a bug that has been there since day one of the amiga port.
We have never protected the kvm area that maps Zorro I/O registers in the
Z2 memory space from being allocated by the kmem_* routines.  Lately kvm
usage has increased and we have needed more kvm allocated than earlier thus
this area have got allocated with random results.  Most often resulting in
MMU fault panics, but also in hangs.  This bug has stalled the amiga port
release builds for several weeks, but now I *hope* the amiga will have a
chance to be built and tested in time for 2.3.
1998-04-10 15:59:35 +00:00
is
1e9c878d39 ser.c, mfc.c and msc.c dont compile currently. 1998-04-07 19:43:08 +00:00
is
6c7f702633 - remove one level of soft interupt in the software autorepeat code
- WOPEN -> wopen
1998-03-25 22:14:13 +00:00
is
a798a71d08 MACHINE_NEW_NONCONTIG for NetBSD/Amiga. The older contiguous and
MACHINE_NONCONTIG stuff isn't supported anymore.
1998-03-22 23:12:49 +00:00
is
456d2a7c07 Add bus_space_subregion(). 1998-03-22 17:58:01 +00:00
is
6e806b8115 This is no longer DraCo-specific (and hasn't been for a long time). 1998-03-22 17:16:33 +00:00
bouyer
9f50fca1fd Add commented out "options FFS_EI" 1998-03-18 16:34:41 +00:00
is
a830b47531 Ite keyboard map, for spanish Amiga keyboards.
Contributed by Inaki Saez <jisaez@sfe.indra.es>.
1998-03-13 19:28:11 +00:00
is
20251e62f9 Bug fix for the Ariadne panic: don't touch addresses outside the buffer we
got passed.
- analysis by Charles Hannum
- bugfix by Michael van Elst
- test by Thorsten Frueauf & Matthias Scheler
1998-03-09 17:00:33 +00:00
is
90e5d61467 Conditionally (on defined(DRACO)) compile new DraCo keyboard code sequences.
Pointed out by Bernd Ernesti.
1998-03-08 19:59:15 +00:00
is
eb3cda883b Probe for the native DraCo (rekeycaped MF-II) keyboard, instead of guessing
it from the QuickLogic chip version byte.
If found, switch it to non-autorepeat mode (which seems to avoid the race
condition which made my keyboard driver / X server lose state under heavy
interupt load).
If not found, assume an Amiga keyboard on CIA-A.
XXX We should probe for the presence of the CIAs on the DraCo.
1998-02-28 21:53:15 +00:00
perry
1ed8ea9966 note second parm of sysarch() is now void *, + trivial KNF, etc. 1998-02-25 21:41:55 +00:00
is
85c6760e2d Initialize keyboard structures also from kbdopen(), if necessary.
To do this, move the flag variable to kbdenable().
This will make kernels with serial console provice a working keyboard driver.
1998-02-23 00:47:30 +00:00
is
7667dac2d2 Actually fix, rather than mask, the Amiga big machine panic: the pmap needs
to (pre)allocate enough kernel page table pages to (among others) map the
buffer cache buffers.
1998-02-22 22:51:46 +00:00
thorpej
772da350d4 Disable the message buffer during crash dumps by clearing msgbufenabled,
not msgbufmapped.
1998-02-19 04:18:30 +00:00
cgd
3bbb7f7d45 Move pmap_map() function definition to MD headers, as appropriate. It's
an internal function, and the VM system shouldn't try to prototype it.
(Note that some ports _don't_ prototype it.)
1998-02-18 02:05:32 +00:00
is
31c87441a4 Cosmetics. Pointed out by Matthias Scheler. 1998-02-17 19:42:38 +00:00
thorpej
8354e68508 Remove "class" declarations, and add "devclass" declarations where
appropriate.  Fix several inconsistencies between device class and
attributes.  Mostly from Chris Demetriou.
1998-02-16 22:12:45 +00:00
scottr
f49dd3ef30 Avoid declaring the "astpending" and "want_resched" globals in cpu.h,
as this breaks C++ code that happens to indirectly include this header.
Both Matthias Scheler and I noticed this, independently.

This problem notably does not affect the atari and sun3/sun3x ports,
which have already implemented a similar solution.
1998-02-13 07:41:45 +00:00
is
cb1085870c Add the LIMITMEM workaround for the kernel address space size problem.
Will be removed as soon as the kernel can auto-adapt to its address space.
1998-02-09 22:14:43 +00:00
is
dcc4b3ec64 Get rid of std.draco file.
Amiga specific devices must be named in GENERIC, too.
While here, add vnd pseudo-devices to DRACO.
1998-02-05 20:07:15 +00:00
mycroft
b5c132e4d2 Prototype __flt_rounds() consistently. 1998-02-03 01:26:20 +00:00
is
b3fa451227 Amiga uses the common m68k/sig_machdep.c now. Also moved its definition from
the other 68k ports' files.${port} to arch/m68k/conf/files.m68k.
1998-02-01 21:23:24 +00:00
mycroft
15ae963bea When dumping, print out the device number as major,minor. 1998-01-24 16:46:23 +00:00
is
53d89006d1 If on the M68060, make cache-inhibited pages imprecise. Reads and writes
are still in-order, but cached reads dont wait for the last write to finish.
Xamiga on a Altais in 8bit-mode became 30% faster servicing xanim (well, 6%
if you count xanim, too).
1998-01-22 23:13:40 +00:00
is
632b1123ba struct cfdrivers are emitted by config(8) into ioconf.c, nowadays. Delete
mainbus_cd here.
1998-01-15 21:55:51 +00:00
thorpej
0b6e56ec02 Adjust for changes to config. 1998-01-12 10:39:01 +00:00
is
5d5c1cd59e - avoid system stack underflow when calling sigreturn via trap #0
- make sure all sigreturn error conditions are reported to the caller,
  instead of the place jumped to.
This is the bugfix part of pr 4628 by ITOH Yasufumi.
The performance optimization part will be handled seperately, after evaluating
its implications.
Testing on 68040 and removing the performance change from the proposed patch
by scottr. Half of the Amiga machdep.c change had to be done manually by me,
as the patchfile didn't apply cleanly.
XXX Yes, Amiga should be changed to use the common sig_machdep.c instead.
XXX Really soon now. I promise.
1998-01-07 22:46:00 +00:00
is
d002f566b3 Support 68060 (and, for the Amiga, even 68040 buserr frames) in the sendsig()
and, indirectly, sigreturn() functions.
XXX The Amiga should be switched to using sig_machdep.c instead.
1998-01-06 20:50:22 +00:00
thorpej
6ac24f05df Garbage-collect VM_PMAP. 1998-01-06 08:46:11 +00:00
thorpej
2317f9064e Garbage-collect pm_stchanged. 1998-01-06 08:40:50 +00:00
thorpej
07f835de1f Garbage-collect PMAP_ACTIVATE() call here; it's no longer necessary. 1998-01-06 07:49:36 +00:00
thorpej
61567b54de Garbage-collect pm_stchanged; it's not used by anything. 1998-01-06 07:02:58 +00:00
thorpej
d11b109f2b Garbage-collect use of the PCB's copy of the user segment table pointer. 1998-01-06 06:51:40 +00:00
thorpej
ab9b250a37 The user segment table pointer is no longer kept here. Change it to
a spare field.

XXX Should be changed to use generic m68k PCB!
1998-01-06 06:47:04 +00:00
thorpej
a8f80ad4fd Fix a bogosity apparently inherited from when the Utah 4.3BSD code base
was converted to use Mach VM for Net2/4.4BSD.  The user segment table
pointer was originally stored in the PCB.  When Mach VM came along,
however, it was also stored in the pmap, and loaded into the PCB in
pmap_activate().  pmap_activate() would then note that the PCB's USTP
was now in sync with the pmap's USTP, and the low-level context switch
code would use the value from the PCB.

However, pmap_activate() would also load the hardware MMU context if
the pmap was the current pmap (or, in the case where pmaps can be shared,
such as in NetBSD, if the proc was the current proc).  The low-level
context switch code would then reload the hardware _again_ using the
USTP from the PCB.

However, the optimization of not calling pmap_activate() if "stchanged"
was false ended up causing some processes to use stale USTP values from
the PCB when the low-level context switch code reloaded the hardware!
This was noticed by using a real vfork(2) (which worked for some time
before failing, surprisingly!)

Since I'm hard pressed to find any real optimization here (since the
hardware was always reloaded once, sometimes twice!), the code now always
calls pmap_activate(), which uses the correct USTP value (the one in the
pmap).  The PCB's USTP is now ignored, and should eventually be g/c'd.

Another optimization can actually be performed, and I have added a comment
describing what it is, but have not yet implemented it.

Also note that most of the loadustp() functions where actually incomplete.
This has been corrected.  These functions should probably be split up into
MMU-specific operations, and called indirectly, rather than doing constant
run-time decision making based on values that will never change during the
course of a boot's lifetime.
1998-01-05 23:16:21 +00:00
perry
3625dbcd48 RCSID Police. 1998-01-05 21:34:56 +00:00
perry
b46484bb8a RCSID Police. 1998-01-05 20:51:25 +00:00