Commit Graph

388 Commits

Author SHA1 Message Date
cgd 9241c534de if OLD_PMAP defined, pull in <machine/pmap.old.h> and ignore the other
contents of this file.
1996-07-02 22:22:20 +00:00
cgd e8fab58348 allocate a flat 10% of memory to buffer pages. 1996-06-15 03:55:17 +00:00
cgd 55651c941b punt on the grep and do all the file selection in find. don't try
to build kernels from files with '.' anywhere in their names.
1996-06-15 03:45:02 +00:00
cgd 1beca2d96b add a new machine-dependent sysctl, machdep.root_device, which is the
(string) name of the root device.  It's a string so that it can
be used before dev_mkdb has been run.
1996-06-14 20:40:46 +00:00
cgd 5c5c2d1804 add a delay before serial console is initialized, to allow any
outstanding PROM output to drain.  Move the console-type printfs
so that they're only printed if console selection fails.
1996-06-14 20:38:11 +00:00
cgd ef8b4f596a clean up entry printf 1996-06-14 20:04:45 +00:00
cgd 643339aa90 Don't pass arguments to the kernel, trim unnecessary environment
calls, kill 'ask' loop (i.e. if boot fails, halt), seperate
ECOFF and a.out support into seperate options.
1996-06-14 20:02:52 +00:00
cgd 1a6ddd64d7 cpu_model must be an array to make sysctl be happy. 1996-06-13 23:16:43 +00:00
cgd 0729742246 fix error in 'swap generic' nfs root picking code (a case that can never
currently happen) which forgot to set rood device correctly.
1996-06-13 23:10:37 +00:00
cgd 49c6ac313f update readme files for present reality. 1996-06-13 20:36:04 +00:00
cgd 53a97a8870 get rid of now-unnecessary kernel config files (now that swap generic
works) for my machines and now-nonexistent test machines.  Clean up
options in existing config files so that they're more consistent.  Add
more units of various pseudo-devices to several.
1996-06-13 19:18:16 +00:00
cgd 386aeb320f clean up copyright notices 1996-06-13 18:31:49 +00:00
cgd d97900c6f4 boot device autodetection, using PROM's boot device environment variable.
This is a bit of a hack, as-is, since there's a lot of code that's
outright duplicated between the various files and because it doesn't
support detection of a network device as the root device.  The
latter's not a problem yet, because NetBSD/Alpha can't load the kernel
from the network to begin with.
1996-06-13 04:53:47 +00:00
cgd 3a7c6bd270 note that the DEC 21000 isn't supported in the same way as for the 2000/300 1996-06-13 00:28:59 +00:00
cgd b26a6f1d3d We'd like to differentiate case for kernel boot flags, but the Alpha AXP
Architecture Reference Manual says that we shouldn't.  'a' is now back
to ~RB_SINGLE, and 'n' and 'N' now get RB_ASKNAME.
1996-06-13 00:24:52 +00:00
cgd a59ba05045 don't pass "argc," "argv," and "envp" from boot blocks to kernel;
they're unnecessary and there's no reason to use them.  Have the
kernel get necessary values from the PROM directly.
1996-06-12 22:11:28 +00:00
cgd 3b3f71fb25 don't pass the firmware's console environment variable to the various console
initialization functions any more.  None of them used it, and they can
get the same data more easily via the RPB.
1996-06-12 22:06:40 +00:00
cgd f6d4b1367d null-terminate strings returned by prom_getenv() 1996-06-12 21:59:52 +00:00
cgd 5006cfa9ac remove old, unused, framework for boot device detection. It's going
to be replaced by something new and working.
1996-06-12 19:00:17 +00:00
cgd eef7b263f1 remove GENERIC_NFS, because:
(1) right now GENERIC can boot via NFS, and
	(2) in the long run, GENERIC should autodetect network booting
	    and pick the correct root device.
Because of (1), GENERIC_NFS is no longer _needed_ in the short term.
Because of (2), GENERIC_NFS is not _wanted_ in the long term.
1996-06-12 02:00:10 +00:00
cgd 811bbb5c72 rework setroot() and friends, largely by cloning from the sparc code
and whacking a bit here and there where appropriate.  Does not yet do
automatic root device detection, but that's much easier to add now.
RB_ASKNAME now supports specification of network devices, for diskless
booting.  Also, RB_ASKNAME is now supported on _all_ kernels.
1996-06-12 01:57:17 +00:00
cgd ba53a90965 add example 'config' specs for 'root on sd0...' and 'root nfs...' 1996-06-12 01:44:31 +00:00
cgd 698dd157cf remove "options GENERIC" since it's not needed with new setroot() code for
GENERIC kernels, and since it no longer has any other special meaning.
1996-06-12 01:42:46 +00:00
cgd 9d614a5f3f GENERIC no longer has any special meaning (don't set RB_ASKNAME #ifdef GENERIC) 1996-06-12 01:38:09 +00:00
cgd 5109def361 change the meanings of some boot flags:
a (was ~RB_SINGLE, redundant with 'A') -> askname
n (was RB_ASKNAME) -> no meaning
d (was RB_DFLTROOT) -> no meaning (unnecessary with new setroot() code)
m (was RB_MINIROOT) -> no meaning (miniroots currently unsupported;
    #ifdef'd out)
N (was ~RB_ASKNAME) -> no meaning (unnecessary; just don't specify RB_ASKNAME!)
1996-06-12 01:36:01 +00:00
cgd 4a4d4dfc26 copy from sparc port, trim bogus swdevt entries 1996-06-12 01:26:37 +00:00
thorpej 87a6b74c89 Sync up with my local tree:
- add union filesystem
	- add DEFTA device
1996-06-11 23:24:02 +00:00
cgd f4e69ce47d fix pasto in last commit. 1996-06-11 21:28:31 +00:00
cgd 2d9140fb20 add definitions and code to support use of multiple I/O and _dense_
memory regions.
1996-06-11 21:25:25 +00:00
cgd bbdf2df9b0 since bus_mem_subregion() can return failure, don't even bother to try
to handle the case where subregion offset isn't a multiple of 8.
1996-06-11 21:20:08 +00:00
cgd d714189d53 implement bus_mem_subregion() and bus_io_subregion(). 1996-06-11 21:16:21 +00:00
cgd 9aa03f4dd9 update for changed definitions in ciareg.h 1996-06-10 00:04:53 +00:00
cgd 2465bd00e5 store HAE_MEM and HAE_IO register contents in the cia configuration
structure, and add prototypes for the bus_{mem,io}_init() functions.
1996-06-10 00:03:59 +00:00
cgd 55cbf94f22 read value of HAE_MEM and HAE_IO, so that the bus_* functions can
do window recognition correctly.
1996-06-10 00:02:31 +00:00
cgd 9198817ce3 update for new memory window handling in pcs_bus_mem_common.c. 1996-06-10 00:01:09 +00:00
cgd c247b24843 add definitions used to figure out how PCI/EISA/ISA memory regions are
mapped.
1996-06-09 23:59:38 +00:00
cgd df2ba1e245 add support for mapping multiple memory windows. This is necessary
for mapping ISA/EISA 'hole' memory on the AlphaStation 600.
1996-06-09 23:57:45 +00:00
cgd 8df74fa62a wrap __STRING() in a #define so that its argument, which must be
expanded by the preprocessor, will be.  Problem pointed out by Matt
Thomas.
1996-06-09 23:49:24 +00:00
cgd ebe3a58f01 pull down changes from NetBSD 1.2 release branch:
>Update for present reality (function names), clean up a bit (printfs,
>"panic: foo XXX"), and fix a couple of printf format specified bugs
>(which were normally #if 0'd out).  Inspired by Multia/UDB support
>changes sent by Matt Thomas.
and:
>changes from Matt Thomas so that the Multia/UDB can attach its
>'com' interrupts, cleaned up some.  Basically: if sharing type of
>new interrupt is different than what the hardware is currently set up
>for (e.g. requesting edge-triggered and the hardware is set up by
>the PROM for level triggered) and there are no interrupt handlers on
>that line already, warn about it and use the hardware type that the
>line was already set for (to avoid making the console blow up on
>reboot).  If same circumstances but there is already a handler, panic
>as before.
1996-06-05 22:52:34 +00:00
cgd 37ec86f0cc avoid lots of upper-case letters in interrupt names. prettier that way. 1996-06-05 03:38:02 +00:00
cgd 56db5baced print slot number as decimal, not hex 1996-06-05 01:32:00 +00:00
cgd 666c7f6fd4 interrupt counters for TurboChannel systems. 1996-06-05 00:30:48 +00:00
cgd 2d03e599c7 don't depend on being able to read the IMR. Apparently, it doesn't
work (as documented in the DEC 3000/[3-9]00 System Programmer's Manual)
in some of the older 3000/500 systems.
1996-06-04 19:02:16 +00:00
cgd c6dd609e7f gross hack to get around the fact that there are currently devices with
common back-ends that live on multiple very-different busses (e.g. PCI and
TC), which need bus-specific DMA mapping support.  As a nice side effect,
this will allow the especially nasty (vtophys(va) | 0x40000000) expressions
to go away in favor of less nasty bus-specific function calls.
1996-06-03 20:18:48 +00:00
cgd e038a84b34 add "le* at pci?", because it compiles and may actually work. 1996-06-03 20:10:52 +00:00
cgd 729d7a8aa8 only do tty_attach() for first tty of each chip; that's the only real tty. 1996-06-03 19:43:31 +00:00
cgd afe080291e fix pasto: s/NETISR_CCITT/NETISR_PPP/ at the appropriate place in
netintr().  From Matt Thomas <matt@lkg.dec.com>.
1996-06-03 18:32:37 +00:00
cgd 99a50a5e0d now that the bug has been fixed, we can go back to using the
Alpha-optimized in_cksum().
1996-05-30 23:18:14 +00:00
cgd ea82d613ab Fix from Matt Thomas to fix problem where packets like
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01 would be checksummed
incorrectly: rather than adding two 32-bit quantities together to
sum a quadword (which was losing a carry bit), add as four 16-bit
quantities.
1996-05-30 23:08:36 +00:00
cgd 6e6fc14f32 add tty_attach() calls where appropriate 1996-05-30 18:44:30 +00:00
cgd f7dcef06d4 add missing splx(). From Jason Thorpe 1996-05-29 22:24:47 +00:00
cgd 48652c763f fix UMAPFS entry, add entry for UNION 1996-05-23 23:29:10 +00:00
cgd 82dd8bf609 disable alpha-specific in_cksum.c; it seems slightly buggy 1996-05-23 23:27:25 +00:00
cgd 5e29c383e2 add wbflush() calls in strategic places. These really shouldn't be
here, and there should be a generic 'bus' interface to do memory
read/write barriers.
1996-05-20 03:14:07 +00:00
cgd 397617080d add 'pseudo-device strip' for Metricom Ricochet packet radio driver
recently kicked in by Jonathan Stone.  It compiles on the alpha, and
may even work.
1996-05-20 02:58:53 +00:00
cgd daad29a36c add fta, fpa, and fea drivers, for DEC TC, PCI, and EISA FDDI controllers. 1996-05-20 01:37:18 +00:00
cgd 17bc20b5a4 minor cleanups, mostly KNF. 1996-05-19 21:41:00 +00:00
cgd 260dba439d Tuned in_cksum() from Matt Thomas <matt@3am-software.com>. According
to him, this implementation is approximately 50% faster than the
machine-independent portable version.
1996-05-19 21:24:14 +00:00
cgd 6f5bee3001 add -O2 to the optimization flags. A reason why optimization seemed
to fail on some systems was never found; hopefully it's gone away (or
was never really there).
1996-05-19 21:16:51 +00:00
cgd 4145f89f54 TurboChannel bus_mem_* functions. bus_mem_{read,write}_8, and
bus_mem_read_{1,2} are not yet supported for sparse space.
1996-05-18 00:00:51 +00:00
cgd 0307c36933 bus_io_* functions. These have no meaning on the TurboChannel, since
it's a memory-mapped bus and has no I/O space.  They all are
fancy wrappers around panic().
1996-05-17 23:59:31 +00:00
cgd 84b37ec80d set up a bus_chpiset_tag_t, and pass it to the TC code 1996-05-17 23:58:43 +00:00
cgd e49dcae424 add files for the implementation of the TC 'bus' mem & I/O functions 1996-05-17 23:44:02 +00:00
cgd a78f16f702 moved to ../tc 1996-05-17 23:41:36 +00:00
cgd eda3fcd053 fix declaration of main() 1996-05-17 18:29:41 +00:00
cgd 93bc248f7c add 'kernel_text' symbol, for use by kvm_mkdb 1996-05-16 22:54:30 +00:00
mycroft 540f9550c0 Make `make depend' work for libraries. 1996-05-11 16:11:30 +00:00
cgd 3393d0e53b a few more minor ecoff-header-related tweaks. 1996-05-10 00:15:04 +00:00
cgd 56017a3c1e update to include <sys/exec_ecoff.h>, rather than the alpha-specific
(and redundant) coff.h file (which has now been removed).
1996-05-09 23:54:07 +00:00
cgd 491ab6c2ed remove redundant header, now that ECOFF_SEGMENT_ALIGNMENT macro for
<sys/exec_ecoff.h> is fixed.
1996-05-09 23:52:19 +00:00
cgd d5b0482bb9 update for changed ecoff headers. minor consistency changes for the
ecoff functions, as well.
1996-05-09 23:48:47 +00:00
cgd 2daf9d8f3b change structure member names to be in line with what various ECOFF
documentation I have calls them, and update for new definitions in
sys/exec_ecoff.h.  Also, fix ECOFF_SEGMENT_ALIGNMENT macro so that it
actually returns the right alignment.
1996-05-09 23:47:25 +00:00
thorpej fe64460341 *** empty log message *** 1996-05-07 00:33:35 +00:00
thorpej f857b38b11 Don't attempt to map the `delay port' (0x84). It's mapped and exported
by the ISA bus attach code.
1996-05-05 01:41:53 +00:00
cgd 7c1754fdff add a bit of clarafication in a comment, and change the interrupt
handling code so that if a given interrupt is disabled (and therefore
can't have caused the actual I/O interrupt), its handler won't be
called even if its bit is set in the interrupt register.
1996-05-02 21:56:46 +00:00
cgd b97609d17d the kernel config file for my 3000/300LX. 1996-05-01 23:32:45 +00:00
cgd 49c46e1789 Preliminary CFB support. Does not work as machine's console (for two
reasons: it won't attach as console, and there's currently no way to do
keyboard input on TC machines), and has no real RAMDAC (colormap, cursor,
etc.) support.  Digital UNIX does not support CFB frame buffers in the
Alpha, but they appear to work OK (with an appropriate monitor) in my
3000/300.
1996-05-01 23:25:00 +00:00
cgd 1668855fc5 add support for PMAG-B Color Frame Buffer (CFB) option boards. OSF/1
doesn't support these, but they appear to work OK (with an appropriate
monitor) in my 3000/300.
1996-05-01 23:22:16 +00:00
cgd cb0eb158e7 fix the test for option slot interrupts. If a given interrupt is
disabled (and therefore can't have caused the actual I/O interrupt),
don't try to call its handler even if its bit is set in the interrupt
register.
1996-05-01 23:19:50 +00:00
cgd b65a5bbdfc preliminary SFB support. Does not work as machine's console (for two
reasons: it won't attach as console, and there's currently no way to do
keyboard input on TC machines), and has no real RAMDAC (colormap,
cursor, etc.) support.
1996-05-01 21:15:46 +00:00
cgd a449bdaea1 add sfb at tc, wscons at sfb 1996-05-01 20:33:17 +00:00
cgd 69ecf2f7f4 add the right (raster, wsconsdev) attributes to sfb 1996-05-01 20:26:39 +00:00
cgd 8199dee1d8 add SFB at tc, wcsons at sfb, and fix up le declarations 1996-05-01 20:23:04 +00:00
cgd 85d72d56a2 add an entry for the SFB+, and clean up entries some 1996-05-01 19:44:21 +00:00
cgd 4335844690 fix botched printf spacing in last change. 1996-04-29 16:36:19 +00:00
cgd 6deeeb8a0f update for dk_establish() proto change 1996-04-29 16:34:50 +00:00
cgd b2ab71db24 fix definition of the "Primary Eligible" RPB PCS processor variation field. 1996-04-29 16:23:09 +00:00
cgd 5e0ec7280a clear BIP; it should really happen at end of autoconfiguration. 1996-04-29 16:09:28 +00:00
cgd f22c1ccb83 clean up setting of the default tty cflag. don't do the "delay if
high bit set" thing.
1996-04-29 14:48:25 +00:00
thorpej 34c1e309b6 Yes, folks, there was a REASON that maxusers -> 32 slipped through the
cracks when I mentioned it to Chris.  (Read: it doesn't work.)
1996-04-26 18:54:15 +00:00
thorpej 2931555121 Correction I mentioned to Chris that slipped through the cracks...
maxusers -> 32.
1996-04-26 00:53:08 +00:00
cgd 72e70ce045 update for present reality 1996-04-25 04:28:04 +00:00
cgd 3e07e4275a clean up and improve instructions, update to reflect current reality. 1996-04-25 00:11:09 +00:00
cgd 7bc9a18250 prototyping cleanups 1996-04-23 15:26:06 +00:00
cgd 58a104f26a pal_halt doesn't return; give it a noreturn attribute.
Mark assembly that uses 'mb' as clobbering memory (pthreads does, and
it can't hurt).
1996-04-23 15:24:09 +00:00
cgd 5437babf6c prom_halt doesn't return; give it a noreturn attribute 1996-04-23 15:23:18 +00:00
cgd 59cdf4331e clean up some, and use new sioreg.h 1996-04-23 14:15:55 +00:00
cgd 8253c155fe hanges from Trevor Mendez <tmendez@bbn.com> to use new sioreg.h
header.  Also, I moved the LCA_SIO_DEVICE definition higher up in the
file.
1996-04-23 14:15:28 +00:00
cgd 84da7b5f97 Intel 82378 System I/O (SIO) Chip register defintions, cleaned up a
bit from a version supplied by Trevor Mendez <tmendez@bbn.com>.
1996-04-23 14:10:53 +00:00
cgd e9bbf69ff6 Changes from Trevor Mendez <tmendez@bbn.com> to add definitions of a
couple of registers useful for debugging.
1996-04-23 14:03:46 +00:00