Commit Graph

891 Commits

Author SHA1 Message Date
cgd d9eb899be8 add the PPP_FILTER option 1997-03-23 00:48:37 +00:00
cgd a823d31f7e fix check for bus number when root dev is behind PPB 1997-03-21 01:26:08 +00:00
cgd 26c8aefcc3 clean up CPU specs a bit. Add entries for the jensen and eb64+ (commented
out since they're not currently supported, but the options are 'known').
Add 'se' Cabletron SCSI Ethernet driver.
1997-03-21 01:12:40 +00:00
cgd f0833f24f4 clean up CPU specs a bit. Add entries for the jensen and eb64+ (commented
out since they're not currently supported, but the options are 'known').
1997-03-21 01:12:21 +00:00
cgd 2d3755c5ba files file entry for eb64+ 1997-03-21 01:09:02 +00:00
cgd c944e200eb fix up new-arp goofups 1997-03-18 07:27:58 +00:00
cgd 23c15240b8 pull in se.h 1997-03-18 05:19:39 +00:00
cgd d608b0956d add cdevsw entry for 'se' 1997-03-18 04:52:12 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
cgd 4f210d58be patch from Matt Jacob to enable secondary PCI bus support 1997-03-15 03:15:20 +00:00
cgd 80bf6049dd fix from Matt Jacob: configuration accesses need PCI Byte enables just
like sparse memory accesses do.
1997-03-13 23:59:36 +00:00
cgd 85068c2512 add ahc and bha at EISA 1997-03-13 01:15:52 +00:00
cgd 13a313fd8d add entries for ahc and bha PCI devices. clean up some 1997-03-13 00:43:37 +00:00
cgd 2330e40bc9 enable Matt Jacob's ISP 10x0 driver, now that it's in the source tree. 1997-03-12 21:50:15 +00:00
cgd 8c689e6477 Copyright notice consistency, per Matthew Jacob. 1997-03-12 21:09:43 +00:00
cgd 0daaaa0fc2 add kn8ae CPU support to GENERIC kernels. Also, add kn8ae devices.
Add "isp", "ahc", and "bha" config lines, but comment them out until
their sources are in the tree and/or their alpha patches are in the tree.
1997-03-12 19:29:14 +00:00
cgd ffba332bb5 AlphaServer 8200 & 8400 support, including CPU specific details, TurboLaser
system bus support, and KFTxx support.  From Matthew Jacob, NASA Ames
Research Center.
1997-03-12 19:19:54 +00:00
cgd 265be6d839 enabled SQWE as well as PIE in reg B. 1997-03-12 19:13:20 +00:00
cgd 28152db63a don't assume that CPU ID is same as device unit number (DUH!), add some
comments about future work to be done.  make a mostly-extraneous set of
printfs (cpu capabilities) become #ifdef DEBUG.
1997-03-12 05:50:00 +00:00
cgd 245b65b853 pass CPU ID info down to cpu when attaching (duh!) 1997-03-12 05:47:37 +00:00
cgd 0a500fffa0 update to allow PCI bus interfaces that wish to allocate static
extent storage per interface unit (e.g. dwlpx, where there can be multiple
units per machine) to do so.  Inspired by discussion with and changes from
Matt Jacob.
1997-03-12 05:24:23 +00:00
cgd 55f902601c Set the halt flags in the right per-cpu-slot structure. From Matt Jacob. 1997-03-12 04:45:41 +00:00
cgd adad00a33a sanity check rpb_primary_cpu_id 1997-03-12 04:42:22 +00:00
cgd e4307285ba from Matt Jacob: deal with type 5 (passive release?) interrupts. (ignore them
but print out their vector(?) to see if we can ever discern anything useful
from it.)  Also, some slight general cleanup.
1997-03-12 04:22:30 +00:00
cgd 9a36b46f7a tlsb bus and device file specs, s/21000/kn8ae. From Matt Jacob. 1997-03-12 01:54:23 +00:00
cgd 7e33512f13 fix up kn8ae/DEC_21000 entry 1997-03-12 01:47:46 +00:00
cgd 8efa66858c fix problem compiling if neither PCI VGA nor TGA frame buffers were
configured.  Pointed out by Matt Jacob.
1997-03-08 19:25:49 +00:00
jonathan 6ed95c4eb8 Protect MCLSHIFT definition so users can customize MCLBYTES. 1997-02-27 03:52:17 +00:00
thorpej 4042a48848 Update for new 53c9x driver. 1997-02-27 01:27:54 +00:00
thorpej dea68fb2a1 s/esp/asc/g 1997-02-27 01:21:41 +00:00
thorpej 0017cafe69 s/esp/asc/g, and make it carry the ncr53c9x attribute. 1997-02-27 01:20:53 +00:00
thorpej 2c223871dd Add a front-end for the MI 53c9x driver, called "asc", which is the
name used by Digital UNIX (formerly DEC OSF/1).
1997-02-27 01:19:40 +00:00
thorpej 4878198b5c Remove this driver; it is now obsolete. 1997-02-27 01:17:56 +00:00
cgd b2d1fe0537 update for current reality. Needs a lot of work. 1997-02-25 03:17:20 +00:00
cgd 0959d79d86 kill this 1997-02-25 03:16:57 +00:00
fvdl 115b6d92fa Define ALIGNED_POINTER 1997-02-24 23:16:53 +00:00
leo 298aecde5a Force root to be on the ram-disk. 1997-02-24 12:23:33 +00:00
cgd 3192bd314f turn Alpha's ELF_TOOLCHAIN checks to ECOFF_TOOLCHAIN checks 1997-02-23 20:42:24 +00:00
cgd 90466a7b42 protect against multiple inclusion, make HEAP_LIMIT define libsa-specific 1997-02-16 21:27:06 +00:00
cgd 9277910d32 kill wdc/wd, which accidentally crept in in the last commit 1997-02-08 01:06:58 +00:00
gwr ea3925f508 FIXUP_PC_AFTER_BREAK now takes an arg of type db_regs_t * 1997-02-06 21:16:28 +00:00
perry 19d153fc48 Nuke some options GENERIC residue. 1997-02-04 04:57:10 +00:00
perry 0b3a46d6b3 Nuke some GENERIC residue. 1997-02-04 04:31:55 +00:00
cgd ae8e8e7f6b print warnings about unrecognized boot flags. accept S/s as recognized,
even though they're redundant.
1997-02-03 20:02:02 +00:00
cgd e09497929c clean up a bit, add kernel setjmp and longjmp definitions. 1997-02-03 19:50:23 +00:00
cgd b9910b1c1f clean up a bit, add bad144-handling code 1997-02-03 19:48:04 +00:00
cgd ca0809980e add fd and wd to alpha_nam2blk 1997-02-03 19:46:55 +00:00
cgd 778552d37c add bad sector information to cpu disklabel 1997-02-03 19:46:07 +00:00
cgd 95963edf4f add KMEMSTATS to ALPHA, clean up ports diagnostic/debug options 1997-01-31 18:00:33 +00:00
thorpej 7edaeb36ce Oops, remove straggler NFSCLIENT. 1997-01-31 05:20:06 +00:00
thorpej 739f23a219 This file is obsolete; this information is now generated by config(8). 1997-01-31 05:12:49 +00:00
cgd d3f790f3d0 add 'major' declaration for wd 1997-01-31 02:49:57 +00:00
cgd 3603b076e1 add major and minor numbers for 'wd', slight clean 1997-01-31 02:49:35 +00:00
thorpej aea810c379 Adopt for new file system and root spec grammar. 1997-01-31 01:42:34 +00:00
thorpej 4e686aa6ae Don't locally declare root_device; it's not used in the MI kernel. 1997-01-31 01:41:37 +00:00
thorpej d5257c641b Use the new machine-independent setroot() 1997-01-31 01:40:40 +00:00
cgd 00c2c62911 use strerror() to print errors, rather than just printing error numbers 1997-01-25 01:06:30 +00:00
cgd e48fd73808 astpending and want_resched are kernel-only 1997-01-24 06:38:37 +00:00
cgd 21ad990583 reorganize Alpha boot block sources: put common sources in a 'common'
directory (so they don't clutter up the arch/alpha/stand), and put
not-common sources in programs' directories.
1997-01-24 01:52:35 +00:00
cgd ce93ba490a kill unnecessary newline 1997-01-24 01:46:46 +00:00
cgd ac467d58e8 Set LOADADDRESS makeoption so that these kernels can be net-booted.
This is a waste of memory, but is useful in GENERIC kernels.
1997-01-23 23:21:40 +00:00
cgd 1fca013b1e add support for reading gzipped kernels. 1997-01-23 23:10:34 +00:00
cgd da19248f54 actually, include a file for fd/fdc, so that the flag file gets generated. 1997-01-23 22:50:52 +00:00
cgd 67df040efd update for new kernel library Makefile.inc rules 1997-01-23 22:47:31 +00:00
cgd 1c88f56c26 update for new kernel library build process 1997-01-23 22:31:32 +00:00
cgd e5e4a07022 define names for the ISA floppy disk controller/drives, even though they
aren't supported yet.  (conf.c needs a header for them, since i already
added their device switch table entries.)
1997-01-21 23:45:54 +00:00
cgd 4a81474aaf make load address settable via LOADADDRESS make option 1997-01-21 23:37:10 +00:00
thorpej 0eee378a26 "md" driver declared in sys/conf/files now. 1997-01-21 09:37:17 +00:00
cgd 7878fdb4f2 add a manual page for setnetbootinfo 1997-01-20 22:31:09 +00:00
cgd 58cde8b551 update date to date of last real modification 1997-01-20 20:37:09 +00:00
cgd 0512081ce4 bump version 1997-01-18 01:59:32 +00:00
cgd d3bfc848a9 if a file name is given (i.e. BOOTED_FILE) is set, boot only that file,
but if not then try to boot "netbsd", "netbsd.bak", "netbsd.old", and
"onetbsd" (in that order) until one is found or until the list of names
is exhausted.
1997-01-18 01:58:32 +00:00
cgd 6d5dc4aba9 kill bogux printf 1997-01-18 01:56:09 +00:00
cgd b9b13b5fb1 add cd9660 file system ops to the file system ops table 1997-01-18 01:51:58 +00:00
cgd f6409bfad4 printfs newline cosmetics 1997-01-18 01:49:29 +00:00
cgd d5260695b3 move an 'int debug;' into boot.c (it was the only diff between boot.c and
netboot.c), and nuke netboot.c (using boot.c instead for network boot blocks).
1997-01-18 00:59:46 +00:00
cgd d3f4f54676 program to hard code an ethernet address into a network boot. 1997-01-18 00:50:29 +00:00
cgd d1c39ec928 note that enet address can be hard-coded 1997-01-18 00:37:13 +00:00
cgd ad56529a58 make 'make depend' not fall over here. it doesn't work right, either, though. 1997-01-18 00:35:23 +00:00
cgd b1369cb79d add setnetbootinfo to list of subdirs 1997-01-18 00:34:39 +00:00
cgd e2bd92c0e6 allow netboot ethernet address to be hard-coded into binary so that
machines with old firmware which doesn't pass it in the boot device
can work.  Assume that if the ethernet address isn't passed in, it
uses the old (dain-bramaged) 'read' interface works on my 3000/300LX.
1997-01-18 00:34:01 +00:00
cgd abcd6f59bf remove a kludge which was breaking multiple opens/closes of the disk 1997-01-18 00:31:48 +00:00
cgd b6d17629c1 update for bbinfo padding changes 1997-01-18 00:28:59 +00:00
cgd 7db6ff8449 move the sync() calls to the correct place... 1997-01-18 00:27:50 +00:00
cgd 8523a4deff add padding to structures for future expansion. add a netbbinfo
structure to allow netboot information to be hard-coded in network
boot blocks, so that they can be made to work even on systems with
firmware which doesn't support the new "ethernet address in boot device"
convention.
1997-01-18 00:24:15 +00:00
cgd 7e7bb6e04d clean up a bit. include libraries more carefully, so that when compressed
read code is integrated into libsa things will work properly.
1997-01-17 21:14:31 +00:00
cgd 71db072b94 update copyright 1997-01-16 20:41:54 +00:00
cgd 1a2b5aa691 clean up, deal with secondary bootstrap programs not on 'a' partition
'a' partition not starting at 0.
1997-01-16 20:40:05 +00:00
cgd 274cf3fbf9 move the secondary bootstrap down (to 0x20004000), and add a HEAP_LIMIT
so that we don't exhaust our bootstrap address space (when using the new,
not yet checked in, memory allocator).
1997-01-16 07:50:34 +00:00
cgd cfe73ab59b clean up 1997-01-16 03:00:22 +00:00
cgd 3fb0a713f5 seriously clean up makefiles. use libsa/libkern/libz as appropriate,
and don't build the various sources into objs locally by specifying
them directly in the Makefiles.
1997-01-16 02:59:08 +00:00
cgd 653e0e50fe more carefully include libkern and libsa headers 1997-01-16 01:21:36 +00:00
cgd 904a2dc374 link installboot statically, and include libutil 1997-01-16 01:20:24 +00:00
cgd 942c20dfac change the fixed delay to allow serial console output to settle
to something smarter, suggested by Charles Hannum.
1997-01-15 22:13:36 +00:00
perry b89a3425b7 Eliminate obsolete TIMEZONE and DST options.
Eliminate obsolete global kernel variable "struct timezone tz"
Add RTC_OFFSET option
Add global kernel variable rtc_offset, which is initialized by
RTC_OFFSET at kernel compile time.
on i386, x68k, mac68k, pc532 and arm32, RTC_OFFSET indicates how many
minutes west (east) of GMT the hardware RTC runs. Defaults to 0.
Places where tz variable was used to indicate this in the past have
been replaced with rtc_offset.
Add sysctl interface to rtc_offset.
Kill obsolete DST_* macros in sys/time.h
gettimeofday now always returns zeroed timezone if zone is requested.
settimeofday now ignores and logs attempts to set non-existant kernel
timezone.
1997-01-15 01:28:28 +00:00
cgd 328e19f5fb useful suggestion from jason: make this simply an 'include' of the
GENERIC kernel config with the added ramdisk-hook-enabling bits!
1997-01-14 23:37:59 +00:00
cgd 46b965ab4a useful suggestion from jason: make this simply an 'include' of the
GENERIC kernel config with the added profiling bits!
1997-01-14 23:32:00 +00:00
cgd b701ee6fea comment out 'options GATEWAY' by default.
add PPP_BSDCOMP and PPP_DEFLATE.
add ipfilter pseudo-device, and sort the pseudo-device list to recover
    from the renaming of 'rd' to 'md'.
1997-01-14 23:20:37 +00:00
cgd 1db761a1be add cd9660, msdosfs file system support.
add SysV Shared Memory support, since it can be used by the X server.
add 'ppp' to the list of pseudo-devices, and sort the list to recover
    from the renaming of 'rd' to 'md'.
other slight cleanups.
1997-01-14 23:18:17 +00:00
mikel aed485cdf2 add 'pseudo-device ccd' where necessary; PR kern/1830. 1997-01-11 09:11:37 +00:00
mrg c71a371532 use pseudo-device ipfilter, not ipl. 1997-01-07 11:35:01 +00:00
cgd ebabdb626a dd bdevsw and cdevsw entries for floppy disk driver (not currently usable),
and cdevsw for ipl (IP filter).
1997-01-06 23:28:09 +00:00
pk 84a0f13e4c RAMDISK_HOOKS => MEMORY_DISK_HOOKS 1997-01-01 23:12:23 +00:00
pk c4a0dfb011 omission in last commit: ramdisk.h => md.h 1996-12-28 23:50:44 +00:00
pk 114271a083 rename: ramdisk => md 1996-12-28 23:10:44 +00:00
cgd 0396cad668 if __lint__ is defined, #define __builtin_saveregs() and
__builtin_classify_type() into harmless values, so that lint doesn't
get confused, think they're real functions, and that they're being
invoked in the wrong ways.
1996-12-22 08:57:23 +00:00
cgd 50cb6df652 for now, -Wcast-qual is just not practical in the kernel 1996-12-22 08:33:19 +00:00
cgd fc841ac711 __asm rather than asm, to make lint happy without -g 1996-12-19 09:13:44 +00:00
cgd c591d26932 update for recent com.c changes: delete references to now-nonexistant
comconsinit variable.
1996-12-17 23:21:53 +00:00
cgd 693a05816e disable weak aliases in libc until something actually uses them. When
using __weak_alias in libc, __indr_reference should probably be defined
to do nothing (but defined, so that duplicate functions/variables aren't
compiled).  However, when not using __weak_alias, __indr_reference causes
them to be omitted completely, which is a lose.  So, until weak aliases
are going to be used, don't define __weak_alias or __indr_reference.
1996-12-16 21:01:55 +00:00
cgd 6fbbbb1eb2 add endianness constants, relocation types 1996-12-14 05:46:13 +00:00
thorpej d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +00:00
cgd e4f6e48c7d kill the last vestiges of __BROKEN_INDIRECT_CONFIG. 1996-12-10 19:33:51 +00:00
cgd e9abc8540f remove all traces of __BROKEN_INDIRECT_CONFIG (except in shared drivers) 1996-12-08 00:22:08 +00:00
cgd 6dbb1548bd kill __BROKEN_INDIRECT_CONFIG 1996-12-07 22:43:17 +00:00
cgd fb18e1fda9 oops; have to cast PS_STRINGS away from pointer 1996-12-07 22:36:28 +00:00
cgd 0e3d6291e3 note what each of the argument registers in setregs() will be used
for by crt0.  Actually clear a1 and a2, because unless a shared loader (i.e.
_not_ the kernel) set them when invoking crt0, they should be zero, and
the kernel DEBUG code wouldn't necessarily have them be.  Pass a pointer
to the proc's ps_strings structure in a3.
1996-12-07 19:45:14 +00:00
cgd 1a8f25c523 add a "machdep.booted_kernel" sysctl, which is the name of the booted
kernel as supplied by the SRM console's BOOTED_FILE variable.
1996-12-07 01:54:49 +00:00
cgd 8b6a32d1c1 update these so they compile whether or not __BROKEN_INDIRECT_CONFIG
is defined.
1996-12-05 01:39:27 +00:00
cgd 96acdadef7 First step inn removing config_scan() and the hacks that gave devices
on indirect-config busses a (permanent) softc that they could share
between 'match' and 'attach' routines:

Define __BROKEN_INDIRECT_CONFIG so that old autoconfiguration
interfaces are used, until drivers are converted to use the new
interfaces (actually, converted back to use the _older_ interfaces)
which prohibit indirect configuration devices from receiving a softc
in their match routine that they can share with their attach routine.
1996-12-05 00:13:47 +00:00
mycroft 7cec90e7ea Fix a race condition in tcds_scsi_isintr().
Also, remove the annoying and bogus `empty FIFO of N' message.
1996-12-04 22:35:08 +00:00
cgd a06362dc8e do_sir lowers the IPL itself, now 1996-12-03 19:54:16 +00:00
cgd b74e03da21 fix a couple of bogons in the last two, and clean up slightly 1996-12-03 19:52:58 +00:00
cgd 882fa5a35d try that last one again. 1996-12-03 18:11:40 +00:00
cgd 156fe546d2 kill siroff() and resturcture do_sir() to be cleaner and more correct. 1996-12-03 17:34:47 +00:00
cgd a04fb885d8 clean up SCSI devices 1996-12-03 17:25:27 +00:00
cgd 81e9bda988 convert to use bus_space_set_region_2() and bus_space_copy_2(), rather
than in-line clear and copy loops.
1996-12-02 22:24:54 +00:00
cgd 30b636bd09 implement bus_space_copy_*(). 1996-12-02 22:19:32 +00:00
cgd 256cf234a1 move barrier operation definition closer to the top of the bus space ops
structure.  In the implementations, allow the barrier op to be inlined.
1996-12-02 07:07:18 +00:00
cgd 54ba942f79 implement bus_space_set_multi_* and bus_space_set_region_* operations. 1996-12-02 06:46:49 +00:00
cgd e6bafb00d6 declare the single-datum read and write methods as inline, so that
the multi and region methods can inline them.
1996-12-02 06:12:39 +00:00
jonathan 4c1d96de78 * Replace explicit -O2 in CFLAGS with COPTS macro. Default COPTS?= -O2.
Lets users over-ride with makeoptions COPTS="..." in kernel config files.

  Leave `mandatory' flags (like  -msoft-float which  on m68k enforces no
  FP in kernel) in CFLAGS.
1996-12-01 06:12:25 +00:00
jtc 9da5f60715 PROF -> GPROF 1996-11-30 02:48:57 +00:00
pk f5f35b104f Sync with sparc port:
>Pay attention to DMA errors as reported by DMAINTR() returning -1. If this
>happens reset everything.
>
>Re-schedule a timeout when first attempting to abort an operation.
>Cancel any queued timer events before re-scheduling a timeout, so esp_abort()
>can be called from other places besides the timeout handler.
1996-11-27 21:38:35 +00:00
cgd e338e3526d when panicing because of a fatal trap, print the trap's type name, as well
as its kernel entry number.
1996-11-27 01:28:30 +00:00
cgd f7a967045c #ifdef DEBUG, check {read,write}_{multi,region} ops' pointer arg for alignment. 1996-11-27 01:24:49 +00:00
cgd 366a586e85 if we're going to do a real match (we are), ahve to special-case console 1996-11-27 01:20:26 +00:00
cgd 2f1d32e181 note eb164 support 1996-11-26 15:58:04 +00:00
cgd 98c4f0c312 add a comment re: eb164 1996-11-26 15:46:24 +00:00
cgd f9d0b7e37f fix up field names for recent rpb.h changes 1996-11-25 16:18:16 +00:00
cgd acf2644128 update for recent configuration changes. 1996-11-25 04:16:15 +00:00
cgd abbe7f24f1 update for eb164 file addition, apecs & lca bus space function split
file additions/deletions, pcppi file addition, and pckbd & pms attachment
changes.  also, clean up a couple of comments.
1996-11-25 04:03:21 +00:00
cgd 003fda43da update for chipsets' init functions' new prototypes 1996-11-25 03:59:19 +00:00
cgd 97927bdd99 update for new extent management code. Most importantly, we can't call
the chipset space init functions multiple times, since that would clobber
extent allocations made between the two calls.  Also, deal with the
fact that the APECS and LCA no longer shared common chipset functions.
1996-11-25 03:56:48 +00:00
cgd 77baf28d70 update for new extent management code. Most importantly, we can't call
the chipset space init functions multiple times, since that would clobber
extent allocations made between the two calls.
1996-11-25 03:55:46 +00:00
cgd 7a1799b561 update for new extent management code, and for apecs/lca space access fn split 1996-11-25 03:49:36 +00:00
cgd 608a9f3065 update for new extent management code 1996-11-25 03:49:11 +00:00
cgd 6d7b2d82a7 make eb164 interrupts actually work. 1996-11-25 03:47:05 +00:00
cgd 8b50c9af38 reimplement, so that it works with the new extent mapping code. 1996-11-25 03:46:07 +00:00
cgd fe6262c3c0 split the APECS and LCA bus memory and I/O functions. Most of them still do
the same things, but the extent maps have to be managed differently,
since the two chipsets provide different memory and I/O region mapping
possibilities.
1996-11-25 03:42:09 +00:00
cgd 1a45dbd671 update these to set up and use extents to map i/o space, and sparse and
dense memory.
1996-11-25 03:37:23 +00:00
cgd 25450fc448 hide a bogosity by not printing a message when pms not attached 1996-11-25 03:30:43 +00:00
cgd d35047f37b Add a primitive driver for the PC-ish Programmable Peripheral Interface
and PC-ish keyboard controller.  (Actually, on alphas, the built-in PPI
(in the SIO) appears to be a lobotomized version of the original, but
i'd not call that a bad thing.)  This driver should eventually handle all
speaker tone requests and keyboard commands, but for now it just maps
the relevant ports and passes them on to the keyboard and mouse drivers,
which are now its children (rather than children of ISA).
1996-11-25 03:26:33 +00:00
cgd 8c007e0e48 use set_pci_isa_bridge_callback() to delay ISA/EISA bus attachment until
after PCI tree has been completely probed.
1996-11-25 03:15:24 +00:00
cgd e29fc4fb1d sync up with pk's commit to the sparc port:
>One control block per target is insufficient if you have a full complement
>of targets attached and access those simultaneously (like in a ccd(4) array).
>We (now) allocate (somewhat arbitrarily) three per target.
>Noticed by Marshall Midden.
1996-11-24 04:21:30 +00:00
cgd abf0b7c010 deal with the fact that apparently-common revisions of EB164 firmware
don't machine check when a PCI Master Abort is signalled.  This can
happen, for instance, when configuration space for a device that isn't
present is examined.  When this is detected, act like we normally would
when machine checks are posted while examining nonexistant devices.
1996-11-23 06:46:50 +00:00
cgd ff523f9080 fix HAE_MEM_REG3_START definition (shift was incorrect). Add CIA_CSR_CIA_ERR
register definition.  (should define bits in CIA_CSR_CIA_ERR, but haven't
done that yet.)
1996-11-23 06:42:55 +00:00
cgd 574633aea2 add definitions for LCA_IOC_HAE contents. Add a REGVAL64 macro, like
REGVAL but good for 64-bit chipset registers.
1996-11-23 06:41:00 +00:00
cgd 7aefe04c3e update for new names for ISA VGA console match and attach functions 1996-11-23 06:38:49 +00:00
cgd fc7b72ee10 move interrupt establishment to just before clock interrupts are
enabled (from the attach routine), and add comments as to why.
Some PALcode apparently 'saves' a clock interrupt for the kernel,
and if the clock interrupt handler is enabled at attach time, it
will be run when that interrupt hits, i.e. right after the spl0()
at the end of autoconfiguration.  That would cause hardclock to be
run, but proc0's p_stats isn't set up by then, which would cause
hardclock to crash.
1996-11-23 06:31:57 +00:00
cgd 12fc617201 make ALPHA_K0SEG_TO_PHYS and ~0xfffffc00000000000 with the address,
rather than and-ing 16G-1.  That just strips the k0seg bits, rather
than making the false assumption that the physical address is going
to be in the lower 16G.  That doesn't apply for CIA device-space
addresses, for instance.
1996-11-23 06:25:31 +00:00
cgd d22ab75ff0 clean up match: check args more carefully, make sure I/O space can be mapped 1996-11-23 06:21:43 +00:00
cgd 335c1af878 move probe and setup code into common functions. always probe (i.e.
even if PCI and the IDs are right), just for sanity, before declaring
success.  Split the single 0x3b0 -> 0x3df allocation into three seperate
ones: 0x3b0 -> 0x3bc (leaving the 4 ports available for lpt),
0x3c0 -> 0x3cf, and 0x3d0 -> 0x3df.  The former chunk has to be split
off if the lpt can exist there, and it's sort-of pretty to have each
group (based on second hex digit) have its own handle.
1996-11-23 06:06:43 +00:00
cgd 31cc61b793 try mapping the I/O space (as well as the memory space) in the probe routine. 1996-11-20 20:04:53 +00:00
cgd 7b52699cfd catch up with wscons frame buffer attachment, mmap, and ioctl
interface changes.
1996-11-19 05:23:07 +00:00
cgd 1c90055b77 clean up wscons frame buffer attachment interface slightly. Make
ioctl and mmap routines take a void *, rather than a struct device *,
so that they can be set up to work more easily when using a 'struct device *'
isn't appropriate.  Add a cookie (void *) to be passed to the mmap and
ioctl routines.  Rename a few struct members, and shuffle them into
a more sensible order.
1996-11-19 05:17:00 +00:00
cgd a1476167f8 update for ISA VGA frame buffer possibily 1996-11-19 05:08:36 +00:00
cgd f3415af098 update for VGA-related changes 1996-11-19 04:57:32 +00:00
cgd 2b4df4f147 implement isa_display_console(), to be used when console is an ISA display dev 1996-11-19 04:54:43 +00:00
cgd 8529bfe399 add an isa_display_console() function, to be used when console is an ISA dev 1996-11-19 04:53:07 +00:00
cgd bf371611ab fix spelling error 1996-11-19 04:49:21 +00:00
cgd e6a9d46085 update for VGA changes, and clean up slightly. 1996-11-19 04:43:55 +00:00
cgd adc49e3c06 update for VGA changes and shared_intr.c move 1996-11-19 04:40:26 +00:00
cgd 2c43c05bc2 replace old PCI VGA driver with a common VGA back-end and ISA and PCI
front-ends.  Unfortunately, because of the way ISA and PCI are currently
probed, if you have a PCI VGA board in your machine and both drivers
in your kernel, the ISA VGA driver may accidentally match the PCI board.
For now, the only solution to this is to not put both drivers in
the GENERIC kernels.
1996-11-19 04:38:32 +00:00
cgd bb2c8c35d7 this has moved to sys/arch/alpha/common. 1996-11-19 01:34:26 +00:00
cgd e35cd5615f implement interrupt enable/disable and mapping as described in
the Digital Semiconductor AlphaPC 164 Motherboard Technical Reference
Manual.  This may not work, but it's the best i can do with the
documentation I have.
1996-11-17 02:30:25 +00:00
cgd ccc668e0d7 use the new common chained-interrupt support code. 1996-11-17 02:05:26 +00:00
cgd 91c6442ca0 implement a (hack-ish) set of routines to do common chained-interrupt
handler management.  It's nasty, but three slightly different copies of
the code is worse.
1996-11-17 02:03:08 +00:00
cgd bbb8f63dae clean up some 'system not supported' printfs 1996-11-17 01:59:35 +00:00
pk 336790c5a2 Sync with sparc revision 1.61:
Add explicit casts to `%l*' formatted arguments.
1996-11-16 23:17:18 +00:00
cgd c5323239f6 add names and space for eb164 interrupt request counters 1996-11-16 23:11:57 +00:00
cgd 2e5bc1461a panic with "bogus size" if ncols or nrows is <= (not just <) 0 1996-11-16 23:10:06 +00:00
cgd f48eac49ba compile with -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes
-Wcast-qual, even if DEBUG isn't defined.
1996-11-16 23:07:40 +00:00
cgd c8201bca4d Add short delays after accessing registers, so that the z8530's settle
times are respected.  This solves the duplicated characters problem.
1996-11-16 00:40:14 +00:00
cgd 70147216ec Include a PMAGB-BA in the list of built-in devices only if SV_GRAPHICS
is set in the RPB's rpb_variation field.  This fixes a bug where machines
(e.g. the 3000/900) would see that they could touch memory where a built-in
PMAGB-BA, assume that it was there, and panic later because the memory they
were accessing didn't look like PMAGB-BA registers (because it wasn't).
1996-11-15 23:59:00 +00:00
jtc 16b48272c4 Define _BSD_CLOCKID_T_ and _BSD_TIMER_T_ 1996-11-15 22:38:45 +00:00
cgd 37b6fc0222 move DEVPAGER, SWAPPAGER, VNODEPAGER options into std.alpha since they're
mandatory, and clean up their descriptions.
1996-11-15 19:37:21 +00:00
cgd 03a0bfabac fix slight mis-ordering 1996-11-13 23:42:55 +00:00
cgd d8aea5f52d print out unrecognized processor minor types as 0x%x, rather than %d,
also print out minor types in a few cases where they previously wouldn't
be printed (but that aren't likely to be run into, anyway).
1996-11-13 23:18:07 +00:00
cgd a86f553589 update for all known processor major and minor type numbers. 1996-11-13 23:13:02 +00:00
cgd 6e3d55a53c clean up cpu type descriptions, in line with rev. 3 of the AARM 1996-11-13 22:26:41 +00:00
cgd db5fd4e8e2 update copyright dates 1996-11-13 22:20:54 +00:00
cgd 6c9cb4aa9b compile cleanly with:
-Werror -Wall -Wstrict-prototypes -Wmissing-prototypes -Wcast-qual
1996-11-13 21:13:04 +00:00
cgd 750ee83e95 Set CWARNFLAGS to:
-Werror -Wall -Wstrict-prototypes -Wmissing-prototypes
	-Wcast-qual -Wno-format
(if not already set).  -Wno-format is necessary because of the few
bits of code in the tree that use NetBSD's special kernel printf()
formats, and because there are a few bits of code that try to use the 'q'
modifier to print int64_t's (but int64_t's are only 'long' on the
alpha, not 'long long').
1996-11-13 20:53:24 +00:00
cgd 3706f8b184 kill the makeoptions spec of CWARNFLAGS 1996-11-13 20:43:19 +00:00
cgd f5abc1b89a recognize 21164A (ev56) 1996-11-13 01:03:52 +00:00
cgd c55c19e5b1 -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes -Wcast-qual cleanups. 1996-11-12 21:00:33 +00:00
cgd be771a0f36 add DEC_EB164 option 1996-11-12 18:05:53 +00:00
cgd 206e66a5a4 resort cpu option list 1996-11-12 18:05:27 +00:00
cgd 45ba05f710 convert cpu-dependent routine selection to use a centralized CPU switch, thus
deleting (and cleaning up) N pages of #ifdefs in machdep.c.  While we're
at it, make the cpu type options generate flags, and check them instead of
kernel Makefile defines.
1996-11-12 05:14:27 +00:00