Commit Graph

797 Commits

Author SHA1 Message Date
mrg 4daafadec3 add COMPAT_12. 1996-08-26 23:39:21 +00:00
mycroft 558d72128e Put into . Remove hooks for `config-dependent' and
`device-driver' flags.
1996-08-12 00:51:24 +00:00
veego 2ca67bae05 Bring in changes from the 1.2 branch which where only in the release 1996-08-11 12:27:50 +00:00
veego 66bb4a489f Disable the Hardwarecursor on the RetinaZ3 to solve the problems with
wrong mouse jumps under X11.
Remove the not working options KGDB from DRACO and GENERIC and added
an option to enable the HWC for the RetinaZ3
1996-08-11 09:48:17 +00:00
mycroft cf67f29afe * Add a HOSTED_C_C variable, which strips `-p', `-pg', and
`-nostdinc', and use it when building genassym.
* Use `-nostdinc' just to be sure we're self-contained.
1996-08-10 06:07:57 +00:00
mycroft f94052ed3a * Define CWARNFLAGS and MKDEP in some moderately consistent fashion.
* Make S expand to an absolute path at compile time.
* Use `-S' rather than `-x' to remove debugging symbols.
* Garbage collect unused variables.
* Reverse a handful of port-specific changes that do not correspond to
the common build model and are not needed.
1996-08-10 05:29:24 +00:00
is 0f2514d2a0 Add manu/prod id for the DMI resolver board here. (No, no driver yet) 1996-08-09 18:18:05 +00:00
mrg 5abbf990f3 Change reboot(2) to take two arguments: bootopt like normal and also
a boot string for firmware that can do this, such as the SPARC and
the sun3 models.  It is currently silently ignored on all other
hardware now, however.  The MD function "boot()" has been changed to
also take a char *.
1996-08-09 10:30:23 +00:00
is 480910aa2e Program around the Fastlane's DMA hardware shortcomings.
Fix by Matthias Scheler (PR #2672), based on information provided by Ralph
Schmidt/Reinhard Grams (Phase 5), forwarded by Jerome Lovy. Thanks to all.
1996-08-04 11:25:36 +00:00
is af6e1b10a8 Kludge to get back "Fusion Forty" fastkick memory. 1996-08-02 18:00:30 +00:00
is 8311e65b64 Rewrite of the last bugfix wrt. Z2 bounce buffer memory allocation:
Don't manipulate the memlist passed from the kickstart rom + bootloader, as
we want it unchanged in case we boot via /dev/reload.
Instead, make z2mem_start known to pmap.c; and use int in pmap_bootstrap to
detect the right segment to correct and the amount.

XXX The transformation of z2mem from physical to virtual kernel addresses
in amiga_init.c must not be done before the pmap_bootstrap() call now!
1996-08-02 15:07:23 +00:00
is 721e767ea2 Deal with two bugs in the bounce buffer memory reserve code:
If z2 memory is used for bounce buffers, it used to be stolen in
amiga_init.c, but would not be removed from the memory list there, but
in pmap.c the memory list would just be corrected.

a) the sizes subtracted got out of sync.
b) the memory segment to subtract from was guessed in pmap_init, and not
necessarily right. (e.g. consider a graphics board whose fraem buffer gets
mapped in by the RO at 0x200000, and a memory board which maps at 0x400000)

The new code subtracts the stolen aount of memory from the memlist parameter
given to the kernel by the loader, and pmap_init just doesn't see it anymore.
1996-07-29 20:53:35 +00:00
is 14da7556a0 Add $(DESTDIR). 1996-07-27 18:21:35 +00:00
is faea95eae8 Delete the NOMAN and BINDIR lines. They're imported from ../Makefile.inc
anyway, and the BINDIR here was even wrong (missing $(DESTDIR)).
1996-07-27 18:15:42 +00:00
is 89931b5a83 Add $(DESTDIR) to the BINDIR= 1996-07-27 18:09:42 +00:00
is 894618ff5f Oops; somehow got the wrong version. 1996-07-27 18:08:15 +00:00
is 72855270d6 Get this onto the Main branch. 1996-07-27 17:54:13 +00:00
is 0d2955977e Fix two bugs which were inserted when adding '060 support:
- due to a merge error, 2 line were missing making all the kernel data area
  cache inhibited.
- due to a misunderstanding of "kstsize" units, all but the first page of
  the kernel segment table was copyback cached on the '040/'060 which
  should have caused sporadic user process segmentation faults or
  kernel endless loops on the '060, under heavy load (when lots of
  userland pagetables are in-core), although the problem was not yet
  observed.
1996-07-25 14:38:40 +00:00
is 8918d3a437 Note Blizzard IV and Blizzard 2060 (scsi?) options. While we're here,
correct a typo in a comment.
1996-07-22 11:14:52 +00:00
is a9c73c9405 Being bored, decided to scan the existing drivers for further additions
to the "not configured" list:
Added some devices, replaced an obvious placeholder.
1996-07-17 14:35:01 +00:00
is 397d9b2133 Add two manufacturer/product id combinations which I stumbled over analyzing
an unrelated bug report. This will make kernel startups a bit more readable
in the presence of unsupported hardware.
Information contributed by Andreas Bussjaeger.
1996-07-17 13:33:28 +00:00
is 7c66bb9bef Cleaned up copyright notice, fixed a typo, and sync the comment in the
GSP assembler file with reality.
1996-07-08 13:28:41 +00:00
is 6e4842626b There are Blizzard boards without SCSI options - we need to probe for the
existence of the SCSI hardware in the boards adress region.
Thanks to Oster Nerhus for the detailed bug report and to Ralph Schmidt for
the recommended probing method.
1996-07-01 08:00:02 +00:00
is a63c9b84e2 - Add code to loadbsd.c to allow booting on DraCos. This could be done
in a more elegant way, but it works as is, and we need it now.
- Add a README and Makefile for the above. Note that this directory should
  NOT be added to ../Makefile's SUBDIRS.
1996-06-26 15:53:05 +00:00
is 24a0b3ecb0 Forgotten $(DESTDIR) in special install rule. 1996-06-21 21:55:53 +00:00
is 0569d3582c Use the right microsecond delay address. To achieve this, also map that
piece of hardware into kernel virtual memory (was only a guess 'til now).
XXX Unfortunately, the hardware vendor reserves the right to change this in
future DraCo revisions. We must rethink delay() and DELAY(), at least for the
DraCo, soon.
1996-06-20 09:31:58 +00:00
is 40cd9f0062 During the data type cleanup, a bug crept in in the code handling mbufs with
odd length. This would lead to corrupt data sent.
1996-06-18 20:50:00 +00:00
is 59bbde87bc Don't use the inline assembler 64bit integer division if our kernel might
run on 68060. Some graphics boards need delay() in early initialization (that
is, before initcpu() was called.
1996-06-18 11:41:48 +00:00
is 052a8aa0ba Fix a bug in the 68020+68851 / 68030 branch of the buserr handler:
For these CPU's, you have to use the ptest operation to search the mmu
tables in order to decide whether it is a real bus error or just a
page fault or write protection violation.

Our old code assumed user space always when calling ptest, and
erroneously assumed the BUSERR bit in the ptest output (mmusr
register) is the only indication for bus errors to check.

In fact, we have to follow a multistage decision tree to decide. 68060
CPUs are much easier to handle correctly.
1996-06-13 19:12:25 +00:00
is 5af73f7ab0 Activate M68040 cache flushing code also in 68060 only kernels. 1996-06-10 16:11:20 +00:00
cgd 352d972c94 locc() is unused. Remove it from the machine-independent kernel interface. 1996-06-10 15:33:33 +00:00
veego 15088ebf44 Make this really work on the Domino. Patch from Klaus Burkert 1996-06-09 13:21:10 +00:00
is 623536ac6e Make this really really compile. 1996-06-08 15:42:00 +00:00
is f39d801ab0 Really compile and install keymap loader and binary keymaps. 1996-06-08 15:28:41 +00:00
mhitch c16e87c7b7 Add tty_attach() calls for pstat -t. Closes PR #2519 1996-06-06 04:47:31 +00:00
is 87e300e2dc Not needed anymore due to newer boot loader 1996-06-05 16:10:45 +00:00
is 7aaddee417 #define GRFIOCBLANK_LIVE and GRFIOCBLANK_DARK in grfioctl.h to make absolutely
clear which switches the video signal on and which off.
Make all grf_??.c (which supported it) use the same polarity of the test.
While being here, use a > test instead of implicit != to make it extensible
to darker than dark values for power managment systems.
1996-06-03 18:55:08 +00:00
is 1530e15480 Don't get fooled by the CyberSCSI MK I, which uses the same man/prod id
as the Fastlane Z3, but is different enough to let the kernel crash.
Closes PR #2492 by Matthias Scheler. [thanks also to Ralph Schmidt for
confirmation of the patch]
1996-06-03 17:07:20 +00:00
is 4c4c6e7b5f Pull INSTALL into the trunk. 1996-05-30 20:50:48 +00:00
mhitch 601c0013e0 Fix the third LBA extraction from a 6 byte SCSI command that I missed. 1996-05-30 03:15:07 +00:00
mhitch ab7b439a98 The logical block address in a 6 byte command is 21 bits, not 20.
Also a transfer length of 0 indicates 256 blocks.
1996-05-27 05:49:49 +00:00
is eafd041aca Fix few more places where 040+060 rlevant stuff was only compiled for 68040,
preventing 68060-only kernels to work. (68060 only kernel is tested now by
using it to commit this patch).
1996-05-25 21:54:22 +00:00
is 33d61f4da3 Show real interupt names (e.g., systat vmstat) on the DraCo. 1996-05-25 17:08:48 +00:00
is 25b2ef1b72 Yet another unused variable cleanup; noticed in a kernel without bpfilter. 1996-05-25 16:30:16 +00:00
is 4d0559ac27 Fix stupid pasto. 1996-05-25 15:23:52 +00:00
is 452b12520a Delete some occurences of kernel startup debug code, move others inside
#ifdef DEBUG_KERNEL_START.
1996-05-24 19:59:33 +00:00
is c978bf3f9f Make the GRFIOCBLANK ioctl set the right timing divisor when switching the
screen back on.
1996-05-24 19:26:12 +00:00
is 70d3595ab1 Fix two conditionals code parts, which were intended to avoid two
branches for pure-M68060 and Non-M68060 kernels, but would have made
the former never save its floating point context.
1996-05-21 18:22:13 +00:00
is 893de3dcc8 Sync with the cpu.h change: setconf() only used if defined(GENERIC). 1996-05-21 17:15:40 +00:00
veego 7212a830ea - grf_cl.c, grf_clreg.h: added support for Piccolo SD64
- grf_cv.c, grf_cvreg.h, ite_cv.c: some cleanups
- grf_rh.c, grf_rhreg.h, grf_rt.c: new blank ioctl and some KNF
- grf_et.c, grf_etreg.h, ite_et.c: new graphics driver for et4000 based board
                                   (oMniBus, Domino and Merlin)
- grfabs_cc: fix PR#2034
- grfvar.h: new grfunit for GRF_ET4000_UNIT
- scsidefs.h: no longer useful
- zbus.c: new entries for: Piccolo SD64, oMniBus, Domino and Merlin
1996-05-19 21:05:20 +00:00
veego f5faf322a0 GENERIC - added scsi scanner entry
- enable MS-DOS file system support
        - removed unsed GRF_CL5426 entry
        - added new graphics driver (grf6) for oMniBus, Domino and Merlin
1996-05-19 21:04:48 +00:00
veego 68bbcedb0c conf.c - added scsi scanner entry
pmap.c - -Wall fixes for MACHINE_NONCONTIG and M68040 || M68060
1996-05-19 21:04:18 +00:00
is 83f62ea033 Screenblank support:
- new fbio.h in arch/amiga/include, defining only FBIOSVIDEO
- add an IOCTL translation to arch/amiga/dev/grf.c
- add screenblank to the list of specials to build on amiga.
1996-05-19 20:06:02 +00:00
is 1a41d54c27 Yet some more cleanup for missing prototypes, if DRACO is supported. 1996-05-19 19:03:01 +00:00
is a7a99df915 Some more Prototypes needed for DraCo support. 1996-05-19 15:35:43 +00:00
is 40c19a2309 Add some forgotten #ifdef M68060 to make gcc -Wall happy. While I'm here,
add the _kernel_text symbol for libkvm.
1996-05-19 14:55:27 +00:00
veego 3a44d948a6 Another -Wall fix. 1996-05-19 09:13:56 +00:00
is 0ffd802ca1 Make "options DRACO" kernels boot on Amiga mainboards, too:
- don't change the _lev2intr and _lev6intr entry points in static code
- set the level 2, 5, 5 and 6 interrupt autovectors from initcpu() on DraCo.
1996-05-17 12:56:49 +00:00
is 16465b6509 merge. 1996-05-16 20:18:01 +00:00
is d0bd068b17 cleanup comment. 1996-05-16 17:52:22 +00:00
is ee807dac4c Correct a -Wall correction. 1996-05-16 17:50:25 +00:00
is eced298a2b - tell new version of assembler to still accept 851/030 opcodes when compiling
with -m68060
- add -Wall -Wstrict-prototypes
1996-05-16 17:07:08 +00:00
is 9546c59d96 Only declare setconf() #ifdef GENERIC. 1996-05-16 16:10:11 +00:00
is d5793c310d add DCIA prototype. 1996-05-16 16:02:15 +00:00
is 5b2b46b306 Fix for unused var warnings in compiler problem workaround. 1996-05-16 15:53:02 +00:00
is 317ba427c1 Now that we imported the 68060 software support package and committed the
glue code for it, activate this again.
1996-05-15 21:10:57 +00:00
thorpej e64215c6f4 Oops, I accidentally commented out the "le" attach directive. Thanks,
veego!
1996-05-12 16:17:19 +00:00
is 2a8a23a622 Disable .include of arch/m68k/060sp/Makefile.inc for now. 1996-05-12 13:36:02 +00:00
mhitch 70b7922d41 Use new format for dumpfile and include chip memory in dump.
Fix another -Wall warning (from '060 integration).
1996-05-12 04:10:15 +00:00
mhitch 8afe5318ba Used by the new libkvm and kernel coredump. 1996-05-12 02:47:46 +00:00
mhitch b3186217c2 Use dumpconf() to set dumplo instead of directly setting it. 1996-05-12 02:41:00 +00:00
mhitch 177ffe3ea4 Fix yet another -Wall warning. 1996-05-12 02:38:23 +00:00
mhitch caf4c8f158 Remove old-style disk instrumentation now that iostat, systat, and
vmstat are fixed.
1996-05-12 02:26:03 +00:00
mycroft 540f9550c0 Make `make depend' work for libraries. 1996-05-11 16:11:30 +00:00
is d6ea9eae71 Cleanup the mess I left when committing yestereve's changes; in this case,
an unused variable.
1996-05-10 15:36:05 +00:00
is e138ae4f38 Clean up the mess I left over from my yestereve's commit: partially unused
variables left over from color background debugging, partially wrong #ifdefs
making some variables unused in non-M68060 kernels.
1996-05-10 14:30:53 +00:00
is 93b32419b8 Back out last change, which was caused by a wrong way merge at home.
Sorry for the inconvenience.
1996-05-10 13:02:33 +00:00
mhitch 82b89f1181 Finally convert the pv_entry allocation to match the hp300 pmap.c.
This should reduce the possibility of a panic when unable to allocate
a new pv_entry under low memory conditions.
Changed a couple of kmem_free() calls to kmem_free_wakeup() as in the
hp300 pmap.c.
-Wall cleanup: unused variable when M68060 not defined.
1996-05-10 01:47:45 +00:00
is f6ab1073c8 First part of M68060 and DraCo support.
* for the M68060 part: store buffer and branch target cache aren't
  enabled yet (this needs cleanup of lots of locore.s code which is a
  maze of little passages, all a little different) (and it wasn't yet
  tested in an accellerated Amiga, only in the DraCo).

  I've included a workaround for 2 of the CPU bugs in chips with Masks
  1F43G and earlier, but didn't bother to deal with the can of worms
  in the [0-3]D11W chips. Be sure to get "68060 rev. 1" or more
  reported at kernel startup time, or at least mention it (or the mask
  revision, if available) when reporting problems.

* for the DraCo: only machines with a CIA timer.

  I assigned machine id 32000+nn (0x7Dnn), where n is the machine
  readable Quicklogic custom chip revision (also printed at boot
  time).  "Guaranteed to work" up to rev. 3, newer DraCo's aren't
  guaranteed to have any CIA (we don't have a driver for the new timer
  yet).

  Supported are:

  - MF-II keyboards on the native interface and A3000 keyboards via
    the CIA.
  - builtin SCSI interface (yet another instance of siop)
  - CIA timer.
  - Zorro II devices which don't do DMA (don't get mapped to Zorro II
    address space in the DraCo)
  - "local bus" devices which are autoconfigured by the boot rom
    (should be all); only an Altais driver is there (looks like a Retina Z3)

  Not yet supported are:

  - native timer of newer machines.
  - Real Time Clock.
  - serial, parallel + floppy on the SuperIO chip (that is also: no mouse)

  XXX You need an enhanced boot loader, which will committed in a few days.

  XXX std.draco should and will go away.
1996-05-09 20:30:30 +00:00
thorpej 748810b06d Changed struct ifnet to have a pointer to the softc of the underlying
device and a printable "external name" (name + unit number), thus eliminating
if_name and if_unit.  Updated interface to (*if_watchdog)() and (*if_start)()
to take a struct ifnet *, rather than a unit number.
1996-05-07 00:46:37 +00:00
thorpej 17033bca9c Make the MI LANCE driver standalone, and use cfattach to resolve
naming conflicts between bus attachments on ports that can have
multiple instances of the LANCE.

Changed struct ifnet to have a pointer to the softc of the underlying
device and a printable "external name" (name + unit number), thus eliminating
if_name and if_unit.  Updated interface to (*if_watchdog)() and (*if_start)()
to take a struct ifnet *, rather than a unit number.
1996-05-07 00:35:07 +00:00
thorpej c98492db67 Make the MI LANCE driver standalone, and use cfattach to resolve
naming conflicts between bus attachments on ports that can have
multiple instances of the LANCE.
1996-05-07 00:34:17 +00:00
veego 1e69d1d283 Make this compile. Fixes PR#2047 1996-05-05 22:25:00 +00:00
veego ba1ef888e9 removed the define for cdev_ss_init 1996-05-05 16:17:27 +00:00
mhitch c871eb1ec2 Floppy driver now supports MSDOS track format. Minor device 1 (/dev/fd?b)
uses MSDOS MFM track encoding.  From Ezra Story (ezy@panix.com) with
a couple of changes by me.
1996-05-04 04:54:00 +00:00
mhitch d4339afe48 Startup modified to work with kernel loaded directly into fast memory.
This removes the need to have enough chip memory to load the kernel
when booting.  Kernel memory is dual-mapped (VA == 0 and VA == PA)
for enabling the MMU, and the VA == PA mapping removed after start_c()
has completed.  Chip memory is still required for the /dev/reload
process.
1996-05-04 04:45:18 +00:00
mhitch 0f07d81f63 Add floppy index interrupt processing.
Startup modified to work with kernel loaded directly into fast memory.
This removes the need to have enough chip memory to load the kernel
when booting.  Kernel memory is dual-mapped (VA == 0 and VA == PA)
for enabling the MMU, and the VA == PA mapping removed after start_c()
has completed.  Chip memory is still required for the /dev/reload
process.
1996-05-04 04:43:23 +00:00
mhitch 3c4859d5d8 Add support for loading kernel into fastmem, if the kernel also supports
loading into fastmem.  This removes the requirement that the kernel fit
into chipmem.
Add a -Z flag to force loading into chip memory.
Add a -s option for compatibility with my bootblock loader.
Move the test exit to just before starting the kernel;  this lets the
test mode actually load the kernel and do the version checks.
1996-05-04 01:23:37 +00:00
mhitch 5895a434e4 Missed a prototype for kernel_reload(). 1996-05-02 19:34:27 +00:00
mhitch 84974b0849 Add a check in the kernel reload device (/dev/reload) to protect
against the MMU switch code being in different locations between
the running kernel and the new kernel.  Returns ENODEV if the reload
fails.
Change the error return from EFAULT to ENOEXEC when kernel_reload
gets a short write on the exec header.
1996-05-02 02:08:22 +00:00
mhitch bcb9d27216 More cleanup for -Wall with DEBUG. 1996-05-01 16:58:41 +00:00
mhitch b1d1cbe84b Define BSR_MASK and use BSR_MASK to get the current bank select register.
Clean up the debugging code a bit and the warnings from -Wall.
Don't define ESDEBUG - it can now be set from the config file.

If the Ethernet chip gets reset during the copy of the transmit buffer,
requeue the current packet and reinitialize the controller.  This recovers
from an apparent hardware bug when running on my A2000/Zeus system.
1996-05-01 15:55:28 +00:00
mhitch bb91ff2547 Define BSR_MASK and use BSR_MASK to get the current bank select register. 1996-05-01 15:51:08 +00:00
veego b03bb4a6e5 Cleanup for -Wall if CV64CONSOLE, ULOWELLCONSOLE or RETINACONSOLE is not
defined.
1996-05-01 09:59:24 +00:00
veego 03088f61b8 <sys/cpu.h> is no longer needed 1996-05-01 09:56:22 +00:00
is af547471fe Give example for INSECURE option in the GENERIC config file in a comment.
Closes PR 2355 giving a different explanation of the option than proposed.
1996-04-30 17:40:34 +00:00
is 068f1fb582 We really have two mouse port units, honestly. 1996-04-30 17:25:42 +00:00
mhitch bcd490a50d Remove include of sys/cpu.h. 1996-04-30 06:09:51 +00:00
mhitch 1f2555ebd4 dk_establish() now returns void. 1996-04-30 05:00:51 +00:00
mhitch 74de027054 Add floppy index interrupt routine for future MSDOS floppy support.
Don't seek to track 0 before checking for diskchange:  if drive steps,
the diskchange flag is cleared.  Just select the drive, then test for
a diskchange.
Clean up for -Wall with FDDEBUG defined, and fix a message typo.
1996-04-29 06:23:47 +00:00