Commit Graph

1256 Commits

Author SHA1 Message Date
thorpej
4730a8cbec Bug fixes and cleanup from Chris Demetriou <cgd@pa.dec.com>:
- fix _C_LABEL so that it actually works.
- make __RENAME use _C_LABEL.
- fix __RENAME so that it expects an unquoted argument.
- fix __indr_reference and __warn_references so that they
  supply their own final semicolon.
- define __warn_references to nothing if not GNU C (required
  by the way it's used).

The __warn_references semicolon change has to be made
so that __warn_references can be defined into nothing.
(A ; all by itself isn't a great idea.)  The __indr_reference
change was made for consistency.
1997-11-04 23:09:23 +00:00
ross
6f6bb84844 Check for null curproc in pmap_changebit. Fixes the IDE-on-alpha crash
problem reported by Chris Csanady <ccsanady@bob.scl.ameslab.gov>.
this
1997-11-04 07:16:25 +00:00
ross
0ea4820367 --Add handcrafted stack frame directives to locore.s palcode vector
--entries / remove kernel entry from locore / reorganize vector entry
--code. Enables access to stack frames transitively w.r.t. palcode
--vectors, e.g. upward traceback works, inverting (possibly several)
--kernel vectors. Until now, all trackbacks ended at the first-reached
--instance of trap(), which was totally useless as there is no mystery
--to trap->panic->cpu_reboot
1997-11-03 04:22:00 +00:00
lukem
3e8e744696 getopt returns -1 not EOF 1997-11-01 06:49:14 +00:00
thorpej
32146049fa Don't forget to account for scrollskip when computing the current row. 1997-10-27 01:37:33 +00:00
thorpej
023044a749 Clean up printing of chipset revision/capabilities. 1997-10-27 01:08:42 +00:00
thorpej
611012d836 Make the copy_region methods do overlapping copies properly. Fixes
port-alpha/4216 (Chris Demetriou).
1997-10-25 01:21:57 +00:00
thorpej
19c77efe96 In vga_erasecols(), fix botched count and reversed arguments to
bus_space_set_region_2().  From Chris Demetriou <cgd@pa.dec.com>.
1997-10-24 23:03:02 +00:00
thorpej
665f7d1a6e Implement __RENAME() in <machine/cdefs.h> 1997-10-22 05:20:32 +00:00
mjacob
5bd8e6eccc MSS3 needs full SYSV stuff. 1997-10-20 19:48:30 +00:00
explorer
f29df68cd4 comment out rnd, mark as experimental 1997-10-20 18:47:08 +00:00
cjs
1a546804ed First go at an INSTALL kernel (add ramdisk, remove unnecessary stuff). 1997-10-19 01:31:49 +00:00
cjs
bcced1d9be Check return values from lseek; use SEEK_SET instead of 0. 1997-10-18 22:27:46 +00:00
mjacob
c3f84c257a more compile foo 1997-10-17 18:59:48 +00:00
mjacob
c8fce5460c more compile foo. 1997-10-17 18:58:16 +00:00
mjacob
eb249946d0 Recover from some include file foo. 1997-10-17 18:47:30 +00:00
mjacob
d13d5783e4 Add in missing includes. 1997-10-17 18:25:32 +00:00
thorpej
6698c7b3e2 Adjust for new "com" driver home. 1997-10-16 00:58:08 +00:00
mjacob
c83fc3eeb6 Remove __VM_PMAP_HACK. 1997-10-14 15:29:50 +00:00
cjs
c44bfc9eae Make compile without DIAGNOSTIC set. 1997-10-14 06:22:02 +00:00
cjs
0e4e4777f8 Add pseudo-device rnd. 1997-10-13 06:59:58 +00:00
explorer
80513cb5ae o Make usage of /dev/random dependant on
pseudo-device   rnd                     # /dev/random and in-kernel generator
  in config files.

o Add declaration to all architectures.

o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
  that this code is derived in part from Ted Tyso's linux code.
1997-10-13 00:46:08 +00:00
mycroft
9803f46796 Minor rearrangement to match other files. 1997-10-11 09:12:18 +00:00
mycroft
5c8d588138 Nuke NOOBJ. 1997-10-11 08:44:42 +00:00
mycroft
acf0e569a5 Update all the tags goo, and use bsd.subdir.mk. 1997-10-11 08:42:02 +00:00
cjs
984390f178 Add now-working ipfilter. 1997-10-10 08:54:14 +00:00
bouyer
6ab3092b11 Add byte-swapping functions (bswap16, bswap32, bswap64) to libkern.
Only assembly version for i386 bswap16 and bswap32 for now (bswap64 uses
bswap32). Contribution of assembly versions of these are welcome.
Add byte-swapping of ext2fs metadata for big-endian systems.
Tested on i386 and sparc.
1997-10-09 15:42:19 +00:00
thorpej
5e05593163 Implement DIOCGDEFLABEL. 1997-10-08 23:23:13 +00:00
gwr
bb2d22bde0 use common genassym.awk 1997-10-04 17:21:23 +00:00
gwr
c63931a407 use common genassym.awk 1997-10-04 17:14:07 +00:00
thorpej
92a347c574 Copyright assigned to The NetBSD Foundation. 1997-10-04 09:38:47 +00:00
christos
3996b53189 PR/4162: Chris Jones: make cleandir does not work properly; it does not
remove the object files and the .depend file in the kernel build directory.
1997-09-30 22:39:49 +00:00
thorpej
d65a5e7fd2 Enter DDB on cntl-alt-esc (a'la i386). 1997-09-25 02:42:47 +00:00
thorpej
ef86b9a61d Fix a small oversight in last change. 1997-09-25 02:13:44 +00:00
thorpej
0c2efd7025 Add a "scrollskip" member to wscons_emulfuncs (XXX even though it's not
a function) which specifies how many lines will be skipped when scrolling
up when the bottom of the screen is reached.  Dumb framebuffers skip 10
lines (as before) because the copies are s ... l ... o ... w, but it's
silly to skip 10 lines on VGA, since the copies are much faster, so we
only skip one in that case.
1997-09-25 01:31:53 +00:00
mjacob
42c325e139 A minor barely acceptable hack to handle having a kernel boot on a system
with large amounts of memory and not spew. This doesn't really replace
fixing this problem better later, but it works for now. Basically, if memory
is greater than 128MB, start upping the sizes of some maps.
1997-09-23 23:23:23 +00:00
mjacob
b23bbbb05c Redo the platform specific identification and initialization, making
it more explicit where platform specific functions (like machine check
handling) should go.
1997-09-23 23:15:42 +00:00
mjacob
03a798a3fd Add some defines for alpha interrupt types. 1997-09-20 19:02:34 +00:00
mjacob
185cbcebd0 An oops- MSS3 referred to a device not yet integrated. 1997-09-19 22:03:59 +00:00
mjacob
4de790f125 Add in a clause ifdef'd for LIMITMEM- limit usage of memory to a certain
amount. Temporary until more drivers use busdma stuff.

Also correct to unsigned the printing out of memory sizes.
1997-09-19 22:00:34 +00:00
mjacob
206b183a48 Add a config file for large memory 8200s- this is temporary until a
more gracious self correcting (for large memory, e.g., > 1GB) startup happens.
1997-09-19 21:58:47 +00:00
mjacob
0fb787aedb Add missing reference. 1997-09-19 14:48:59 +00:00
mjacob
f3d890d1c9 missing cast. 1997-09-19 14:47:33 +00:00
leo
d4713d24c2 Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
thorpej
618f6b9541 Make IDE work again, from Ross Harvey <ross@teraflop.com>. 1997-09-19 00:59:38 +00:00
mjacob
9ce899230a After decommisioning a mapping, an IMB kinda needs to happen. 1997-09-18 01:08:56 +00:00
thorpej
cd69e27594 Prototype alpha_implver(), and fix a think-o in a previous commit. 1997-09-17 23:33:28 +00:00
thorpej
b806d39316 Implement a stub for the "implver" instruction, which returns the
implementation version of the processor.
1997-09-17 23:32:14 +00:00
thorpej
15e10104d5 Define the BWX-capable regions of the CIA chipset's address space (mem,
i/o, pci config space mode 0, pci config space mode 1) and the CIA
REV and CNFG CSRs.
1997-09-17 01:35:34 +00:00
thorpej
879c4c5cf4 If the CIA revision is >= 2, read the CIA configuration register, and
remember its contents.  Print out a bit of information about the chip,
including whether or not it supports the EV56 BWX instructions.
1997-09-17 01:34:18 +00:00
thorpej
ed767a2402 Fix a typo in a comment. 1997-09-16 23:12:35 +00:00
thorpej
87c1a08481 Add stubs for the Alpha Byte/Word Extension (BWX) instructions, present
on EV56 and later processors that have the "amask BWX" bit clear.  These
instructions will be used to implement non-swizzle bus access functions
on newer systems, such as the new AlphaStation 500s with EV56 and 21172
PCI chipsets.

See "Alpha Architecture Handbook, Version 3", DEC order number EC-QD2KB-TE.
1997-09-16 23:09:10 +00:00
thorpej
6fc0f07c30 Define the "integer miscellaneous" opcode and subfunctions. 1997-09-16 22:53:32 +00:00
thorpej
149011c65b Add support for disassembling the "integer miscellaneous" opcode subgroup. 1997-09-16 22:52:40 +00:00
is
718fb97e11 Support for the upcoming NetBSD/Amiga Hypercom driver family:
* support chip clocks != COM_FREQ, by introducing sc_frequency (for the
  mainline code) and adding a frequency parameter right after the rate
  parameter to comcnattach() and com_kgdb_attach().
- Make com_isa and com_multi initialize sc_frequency to COM_FREQ.
- Make i386/machdep.c and alpha/dec_xxx.c call com*attach() with the freq.
  parameter.
* supio_attach_args get two more fields: a sc_ipl and a sc_arg, both ints.
- com_supio uses the first for interupt establishment (all childs will, as
  soon as they exist) and the 2nd for sc_frequency.
- drsupio passes sc_ipl alway as 5, and for the "com"s, sc_arg as 16*115200
- hyper will pass sc_ipl as 6, and sc_arg as 16 * 460800
1997-09-16 20:34:23 +00:00
thorpej
d1b4b49231 - Use PALcode ops names defined in <machine/pal.h>.
- Fix a few bugs in the software single-stepping support code, where
  VMS PALcode ops were being checked, rather than OSF/1 PALcode ops,
  causing erroneous results in the "exception return" and "unconditional
  branch" predicates.
- Add the BWX instructions ("ldbu", "ldwu", "stb", "stw") to the
  "load" and "store" predicates.
1997-09-16 19:07:19 +00:00
thorpej
a14bab3438 Don't define another copy of the PALcode ops here; direct readers to
<machine/pal.h>.
1997-09-16 19:03:22 +00:00
thorpej
e7c2d59885 Fix an oversight in the last commit. 1997-09-16 19:02:13 +00:00
thorpej
0599db7897 - Define bits used in the "amask" instruction.
- Define processor family IDs returned by the "implver" instruction.
- Prototype alpha_amask().
1997-09-16 06:57:12 +00:00
thorpej
9faf00ea6a Implement alpha_amask(), a stub which reads the "architecture feature mask"
using the "amask" instruction.
1997-09-16 06:54:01 +00:00
thorpej
4fe999c6bf - Add the "amask" and "implver" operate subfunctions.
- Add the "ldbu", "ldwu", "stb", and "stw" major opcodes (BWX instructions).
1997-09-16 06:52:48 +00:00
thorpej
fc80b40481 - Rewrite the functions that provide opcode subfunction names to make it
easier to add instructions that the disassembler doesn't know about
  (the opcode subfunction number is now printed).
- Add the "amask" and "implver" operate subfunctions.
- Add the "ldbu", "ldwu", "stb", and "stw" major opcodes (BWX instructions).
1997-09-16 06:52:16 +00:00
thorpej
d1fbc82e28 From page 6-9 of "Alpha AXP Architecture Reference Manual, Second Edition":
An IMB intruction must be executed after software or I/O devices
	write into the instruction stream or modify the instruction
	stream virtual address mapping, and before the new value is
	fetched as an instruction.

We were missing calls to IMB after mappings were changed, which caused
systems with large I-caches (e.g. my AlphaStation 500) to fail miserably
when mapping in new pages of program text, or when context switching
(I couldn't even get the shell from init!).
1997-09-16 01:52:00 +00:00
thorpej
37b8edbeac In addition to MAS_ABT, check TAR_ABT when doing configuration space
reads.  This is necessary because of newer AlphaStation firmware doing
the Wrong Thing with target aborts behind PCI-PCI bridges, much like they
do the Wrong Thing with master aborts.  Reported by Matthias Drochner.
1997-09-15 23:31:15 +00:00
thorpej
12f6c5aba1 Make sure to clear MAS_ABT if we received one. 1997-09-15 23:01:29 +00:00
thorpej
3c3c6a3b31 Use the symbolic name for "received master abort". 1997-09-15 22:35:54 +00:00
thorpej
8ff22715e8 Define bits in the CIA_ERR register. 1997-09-15 22:34:38 +00:00
thorpej
e97c5f6c50 Update the model string for current reality. 1997-09-13 10:09:39 +00:00
thorpej
9a5f8236b5 Don't panic if we receive a Processor Correctable Error or a System
Correctable Error; report them, instead.

XXX Need a platform-specific machine check handler so we can decode the
logout area on such errors.
1997-09-13 10:01:33 +00:00
thorpej
12b0c2a20a The Alpha console uses BOOTP for network booting, so the NetBSD kernel
should, too.  Enable the BOOTP support in nfs_boot().
1997-09-13 07:42:01 +00:00
thorpej
f784e8dc15 Apparently, new AlphaStation 500/600 firmware has the same problem with
PCI master aborts as eb164 firmware, so use the same workaround mechanism
on all system types (clear error register's master abort bit, and check
it after accessing configuration space), not just eb164's.

This also fixes a bug on eb164's - when making the Alpha port compile
again, I made an error that caused this to not be used on eb164 systems,
either.  Thanks to Matt Jacob for pointing out this goof.
1997-09-13 05:58:07 +00:00
mycroft
16a8787248 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-11 23:01:44 +00:00
drochner
969e506de4 Oops, last change made "make depend" work incompletely. Don't define
a "depend" rule here.
1997-09-06 14:26:47 +00:00
drochner
281398581a -Wall fixes 1997-09-06 14:08:27 +00:00
drochner
3b191b29c0 enable -Wall 1997-09-06 14:07:57 +00:00
drochner
be8a78e9b5 -use DHCP extensions in bootp()
-enable -Wall
1997-09-06 14:06:53 +00:00
drochner
80d9738db8 -Wall fixes 1997-09-06 14:03:55 +00:00
drochner
d99aa8efc0 Collect prototypes here. 1997-09-06 14:02:51 +00:00
drochner
7546d66094 Make sure the <machine/*.h> includes come from current kernel sources,
not from installed userland.
1997-09-06 14:02:13 +00:00
thorpej
ed2ec4869c Update for Chris Demetriou's changes made to the bus.h interface:
- bus_space_copy -> bus_space_copy_region (for consistency)
- "cacheable" argument becomes a "flags" argument instead, with
  BUS_SPACE_MAP_CACHEABLE and BUS_SPACE_MAP_LINEAR flags currently
  defined.
1997-09-06 05:44:07 +00:00
thorpej
1aa35e94d4 s/BUS_BARRIER/BUS_SPACE_BARRIER/g 1997-09-06 05:21:14 +00:00
thorpej
613ee19c60 Add DDB. 1997-09-06 02:04:18 +00:00
thorpej
1f6a8f7d03 Enable DDB. 1997-09-06 02:03:32 +00:00
thorpej
66fdddf6aa Add DDB files. 1997-09-06 02:03:11 +00:00
thorpej
9dcf694bd2 Prototype db_register_value(). 1997-09-06 02:02:25 +00:00
thorpej
998d79d26a Add support for DDB (in-kernel debugger) to NetBSD/alpha, based on
such code for Mach 3's Alpha port.  Initially reworked for NetBSD/alpha
by Chris Demetriou, and then heavily hacked on by me.  Works, but is still
a little rough around the edges.  Known problems:

- Error recovery could be improved a bit.
- Back traces don't work.
- Single-stepping can be flaky, at times.  (Alpha doesn't have hardware
  support for single-stepping, and I'm not entirely convinced the
  MI DDB software-emulated single-stepping logic is 100% correct.)
- Logic for when to drop into DDB needs some improvement.
1997-09-06 02:00:48 +00:00
thorpej
36f209b762 Split off PALcode functions into their own header file. 1997-09-06 01:23:52 +00:00
thorpej
7df7a43ce7 When loading a symbol section, make sure it is aligned. 1997-09-05 21:50:34 +00:00
thorpej
ba8becebfc installbood_cd9660 no longer exists. 1997-09-05 20:20:17 +00:00
thorpej
2f657a6266 Add some debugging code to log sgmap activities. Also, make sure that
we return "no valid mappings" if there is an error while loading the
sgmap.
1997-09-05 02:21:49 +00:00
thorpej
2ecccdc05f Define Status 0 and Status 1 registers. 1997-09-05 02:14:31 +00:00
thorpej
55800b610a Implement bus_dmamem_mmap(). 1997-09-05 02:05:37 +00:00
thorpej
6f4f08b8b2 Add a few more PALcode operations, as documented in pages (II-B) 2-1 through
(II-B) 2-33 of the Alpha AXP Architecture Reference Manual, Second Edition:

* rdps - Read Processor Status, needed by spl* functions.
* cflush - Cache Flush
* rdval - Read System Value
* wripir - Write Interprocessor Interrupt Request
* wrval - Write System Value

cflush, rdval, wripir, and wrval are used in multi-processor environments.
1997-09-03 23:09:04 +00:00
thorpej
032358ab33 From hp300 pmap: use mycroft's pv_entry allocator (from i386 port). 1997-09-03 19:07:32 +00:00
thorpej
f03ded039c Update from hp300 pmap: define an active_user_pmap() macro and use it. 1997-09-03 00:58:13 +00:00
thorpej
0f5f0e115a Define a cdev_satlink_init(). XXX This should be done in an MI header file. 1997-09-03 00:25:01 +00:00
thorpej
6cf58542f9 PMAP_{,DE}ACTIVATE() are no longer exported from the Utah-derived pmap. 1997-09-02 23:52:55 +00:00
thorpej
243aa23148 Add __KERNEL_RCSID() and definitions for ISA satlink driver. 1997-09-02 23:41:04 +00:00
thorpej
44e33a2f5f Update for changes to how bus space tags are initialized. 1997-09-02 20:43:07 +00:00
thorpej
90798596fe Remove references to vm_pmap. 1997-09-02 20:37:23 +00:00
thorpej
e7bb7bdc4b Remove references to vm_pmap. 1997-09-02 20:11:24 +00:00
thorpej
f203067ae3 Adjust for changes to bus space tag initialization. 1997-09-02 20:10:28 +00:00
thorpej
a71cecbec3 Fix a typo. 1997-09-02 20:08:02 +00:00
thorpej
991f4ebc72 cia_bus_ -> cia_swiz_bus_ 1997-09-02 20:07:20 +00:00
thorpej
80e3db443f Apply a change made to other PCI chipsets:
don't expect/provide pci_decompose_tag to be a MI, public function.  It
wasn't intended to be to begin with, and uses of it (e.g. the one in the
'de' driver) are quite likely to be incorrect.
1997-09-02 20:05:28 +00:00
thorpej
3735c7d1d7 Fix a think-o. 1997-09-02 19:39:15 +00:00
thorpej
df1dcf81d0 Oops, missed one. 1997-09-02 19:18:20 +00:00
thorpej
cc5eaab25b More garbage-collection. 1997-09-02 19:16:32 +00:00
thorpej
b2a8424bb5 Garbage-collect loadustp(); the functionality has moved to pmap.old.c 1997-09-02 19:07:22 +00:00
thorpej
2c5c631b71 - Make the pmap_activate() and pmap_deactivate() interfaces consistent my
passing them a proc *, which encapsulates all of the information necessary
  to activate an address space.
- Garbage-collect pmap->pm_stchanged; it's not really used for anything.
1997-09-02 19:06:13 +00:00
thorpej
bf232f7a37 Make the pmap_activate() and pmap_deactivate() interfaces consistent my
passing them a proc *, which encapsulates all of the information necessary
to activate an address space.
1997-09-02 19:04:57 +00:00
thorpej
a47a8a25d6 Adjust for an interface change in a not-NEW_PMAP case in cpu_fork(). 1997-09-02 19:03:58 +00:00
thorpej
f1373b949c - Make the pmap_activate() and pmap_deactivate() interfaces consistent my
passing them a proc *, which encapsulates all of the information necessary
  to activate an address space.
- Garbage-collect pmap->pm_stchanged; it's not really used for anything.
1997-09-02 19:00:53 +00:00
thorpej
5042993a22 - Make the pmap_activate() and pmap_deactivate() interfaces consistent my
passing them a proc *, which encapsulates all of the information necessary
  to activate an address space.
- Clean up some debugging code.
1997-09-02 18:59:02 +00:00
thorpej
364d6a31a7 Adjust some NEW_PMAP code for a slight interface change. 1997-09-02 18:54:28 +00:00
thorpej
511e46c568 Clean up the context switching code a bit:
- Marco-ize the 3 instructions that actually switch to the new process
  context.
- Unify (except for the pmap_deactivate() call) the NEW_PMAP and not-NEW_PMAP
  versions of cpu_switch(), and clean up some comments.
- Tidy up the not-NEW_PMAP bits of switch_exit().
1997-09-02 18:53:26 +00:00
thorpej
d316987784 Garbage-collect VM_PMAP_STPTE, USTP_OFFSET, VM_PMAP. Define VM_MAP_PMAP
instead.
1997-09-02 18:48:58 +00:00
thorpej
b7b3955ce0 Fix a typo: ALPHA_PTE_WRITE needs to include the "user write" bit. 1997-09-02 14:29:37 +00:00
thorpej
6caf625430 Note that a2 and a3 contain bootinfo information passed from the boot
program to alpha_init().
1997-09-02 14:29:00 +00:00
thorpej
d95ac139e0 Oops, wrap cpu_decl()s inside #ifdef _KERNEL/#endif. 1997-09-02 14:25:34 +00:00
thorpej
8b6e894364 Clean this up a bit; defopt has rendered the #undef hacks unnecessary.
Also, put the cpu_decl()s in cpuconf.h, so that platform support files
can pull in the prototypes from there, and pull in options for those
systems for which there is code in the source tree.
1997-09-02 14:19:29 +00:00
thorpej
b7c1c1e321 Pull in alpha/cpuconf.c 1997-09-02 14:06:02 +00:00
thorpej
5c72d6a933 Garbage-collect. 1997-09-02 14:03:10 +00:00
thorpej
e79009b830 Ressurect from the Attic. 1997-09-02 14:00:11 +00:00
thorpej
9db8b6018f Make a note about option headers. 1997-09-02 13:42:49 +00:00
thorpej
1df0782d87 Pull in DEC_3000_300 and DEC_3000_500 options. 1997-09-02 13:29:17 +00:00
thorpej
a4cef84ac7 Pull in DEC_3000_300 option. 1997-09-02 13:26:42 +00:00
thorpej
529d790161 Pull in DEC_AXPPCI_33 option. 1997-09-02 13:25:36 +00:00
thorpej
cb32cf1ece Pull in DEC_EB164 and DEC_KN20AA options. 1997-09-02 13:24:48 +00:00
thorpej
b57ee951d0 Pull in DEC_2100_A50 and DEC_EB64PLUS options. 1997-09-02 13:23:56 +00:00
thorpej
49a2bcd443 Pull in FIX_UNALIGNED_VAX_FP option. 1997-09-02 13:22:53 +00:00
thorpej
693b3e7262 Nuke the idea of <machine/options.h>. It completely defeats the purpose
of fine-grain option dependencies.
1997-09-02 13:17:47 +00:00
thorpej
e234ed15b6 Fix oversight in a previous commit. 1997-09-02 12:54:27 +00:00
thorpej
375ad27ed8 - Garbage-collect all DMA-related initialization, calling a separate
*_dma_init() function instead.
- Pass the appropriate bus dma tag to children.
1997-09-02 12:51:20 +00:00
thorpej
3ac7ac6e63 Garbage-collect. 1997-09-02 12:43:22 +00:00
thorpej
aa7a2876e6 Treat bus space tags more like pci chipset tags and bus dma tags: allocate
them statically within a chipset's state structure, and pass them to
the *_bus_{io,mem}_init() functions.
1997-09-02 12:40:18 +00:00
thorpej
fd01db8b74 Use more complete #include directives when pulling in the chipdep
functions.
1997-09-02 11:09:51 +00:00
thorpej
9199b6645b Clean up RCS IDs. 1997-09-02 10:56:52 +00:00
thorpej
d450130943 Adjust for new names for the PCI i/o and mem swizzle-style access
function files.
1997-09-02 10:43:27 +00:00
thorpej
8f286ca7f3 Renamed to pci_swiz_bus_{io,mem}_chipdep.c by repository copy. 1997-09-02 10:39:15 +00:00
thorpej
8998fa1198 Revive these files from the Attic. 1997-09-02 10:26:55 +00:00
thorpej
3220411801 Define PAL_cflush, PAL_ipir, and PAL_OSF1_wrperfmon PALcode operations. 1997-08-29 23:17:37 +00:00
bouyer
6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
thorpej
38f15737fd Protect access to kmem_map with splimp()/splx(). From Chuck Cranor. 1997-08-25 21:17:48 +00:00
cgd
ce0a826c55 fix various bogons: copy SCSIVERBOSE option (still commented out) and ISA lc
driver to ALPHA.  Also, sort them into their respective lists correctly,
rather than punting completely (SCSIVERBOSE), or mis-sorting(!) (lc).
1997-08-24 06:40:18 +00:00
cgd
1173f77359 fix spaces/tabs lossage: if we're going to do "options<space><tab>", be
consistent about it (fix it in all files)!  Also, there's no point at all
in doing "file-system<space><tab>", so kill the spaces.
1997-08-24 06:37:12 +00:00
mjacob
6ac7f6248f add a before tab to SCSIVERBOSE 1997-08-23 19:16:06 +00:00
drochner
44224e6fd5 Adapt to serial console attachment changes. 1997-08-23 14:28:16 +00:00
kleink
dc91486be3 bootp vs. mop: don't clobber `netboot' flag. 1997-08-23 10:18:33 +00:00
cgd
fc2e81c6d5 lie to the compiler when doing mkdep so that it depends .s files correctly. 1997-08-22 06:37:17 +00:00
mjacob
0e3c7b7f44 Commented out SCSIVERBOSE option; reference 1997-08-20 18:35:55 +00:00
augustss
332ad95e76 Change the MI audio driver so it attaches to the MD driver in the
normal way.  This requires adding a line to the config files to
get audio to work again.
1997-08-19 23:49:33 +00:00
mjacob
23d0cae1eb It helps streaming performance substantially to enable bursts and more up hose
packets. It's not clear whether latency will be affected much. It could be.
However, for the time being, getting full rates out of HIPPI or SCSI are what
interests us at NASA, so we'll hew to this bias.
1997-08-16 01:18:30 +00:00
mjacob
92995a3a9f a minor bit of cleanup 1997-08-16 01:16:33 +00:00
mjacob
ecd1b40ab3 Add some PCIA_CTL defines. 1997-08-16 01:14:32 +00:00
cgd
9d532f482c don't forget to set hwrpbsize to zero explicitly 1997-08-13 20:49:56 +00:00
cgd
bf596ddb89 don't define __BUS_SPACE_COMPAT_OLDDEFS if it's already been defined 1997-08-13 02:53:03 +00:00
cgd
9b263847db clean up RCS IDs 1997-08-12 06:08:21 +00:00
cgd
73596f5504 sort miata defs 1997-08-12 02:59:43 +00:00
cgd
5544e7e348 update for moved files, placeholder for miata flag header 1997-08-12 02:08:12 +00:00
cgd
0bc9a09170 cia_bus_* -> cia_swiz_bus_* 1997-08-12 00:58:01 +00:00
cgd
46d5a50540 rewire a few file dependencies for cleanliness 1997-08-12 00:46:11 +00:00
cgd
4b8f75045a define a defopt for the miata systype 1997-08-12 00:04:14 +00:00
cgd
2d184c2262 clean up bootinfo v1 struct a bit: add a hwrpb size field (in a backward-
compatible way), and clean up the comments to make things a bit clearer.
1997-08-11 23:43:38 +00:00
cgd
b38691223e s/bogus/unknown/; just because we don't know about it doesn't mean it's wrong 1997-08-11 22:46:37 +00:00
matt
48aa5a6912 Add lc* line for DEC EtherWORKS III (it was written initially for a
NetBSD/alpha user).
1997-07-31 22:22:08 +00:00
cgd
bd3cab1531 fix comment glitch in the last change 1997-07-25 07:01:42 +00:00
cgd
d86134ca68 fill in the new pointers in the bootinfo_v1 structure. 1997-07-25 07:00:42 +00:00
cgd
395f4bac6b clean up bootinfo structure comments so they're more readable (to me,
at least 8-).  Add structure offssets for structure members, so we
know how much space we're using.  Make the version in the bootinfo
structure be a u_long, so there's no implicit padding in the structure.
Add a few more pointers to the bootinfo v1 structure, which will all
be set to NULL for now.
1997-07-25 06:59:47 +00:00
thorpej
8e341ad358 If loading an Elf kernel, load the symbol table immediately after
the kernel image.
1997-07-25 00:09:01 +00:00
thorpej
f65454b2a6 Set up a version 1 bootinfo for the kernel. 1997-07-25 00:07:56 +00:00
thorpej
f56c3c315f More DDB support:
- Add support for software single-stepping (Alpha does not have hardware
  support for single-stepping)
- Alpha uses Elf64 symbols.
1997-07-25 00:06:25 +00:00
thorpej
08d4c7e688 Update alpha_init() prototype; takes two more args. 1997-07-25 00:04:36 +00:00
thorpej
264f1c5acc Define the bootinfo magic number and bootinfo (version 1) structure. 1997-07-25 00:03:47 +00:00
thorpej
4d01f6fbee Add some DDB glue:
- Allow BUGCHK and BPT instruction faults in kernel mode if DDB is enabled,
  since they are used to invoke the debugger.
- Add a comment about how we'd like to invoke DDB on a trap panic condition,
  in a perfect world.
1997-07-24 23:55:01 +00:00
thorpej
020d0208d7 - Two additional arguments to alpha_init(): bootinfo magic number, and
pointer to boot program's bootinfo structure.  If the bootinfo magic
  matches, save a copy of the bootinfo structure, and use it to determine
  booted kernel name, the boot flags, and the location of the kernel symbol
  table.  If the magic number does not match, revert to the old method
  of finding this information (sans symbol table info).
- Add some additonal DDB glue.
1997-07-24 23:52:10 +00:00
cgd
cfe8f450c7 update these to use the new 'correct' names for functions/constants
in bus.h.
1997-07-23 08:05:36 +00:00
cgd
9fae9984b0 remove a couple of outdated comments (pointed out by Kenneth Stailey 1997-07-23 07:56:05 +00:00
cgd
28b1691f4d when i was documenting the bus_space interfaces (the document
was sent to developers, but will eventually become a man page or
something), i noticed a few in various names:
(1) _map and _alloc should take a flags argument, rather than a
    'cacheable' boolean.
(2) BUS_BARRIER_* flags should be BUS_SPACE_BARRIER_*.
(3) bus_space_copy_* should be bus_space_copy_region_* for consistency
    with other region ops.
Fix all of these (in a backward-compatible way, at least for now).  Redefine
internal usees of those names to use the new names.  Also, while at it,
clean up the copy functions (remove unnecessary variables) and make sure
that they and other functions conform to the spec.
1997-07-23 07:47:51 +00:00
cgd
391589011c note differences in symbol names between ports (underscores). Also,
don't assume that the names/values to be put into defines in assym.h
start with the first .ascii in the assembler file; look for the array
start symbol, instead.
1997-07-23 07:06:59 +00:00
cgd
306cb0bd7e clean up RCS id. also, use __RCSID rather than __KERNEL_RCSID, since
this file isn't actually compiled into the kernel.
1997-07-23 06:23:14 +00:00
cgd
ee60040e78 clean up rcs id 1997-07-23 06:21:57 +00:00
jonathan
7d9e8102ad Use new <dev/dec/clockvar.h> and and <dev/dec/mcclokvar.h>.
Garbage-collect original headers from sys/arch/alpha.
1997-07-22 18:50:52 +00:00
drochner
bdb232d2b6 Don't use <lib/libsa/if_ether.h> anymore. This was a copy of the
old (before ARP changes) <netinet/if_ether.h>, intended for
temporary use.
1997-07-22 17:41:01 +00:00
jonathan
064c4e515c Create sys/dev/dec and cleanup sys/dev/tc:
* Move clockvar.h (header file for generic clock code) to sys/dev/dec.
* Move if_le_dec.c with DEC padded LANCE-dma (pmax/pmax, ioasic, vax 3400)
  to sys/dev/dec.  Remove from sys/dev/tc.
* Declare attribute le_dec_subr in /sys/dev/dec/files.dec,
  use if_le_dec.c when it's defined.
* Move  IOCTL asic declaration from pmax and Alpha MD machine
  files to sys/dev/tc/files.tc.
* move TurboChannel and ioasic if_le attachments from pmax and Alpha machine
  config files to /sys/dev/tc/files.tc.  Add le_dec_subr attribute.
* Add if_le_dec attribute to if_le_ibus (pmax ds3100 pmax) LANCE attachment.
1997-07-22 04:32:13 +00:00
cgd
5579e9d3bd * move COPTS out of the 'program variables' section of the makefile and
into the 'argument variables' section.
* define variables for CPP and SIZE, defaulting to cpp and size, respectively.
* kill HOSTED_C*, since it's no longer used.
* use ${SIZE} rather than using 'size' directly, so it can be overridden for
cross-builds.
* generate assym.h via assym.s and an awk script.
1997-07-19 10:12:13 +00:00
cgd
75b9c1bce1 convert to use a genassym.c that produces awk-able assembler output, a
la the sun3 port.  This makes cross-compilation easier.
1997-07-19 10:02:53 +00:00
cgd
429a941288 don't expect/provide pci_decompose_tag to be a MI, public function. It
wasn't intended to be to begin with, and uses of it (e.g. the one in the
'de' driver) are quite likely to be incorrect.
1997-07-19 09:49:39 +00:00
cgd
866bc1b267 sync with dev/isa/wd.c rev. 1.162:
>date: 1997/07/18 00:26:22;  author: fvdl;  state: Exp;  lines: +10 -10
>Work around possible race condition with 2 drives on one controller
>in wd_get_parms. PR 3773, from Onno van der Linden (onno@simplex.nl)
S: ----------------------------------------------------------------------
1997-07-19 06:39:22 +00:00
thorpej
7a8a1f3f1a Turn the extern declaration of __flt_rounds() into a proper prototype. 1997-07-17 21:36:03 +00:00
jtk
ca1bba150a use locator defines in "locators.h" to index cf_loc[] 1997-07-17 03:16:39 +00:00
jtk
320892f8db oops, WSCONSCF_CONSOLE should be WSCONSDEVCF_CONSOLE 1997-07-17 01:33:04 +00:00
jtk
594536a71f use locator defines in "locators.h" to index cf_loc[] 1997-07-17 01:28:54 +00:00
jtk
37f9c6bd88 use locator defines in "locators.h" to index cf_loc[] 1997-07-17 01:17:45 +00:00
hpeyerl
6d4fa106d1 Move satlink0 to ALPHA. 1997-07-13 21:24:14 +00:00
hpeyerl
16371837ec Satellite receiver driver for ISA cards from PlanetConnect by Jason and
Herb for Canada Connect Corp.
1997-07-13 19:32:00 +00:00
mellon
eb51f51303 Convert spaces to tabs following option declarations 1997-07-10 20:46:37 +00:00
cgd
fce829ca4b mark prototypes for static inline functions as possibly unused
(with __attribute__ ((unused))), to avoid generating warnings when
compiling without optimization but with the default warning flags.
1997-07-07 20:37:34 +00:00
mjacob
ff21c8f511 Turn of 'unclaimed interrupt' messages- we know about them already- we can't
really fix this as yet.
1997-06-24 18:08:59 +00:00
thorpej
84166e5151 foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
from the disklabel accordingly.
1997-06-24 00:28:36 +00:00
mrg
f66658c8e0 move man pages into share/man. 1997-06-22 05:05:17 +00:00
cjs
ecada6375b bzero() wants pointers, not ints, for its first arg. 1997-06-20 07:06:43 +00:00
pk
fe15d6603a Remove spurious line left over in previous commit.
Also, use parentheses like in <dev/isa/wd.c>
1997-06-18 22:25:53 +00:00
pk
f5bf0d3701 wdsize(): only call wdopen()/wdclose() if not already open, per the
current `openmask'.
1997-06-18 20:39:55 +00:00
thorpej
dacadc3aff Add the ext2fs file system. 1997-06-13 00:44:13 +00:00
mrg
1258c8d25b remove now obsolete "swap on..." lines. 1997-06-12 18:41:58 +00:00
mrg
552af779d2 bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:46:19 +00:00
mrg
dc6a98e92c bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:09:23 +00:00
veego
6ab737a609 Initialize machine from MACHINE and machine_arch from MACHINE_ARCH. 1997-06-08 23:59:57 +00:00
thorpej
c8615e2f7c Add code to decode the PCIA_RESENT register. Display information on
the PCIA revision, and whether or not the STD I/O EISA bridge is
present.  Decode, but don't bother displaying, the power consumption
information for each PCI slot.
1997-06-08 07:59:20 +00:00
thorpej
183655c71b Add bit definitions for the PCIA_PRESENT register. 1997-06-08 07:57:40 +00:00
thorpej
8e2e0fdc91 Don't print the hose number here; that's done in kftprint(). 1997-06-08 07:03:18 +00:00
thorpej
42dde867d8 Print the hose number in kftprint(). 1997-06-08 07:02:45 +00:00
cgd
712748bc64 remove extraneous, and now incorrect, cpu_decl()s. 1997-06-07 19:08:01 +00:00
thorpej
78cd3ba57f bus_dmamap_t's always have a pointer to an sgmap cookie. (oops, forgot
to commit this to the branch!)
1997-06-07 05:35:06 +00:00
thorpej
413f678ce0 Pull the thorpej-bus-dma branch into the mainline. 1997-06-07 05:29:33 +00:00
thorpej
46b89d7739 Pull thorpej-bus-dma branch into mainline. 1997-06-06 23:54:24 +00:00
thorpej
11e78a6b0d Pull thorpej-bus-dma branch into mainline. 1997-06-06 23:43:45 +00:00
veego
029d774d1a Add 'char machine_arch[] = "xxx";' for the new sysctl hw.machine_arch. 1997-06-06 23:31:23 +00:00
cgd
2a9a4b6fde fix slight bogons in splhigh() usage, that were introduced when the
behaviour of splhigh() was changed.  The new behaviour raised the level to
IPL_HIGH if it was lower, but left it alone if the same or higher.  Apparently
the firmware transfers to NetBSD with all interrupts blocked, or something
else blocks all interrupts (including machine checks) before the code
is really started.  This meant that machine checks were blocked during
device probes, leading to false device probes _and_ an unexpected (and
therefore fatal) machine check at the spl0() after autoconfiguration.
1997-06-06 19:52:42 +00:00
thorpej
63ac628f77 Oops, last commit was meant for the thorpej-bus-dma branch, not the
trunk.
1997-06-06 02:42:38 +00:00
thorpej
4f5d0d3849 Split DEC 3000/300 and 3000/500 DMA functions into separate files,
suggested by Chris Demetriou <cgd@netbsd.org>.
1997-06-06 02:41:09 +00:00
cgd
891e8db771 two more slight bogons 1997-06-05 17:36:26 +00:00
cgd
1c33c6bff8 actually, declare _splraise() as an inline function, because:
(1) it was using 'max', and some functions use a variable
	    of that name (*sigh*), and
	(2) that makes it easier to be a bit trickier, and only call
	    swpipl if changing the IPL.
1997-06-05 17:31:16 +00:00
cgd
100dbb8a3c parens around macro arg (this is an old one) 1997-06-05 17:20:17 +00:00
cgd
57c012e265 make sure that splnet(), splbio(), splimp(), spltty(), splclock(),
splstatclock(), and splhigh() all _raise_ the IPL.  (splhigh() is _not_
the highest possible IPL; mcheck is...)
1997-06-05 17:08:06 +00:00
thorpej
d19ef97a43 Add fxp* at pci? declarations, marked untested on the Alpha, but they
compile.
1997-06-05 02:29:56 +00:00
cgd
86b5c1e498 make REGVAL macros use volatile pointers 1997-06-04 01:47:15 +00:00
cgd
079e0c6bff make REGVAL macros use volatile pointers 1997-06-03 21:54:02 +00:00
cgd
ba43d7fec5 do not spew about processes which have had fatal traps, unless DEBUG
is defined.  Actually, it never should do it, but DEBUG should be 'never'
for most users.
1997-06-03 17:38:50 +00:00
cgd
e2bc183e52 remove DEBUG from GENERIC kernel 1997-06-03 17:37:58 +00:00
thorpej
4ae176cb0a Ooops! Not meant for the trunk; these need to be added to the branch! 1997-06-03 07:01:58 +00:00
thorpej
36e7d039c0 Add "typedep" code to deal with both the 32-bit and 64-bit PTE formats
found on Alpha workstation and server PCI bridge chipsets.
1997-06-03 07:00:20 +00:00
cgd
e4f0b64254 Adjust gcc -Wuninitialized warning initializers (or add them) so that
compliation without DEBUG and/or DIAGNOSTIC happens without errors.
Note that all such initializations in the Alpha port are marked with "XXX
gcc -Wuninitialized".  As far as I'm concerned, the one or two times
-Wuninitialized has saved me from problems are worth the (very minor) cost
involved with the initializations, esp. if it's noted why the
initializations are done.  This was prompted by PR#3690, from Ted Lemon.
1997-05-31 05:46:03 +00:00
mycroft
ad19544997 Remove bogus .PATHs. 1997-05-18 12:14:55 +00:00
gwr
e2a58b69f7 Add #define __VM_PMAP_HACK as a temporary measure. 1997-05-16 21:35:30 +00:00
mjacob
9854f9917e Print some more info on unresolved user traps, mostly for DIAGNOSTIC. 1997-05-15 18:33:47 +00:00
mjacob
e005d20961 Allow MAXPHYS to be specified as a config file option. 1997-05-15 17:27:15 +00:00
thorpej
2494f148f4 - In sccmatch(), check any user-specified offset, allowing scc unit numbers
to be nailed down.  From Ken Hornstein <kenh@cmf.nrl.navy.mil>, PR #3626,
  slightly modified to allow wildcarded offsets.
- Blow away the cf->cf_unit check in sccmatch(); it's bogus.
1997-05-15 02:15:55 +00:00
mycroft
cc4a1553a1 Eliminate bogus redefinitions of standard targets. 1997-05-09 07:50:03 +00:00
thorpej
47aae56862 Sync w/ SPARC port, from Paul Krannenburg <pk@netbsd.org>:
Remove esp FLUSH when residual bytes are present in FIFO, the ncr53c9x
driver will flush when necessary. Doing the FLUSH here interferes
with DMA-enabled target selection.
1997-05-08 01:33:49 +00:00
mycroft
84bca5d679 Don't use _SUBDIRUSE outside of bsd.subdir.mk. 1997-05-07 17:28:47 +00:00
mjacob
11fc3c2a7a In case someone doesn't compile in DEBUG we need to still
snag the msgbuf. Also, observe protocols about message buffer
being 'mapped'.
1997-05-07 17:13:32 +00:00
mjacob
b9e2002bb5 Oops- Really should do local files before common. 1997-05-04 01:53:01 +00:00
mjacob
f534e05161 Fix tags target. 1997-05-04 01:49:14 +00:00
cjs
85207f1f0c Oops. ep at eisa is still `untested.' 1997-05-03 21:27:24 +00:00
cjs
4072012b2b Ep driver on ISA bus is no longer untested. Also optimistically
removed the `untested' designation from the EISA-bus version, since
there's no reason at all why it won't work.
1997-05-01 07:11:11 +00:00
cgd
f5bfcda4fe comment out text after #endif. "Pasto!" pointed out by Kevin Sullivan
in PR 3529.
1997-04-24 23:58:24 +00:00
cgd
1b16a9577a note eb64+/AlphaPC 64 support 1997-04-23 20:52:45 +00:00
cgd
fc8625db4f minimal changes to make hacked wd driver work under a different name.
It is configured (in config files) as 'awdc'/'awd', but shows up as
'wdc'/'wd', so that a minimal amount of code had to be modified to make
the name change work.  This is only intended to be temporary, anyway.
1997-04-21 14:47:33 +00:00