Commit Graph

769 Commits

Author SHA1 Message Date
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
cgd bf40f3eaba add DEC_EB164 option, to include nascent eb164 support 1996-11-11 21:15:28 +00:00
cgd d05ae32976 alphabetize and clean up machine-specific files, add eb164's machine file 1996-11-11 21:10:58 +00:00
cgd 8ffccdfae0 preliminary support for the EB164. The EB164 is more or less a 'normal'
21164 + 21172 box, with Yet Another Way of doing interrupts.  The
interrupt mapping and handling code hasn't been written yet, and none
of this code has been tested.  (Checkpoint of work in progress.)
1996-11-11 21:08:10 +00:00
cgd b422a87601 add more system type names, to match new system type numbers. Also, add
appropriate bits of code to support the EB164.
1996-11-11 21:03:09 +00:00
cgd f8ab7cfbcd clean up some spacing in switch statements 1996-11-11 21:02:32 +00:00
cgd 335926a2d0 add system type numbers up to 28, add the EV56 processor type number. 1996-11-11 20:59:02 +00:00
cgd 89e06b9449 build manual page and install it in the right place. 1996-11-06 23:09:13 +00:00
cgd 050d4ebd12 NetBSD/alpha installboot manual page. Copied from the sparc and lightly
tweaked by Curt Sampson <cjs@portal.ca>, then largely redone by me.
1996-11-06 23:07:55 +00:00
cgd 8a3333b2a9 Fix an inconsistency that came in with Lite: setrq() was renamed to
setrunqueue(), but remrq() was never renamed.  Rename remrq() to
remrunqueue().
1996-11-06 20:19:19 +00:00
cgd ca80cc0ce0 add -Wcast-qual 1996-10-25 23:47:01 +00:00
cgd a5649f782f first arg to alpha_XXX_dmamap is now a vm_offset_t 1996-10-25 20:58:11 +00:00
cgd 22b29b5058 prototype alpha_XXX_dmamap(), the alpha DMA mapping hack. 1996-10-25 20:48:59 +00:00
cgd 1b03f1bca7 update for new bus.h macros. bus_io_* and bus_mem_* integrated into
single bus_space_* framework.  Unfortunately, bus_space_{read,write}_*
operations still imply barriers.  That will change soon.
1996-10-23 04:12:13 +00:00
cgd 2f614ee518 update for new bus.h 1996-10-22 21:34:19 +00:00
cgd 8f5cf31b8a clean up the recent reimplementation, and kill several bogons in the new
definitions.
1996-10-22 21:23:49 +00:00
cgd 6d917387e4 there is no TC I/O space, so in the new bus.h world order there
is no tc_bus_io.c.
1996-10-22 21:15:45 +00:00
cgd 48dc9aaae4 update alpha bus.h for new bus space interfaces. chipsets haven't
been updated yet, and the hacked DMA vto(busphys) macro is gone and
hasn't yet been replaced.
1996-10-22 18:06:54 +00:00
cgd a6d9feb7a5 clean up chrtoblktbl, adding comments naming the devices which actually do
have entries in both device switch tables.  Add 'st' entry to chrtoblktbl.
1996-10-18 21:26:57 +00:00
cgd 44365140cf Severely clean up netisr handling. Clean up includes for netisr handlers.
Fix PPP netisr handling, add NATM netisr handling.
1996-10-18 20:35:23 +00:00
thorpej 150c33e60b Use ${INSTALL}. 1996-10-18 05:55:26 +00:00
cgd 8f799be896 add a WEAK_ALIAS macro if building on an ELF-capable system, which creates
a weak alias for a symbol.
1996-10-17 18:33:53 +00:00
cgd 8cab2f173f update for changes in asm.h 1996-10-17 02:50:38 +00:00
cgd 905f7abae1 Add __CONCAT and ___CONCAT to concatenate identifiers. Add LLABEL to
create an assembly label, and SYSCALLNUM to convert a syscall name into
the macro that's defined to be its number.  Add a CALLSYS_NOERROR macro
which invokes the named system call.  (CALLSYS_NOERROR is here since
it's used in locore, for sigcode.)
1996-10-17 02:49:04 +00:00
jonathan 0d1085302d alpha_mb() -> tc_mb(), for alpha/pmax convergence, even tho the tc_mb()
interface in tc_machdep.h is obsolete.
Change "#if 0" around  pmax rcons mouse-redirection to "#ifdef HAVE_RCONS"
1996-10-16 05:07:57 +00:00
cgd caa0b41652 spaces -> tabs where appropriate, some (minor) KNF (it needs much more),
kill spaces at EOL.
1996-10-16 04:07:16 +00:00
cgd 99ffca7953 more updates from jonathan. kill scc_tty array and needs-count 1996-10-16 03:53:31 +00:00
cgd 862e0d2653 various bits of cleanup, from jonathan stone, to make this and the pmax
driver slowly converge.
1996-10-16 00:03:02 +00:00
cgd f31bd002d2 add a new function, hwrbp_restart_setup(), to be called after
autoconfiguration.  It clears the RPB's per-cpu-slot BIP flag and
sets up the RPB's restore_term and restart vectors, etc.  add a
console_restart() function, which causes a panic and system dump,
that is invoked (indirectly) via those vectors.
1996-10-16 00:00:40 +00:00
cgd 2f7e2d8853 add an XentRestart, pointed to by the retore_term HWRPB vector (and maybe,
eventually, the restart HWRPB vector), which calls console_restart.  This
is invoked when the console halt switch is used and the user enters 'c'
at the console prompt, and eventually causes a system crash dump to be
generated.
1996-10-15 23:56:56 +00:00
cgd 9da2b9743a define and call a new function, hwrbp_restart_setup(). It's called after
autoconfiguration to clear the RPB's per-cpu-slot BIP flag and to set up the
RPB's restart function pointers, etc.
1996-10-15 23:52:49 +00:00
cgd e897979b3e don't set dumplo to -1 on error. deal with the case where dumplo is
still 0 after dumpconf().
1996-10-15 23:27:27 +00:00
mycroft 7f28c2392c Increase the maximum number of ECBs. 1996-10-15 21:31:37 +00:00
mycroft d2f275101a Minor cosmetic change. 1996-10-15 21:30:19 +00:00
cgd 01565a3ced typedef, not typeded 1996-10-13 19:57:59 +00:00
cgd 77483f297b increment cnt.v_intr for I/O device and clock interrupts 1996-10-13 19:57:49 +00:00
christos 8d9699acda backout previous kprintf change 1996-10-13 02:59:55 +00:00
christos 7d1960f502 backout previous kprintf change 1996-10-13 02:59:38 +00:00
christos 55ff7d5106 backout previous kprintf changes 1996-10-13 02:59:37 +00:00
christos 0039d4aa0c backout previous kprintf change 1996-10-13 02:59:25 +00:00
christos d7363b596f backout previous kprintf changes 1996-10-13 02:59:23 +00:00
christos b078069824 in_addr_t and in_port_t changes 1996-10-13 02:55:48 +00:00
cgd b2f63215fc don't forget to switch back to the .text after emitting warning
strings in their own sections.
1996-10-12 18:08:12 +00:00
christos 946833855f printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:51:21 +00:00
christos a60beecedb printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:44:49 +00:00
cgd c11d591cfe add support for ELF toolchain, including weak alias support (for upcoming
libc changes) and reference warnings.
1996-10-09 22:41:54 +00:00
cgd 6d0af59ad0 change __va_list's "offset" field to be a 'int' to match what gcc now
uses, plus add a compatibility hack so that code compiled with old
versions of gcc (e.g. libraries) can work with code compiled with
new versions.
1996-10-09 21:13:04 +00:00
cgd 472889f8e4 moved to aout_machdep.h (via repository copy) 1996-10-08 12:57:37 +00:00
cgd d557a6a159 change md_coredump struct to actually reflect the machine-dependent stuff
that's dumped.  use it, rather than a hack, to export the info to user-land
(gdb).
1996-10-07 23:57:21 +00:00
cgd 7b01c01516 read user SP into core dump's trapframe 1996-10-07 19:09:17 +00:00
cgd c11ba5f711 key on ELF_TOOLCHAIN being defined (presumably in /etc/mk.conf)
to signal that the build is happening on a machine with an ELF
toolchain.  This is temporary, until a better toolchain-recognition
scheme is worked out.
1996-10-06 18:32:22 +00:00
cgd c488b75b83 kill misnamed __indr_references() macro, that would have broken things
if it _had_ been properly named.
1996-10-04 19:30:04 +00:00
cgd 1f81754e6d switch to 'swap generic' since that works now (minimal diffs from GENERIC) 1996-10-03 20:47:19 +00:00
cgd ff5e6837e6 frob things so that RAMDISK_HOOKS in the 'right' way with 'swap generic'
and/or RB_ASKNAME.  (Basically, assume that if RAMDISK_HOOKS are included,
the default root device should be rd0a, etc.)
1996-10-03 19:57:58 +00:00
cgd 5e8dcd833f reword attachment printf 1996-10-03 19:54:45 +00:00
cgd 40f6aa4b69 add major info for 'rd' ramdisk devices. make parsedisk() static.
tolerate 'halt' at any of the boot-time prompts.
fix (fatal) bug in the 'swap device' prompt reprinting code.
1996-10-03 18:42:41 +00:00
cgd f328b34c8d clean up 1996-10-03 05:32:49 +00:00
cgd 000f32225c bump the version 1996-10-02 21:26:17 +00:00
cgd f0e79e47bf spaces/tabs cleanup 1996-10-02 21:18:45 +00:00
cgd 0783bd2801 clean and polish a bit 1996-10-02 21:06:56 +00:00
cgd f3f6da3473 clean up a bit 1996-10-01 21:24:37 +00:00
cgd c143646f2f Translate Lev1map to physical address for CPU core header. 1996-10-01 20:21:37 +00:00
cgd 4588414318 move kvtol1pte outside of _KERNEL 1996-10-01 20:21:05 +00:00
cgd d928dbc14a support for new-style kernel core dumps for the alpha. Could probably
be cleaned up a bit, but it works.
1996-10-01 18:41:08 +00:00
cgd 0b1ff14ff3 first cut at alpha machdep kernel coredump header 1996-10-01 18:38:05 +00:00
cgd acaf5ffad5 kill __BDEVSW_DUMP_OLD_TYPE 1996-10-01 14:26:18 +00:00
cgd 4f59e73235 implement a simple (mostly brain-dead; old-style) kernel core dump routine,
which dumps all "system"-cluster memory we know about.
1996-10-01 14:25:47 +00:00
mycroft 4cd799d5a9 Remove unused variable. 1996-09-28 03:37:36 +00:00
mycroft 3729419cc8 * Bitbucket extra status bytes rather than barfing.
* Add copyright.
1996-09-28 03:16:56 +00:00
mycroft e097189e2b Restructure code more like aic6360 driver. Also:
* Check for some errors during reselect.
* Don't recognize MESSAGE PARITY ERROR.  A target is not allowed to
send it.
* Check the size of a SDTR.
1996-09-28 02:10:55 +00:00
thorpej 15516a9a89 - Add some missing prototypes and kill an unused label.
- Add some missing SPARC_DRIVER stuff.
- Make SPARC_DRIVER automatic.

This driver now compiles as-is and works on both the SPARC and Alpha.
1996-09-27 21:37:17 +00:00
mycroft be1172e37b Fix dangling pointer in debugging message. 1996-09-27 20:21:38 +00:00
mycroft 00089386d6 If we get an unexpected disconnect while issuing a REQUEST SENSE, do a reset. 1996-09-27 19:55:41 +00:00
mycroft 3075e1443b Functional changes:
* Handle message retransmissions and partially sent messages correctly.
* Make sure we clear ATN after the last message is sent.
* Do the right thing if the target initiates negotiation for async mode
after having negotiated sync mode.
* Fix some cases where we set ATN with no message queued, or schedule a
message without setting ATN.
* Issue a REQUEST SENSE after an unexpected disconnect, per SCSI spec.
* Fix abort handling in a number of cases.
* Recognize selection timeouts better (to speed up probing).
1996-09-27 19:36:34 +00:00
cgd d896ecd5f0 compile .S files with cpp | sed | as, to work around a bug with the
ELF-outputting version of the assembler.  (It was dying when it saw
some CPP line number markers.)  This is temporary.  (Workaround suggested
by Matt Thomas.)
1996-09-27 17:33:04 +00:00
cgd a3ad409098 add EXEC_ELF64 and EXEC_SCRIPT as standard options 1996-09-27 17:18:02 +00:00
cgd 80f9ed76f6 update for changes to config. 1996-09-27 17:08:32 +00:00
cgd db9418238e add support for the prom 'write' operation. 1996-09-26 22:51:53 +00:00
cgd 64f4e1937e rename <machine/ecoff.h> to <machine/ecoff_machdep.h> for clarity and
consistency with the way machdep headers for other things are done.
(the creation of the ecoff_machdep.h files was done on the CVS server, to
keep the RCS logs intact.)
1996-09-26 22:39:14 +00:00
cgd 0e097578a2 add and use a machine-dependent header, which currently defines some
macros to use to remove #ifdefs from the machine ID case check.
Eventually, these headers will contain other information, e.g.
machine-dependent relocation information, etc.
1996-09-26 21:50:55 +00:00
cgd c54f6f32d9 update for ELF toolchain support 1996-09-23 04:32:59 +00:00
cgd a47aa08a3e define ELFSIZE to 64, for exec_elf.h 1996-09-23 04:32:44 +00:00
cgd 3bd3e6250d checkpoint current development, add ELF toolchain build support 1996-09-23 04:30:56 +00:00
cgd 6048292ba8 add -DECOFF_COMPAT to CPPFLAGS if ELF_TOOLCHAIN not defined. 1996-09-23 04:28:46 +00:00
cgd c225908c90 add netboot 1996-09-23 04:28:23 +00:00
cgd 8644dce05c start on some network boot blocks. they work, but:
(1) the if_prom code needs to be cleaned up quite a bit
	    (right now it hard-codes client's ethernet address), and
	(2) much of this code (esp: getsecs.c, netboot.c, newvers.sh,
	    rpcc.S) should be shared with other Alpha boot blocks,
	    and dev_net.[ch] should maybe go in libsa proper.
1996-09-18 20:03:04 +00:00
cgd 675e59d762 fix for elf loading, from Matt Thomas 1996-09-18 19:34:33 +00:00
cgd 886dba6dff (1) split load-file functionality out from the 'main program' of the
boot block, since it will be shared with the network boot block.
(2) Kill a.out support, since it never worked was never used, and will
    never be.
(3) Add support for booting of ELF kernels, from Matt Thomas.  (Currently
    untested, but it compiles.)
1996-09-17 22:00:24 +00:00
cgd a68b586a74 add _rtt as an XLEAF into start which (like 'halt') just halts 1996-09-17 21:26:45 +00:00
cgd abcbfbdd93 use assembler directives and labels that make both the ELF- and ECOFF-
targeted assemblers happy.
1996-09-17 21:17:11 +00:00
cgd 8110fe7ca7 Differentiate between disked ("SCSI") and network ("BOOTP", but not yet MOP)
booted_dev specs.  Add code to find the device, if booted from the network.
1996-09-17 21:04:25 +00:00
cgd cab0e2aba3 hmm, fix an apparent typo (two letters got deleted!) 1996-09-17 20:58:58 +00:00
cgd 56386f3e35 Differentiate between disked ("SCSI") and network ("BOOTP", but not yet MOP)
booted_dev specs.  Add code to find the device, if booted from the network.
1996-09-17 19:46:37 +00:00
cgd 88a5419c15 print default device names slightly more nicely. (if not disk device,
don't print a blank before the close paren.)
1996-09-17 19:41:52 +00:00
cgd 66992c7399 sync with GENERIC: add pseudo-device 'rd' with one unit 1996-09-16 16:34:15 +00:00
cgd 0006f58df7 add EISAVERBOSE, TCVERBOSE as appropriate. Add UCONSOLE to all.
slight cleanup + sync.
1996-09-16 16:30:40 +00:00
cgd 5645b6ef46 simplify profiling entry. add 'label' argument tp PANIC, PRINTF, and MSG,
which is the label that the message string should be stored with.
1996-09-15 22:42:29 +00:00
cgd e025186655 save and restore registers symmetrically. don't forget to restore PV (t12). 1996-09-15 22:33:28 +00:00
cgd 89986fec30 like GENERIC, but uses built-in ramdisk image for root 1996-09-15 17:23:12 +00:00
cgd 3732f4dad6 add one 'rd' pseudo-dev. 1996-09-15 17:22:28 +00:00
cgd edf0333fe0 add ramdisk root hooks 1996-09-15 17:17:56 +00:00
cgd 17264a54f2 s/k0segtophys/ALPHA_K0SEG_TO_PHYS/ 1996-09-15 17:16:24 +00:00
cgd 3af6ed0256 pollin', pollin', pollin', make them drivers pollin'... (support poll()). 1996-09-15 17:15:26 +00:00
cgd 0b77b04b6e set a0 to be the initial sp, and set pv to be program entry point. 1996-09-10 19:13:42 +00:00
mycroft b3ffba62a6 Move strip(1) flags into a separate variable, so that $STRIP can
be passed to subordinate make(1)s.  Remove $TOUCH.  Add HOSTED_CC,
HOSTED_CPPFLAGS, and HOSTED_CFLAGS, and use them when depending genassym.
1996-09-09 21:06:55 +00:00
cgd 7ba205c37e Sync the 53c94 SCSI driver with the sparc version. Update the DMA code to
match the interfaces required by the driver.
1996-09-09 18:10:35 +00:00
cgd 2b118fc59b add entries for rd (cdev + bdev), ss (cdev), and uk (cdev). 1996-09-09 16:38:52 +00:00
cgd 65538ec48d add specs for 'rd' 1996-09-09 16:31:36 +00:00
mycroft e6dd44f034 Use SIGBUS iff we get a legitimate bus fault. Use SIGSEGV for page protection
violations (per Solaris, SVR4, AIX, Linux, Irix, and SunOS).
1996-09-07 22:26:41 +00:00
mycroft 2bc736661a Implement poll(2). 1996-09-07 12:40:22 +00:00
cgd e6e14683fe note that the AlphaStation 500 works (with the same caveats as the
AlphaStation 600).
1996-09-06 04:01:37 +00:00
mycroft fc3def4096 Remove duplicate declarations of LKM functions and macros. 1996-09-05 15:46:22 +00:00
mycroft b3eac79b64 tty stop functions really should return void, not int, and certainly not both. 1996-09-02 06:43:16 +00:00
mycroft 30a617c634 Wrap the default definition of `S' in `.ifndef'. 1996-08-31 21:40:47 +00:00
cgd 71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
cgd 2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
cgd 2c47809239 include <sys/systm.h> for printf prototype 1996-08-27 16:28:08 +00:00
cgd b9a7acad48 define a new frame buffer type code for the TGA2 1996-08-23 00:50:25 +00:00
cgd 2d7e005418 add COMPAT_12 to all configs 1996-08-21 16:25:05 +00:00
cgd 78b0ddd68b wrap a debugging printf in NEW_PMAP 1996-08-21 15:54:18 +00:00
cgd c8fbe2de87 PSL_IPL_HIGH -> ALPHA_PSL_IPL_HIGH 1996-08-21 15:53:26 +00:00
cgd 137c61ba70 OLD_PMAP -> NEW_PMAP 1996-08-20 23:18:44 +00:00
cgd 04bac6838f OLD_PMAP -> NEW_PMAP. also, fix bug where i wasn't disabling
all reporting of correctable errors on startup, but rather was
just clearing all outstanding correctable errors.
1996-08-20 23:16:27 +00:00