Commit Graph

9304 Commits

Author SHA1 Message Date
thorpej
41cf6f071f Use a "match/attach" rather than "init" scheme for probing devices.
This is a step towards getting the drivers ready for new config.

Clean up namespace, remove several instances of global arrays.  Instead,
use a softc to carry state around.  Where possible, pass a pointer to the
softc rather than a unit number.
1995-12-02 18:15:50 +00:00
thorpej
3ac76475ea Use a "match/attach" rather than "init" scheme for probing devices.
This is a step towards getting drivers prepared for new config.
1995-12-02 18:11:21 +00:00
thorpej
de5ce5f48c Change "hilloop" to "hilsoftc" and make slightly more new config-friendly.
Remove all uses of curproc.
1995-12-02 02:48:47 +00:00
thorpej
b618522128 Make the DMA controller driver a little more new config-friendly. Still
more work to do, but this is a step in the right direction.
1995-12-02 02:46:45 +00:00
leo
5f2ab2109f Use files.fpe 1995-12-01 19:53:07 +00:00
leo
ca1cc64e20 Remove forgotten #endif 1995-12-01 19:51:53 +00:00
ragge
45d824de05 DELUA/DENUA & DELQA/DEQNA Ethernet adapters converted to new config. 1995-12-01 19:37:55 +00:00
ragge
2e654caa73 UBA converted to new config. (uba's now can be *'ed). Bug causing
DMA writes to nonexistent memory pages fixed. Code for old config
of non-mass-storage devices removed. (they now must use new config).
1995-12-01 19:22:56 +00:00
briggs
1b03745209 cmdlen-2 is right for the last byte of the command. Ifdef out for right now,
though, as some devices apparently don't support linked commands and will
reject commands that have the link bit set in them.
1995-12-01 15:14:11 +00:00
mycroft
3fbc1f7e9b Enable flock(2). 1995-12-01 07:26:58 +00:00
pk
8a1606d530 Don't return `XS_DRIVER_STUFFUP' too easily; this can hose buffer cache
writes. Say XS_TIMEOUT in stead so the scsi code will retry.
1995-12-01 01:00:55 +00:00
pk
fe934606c7 NBPG may not be computable by the preprocessor. Make "do clustered io"
a run-time decision. Note: the compiler can optimize it away.
1995-12-01 00:47:33 +00:00
leo
e267646321 KNF-ify 1995-11-30 21:55:01 +00:00
leo
291d8cbf3a Add kernel option for separate {stat,prof}clock 1995-11-30 21:52:46 +00:00
ws
10ebaa7036 Don't overwrite dirclust, it's needed later on 1995-11-30 19:00:57 +00:00
ws
9dd5549e5d Fix thinko with block boundaries in directories 1995-11-30 17:50:26 +00:00
pk
c069674663 Handle PRU_CONTROL (David Maltz; PR#1664). 1995-11-30 16:42:18 +00:00
briggs
d416ec2cc9 Put the link flag in the right place.
Pointed out by Paul@pgoyette.bdt.com (Paul Goyette).
1995-11-30 14:25:40 +00:00
pk
7a7ca00077 Add quirk for Exabyte 8200/rev. 263H (from Paul Goyette; PR#1797). 1995-11-30 10:12:04 +00:00
jtc
0cd793449e merge in changes from 1.1 release branch 1995-11-30 00:56:23 +00:00
pk
a2a4da4874 Merge changes from sun3 port; per Gordon. 1995-11-29 23:43:42 +00:00
pk
ee08e9085b Extend the size of the "soft" FIFOs which reportedly reduces the number
of FIFO overflows on high baud rates.
However, doing so on all 4 ports would cost a whopping 64KB (at 4096 entries
per FIFO) of kernel memory. So, the FIFOs are now allocated at attach time
allowing the size for the keyboard and mouse ports to be reduced (to 128)
which should be adequate for the 1200 baud they use.
1995-11-29 23:41:31 +00:00
pk
3b2862c858 Make it work on little-endian monochrome buffers; per Ted. 1995-11-29 22:12:58 +00:00
pk
12bfe2e68e Must change u_long' to u_int32_t' as Jason pointed out. 1995-11-29 22:03:53 +00:00
ws
f4d1bdb04f Fix thinko in last 1995-11-29 18:28:51 +00:00
ws
debbf2f60e - Add support for Win'95 separate creation/modification/access timestamps
- Re-introduce lowercase filenames for non-Win'95-filesystems
1995-11-29 15:08:32 +00:00
thorpej
87093145ce Use bzero() instead of memset(..., 0, ...). 1995-11-29 06:12:08 +00:00
pk
6e53c6a5fd In probe[gs]et() there's no need to check against KERNBASE, as pointed
out by David Jones and Chris Torek.
1995-11-29 01:52:41 +00:00
pk
e9a919b88f Code from Jason to better configure /dev/fb. 1995-11-29 01:45:36 +00:00
pk
ce474272f1 Prevent synch negotiation on ESP100 chips 1995-11-28 22:49:31 +00:00
pk
9bf3251e46 Lots of major and minor bug fixes and changes.
- properly do MSG_IN handshaking, so we can actually receive multi-byte msgs.
- do synch negotiation (now that the above works).
- handle disconnects.
There are a few trial-and-error bits at points where the docs I have are
particularly ambiguous about the state of chip and/or SCSI bus.

Things to do:
- more cleanup
- deal with MSG_OUT phase better
- keep some "config reg 3" bits per target (ie. FASTCLK and FASTSCSI).
1995-11-28 20:49:12 +00:00
pk
def161af38 Careful with signed chars (caddr_t *!).
Merge in 1.1 changes.
1995-11-28 20:26:59 +00:00
thorpej
da66c0a255 Enable COMPAT_HPUX. 1995-11-28 08:48:18 +00:00
thorpej
38b63746fb Note the new status of COMPAT_HPUX, but keep is disabled by default. 1995-11-28 08:47:38 +00:00
thorpej
0d02785d6c Re-ran makesyscalls.sh; syscalls.conf and syscalls.master chagned. 1995-11-28 08:43:58 +00:00
thorpej
0ec193c9b2 Get COMPAT_HPUX partially working on the hp300. Notable improvements:
* It compiles (and links).
	* Make use of "/emul/hpux" where applicable.
	* Untangle a bit, pulling some funtions from the monolithic
	  hpux_compat.c into hpux_file.c, hpux_exec.c, etc.
	* Fix a couple of bugs.
Yet to do:
	* Move hp300-specific functions into hp300/hp300/hpux_machdep.c.
	* Make everything work properly (you laugh...)

These changes are sufficient to run some simple HP-UX 9.x executables,
including ls(1) (which will read password and group information from the
YP server correctly, albeit slowly), a simple "hello world", uname(1),
and a few other odds and ends.  Dynamically linked executables work, and
demand-paging _seems_ to work properly.  Major problems:
	* socket and/or signal handling appears to need some work yet.
	* 99% sure I didn't do exactly the right thing adjusting for the
	  fact that "kstack" is gone now.
	* ktrace(1)'ing some executables (HP-UX telnet(1) is what I tried)
	  causes the HP-UX executable to dump core with a SIGSEGV for an
	  as of yet unknown reason.

This is mostly meant as a checkpoint/snapshot, to make it easier for others
to track progress on this code, and hack on it themselves.  It's certainly
better off now than before.
1995-11-28 08:39:45 +00:00
thorpej
de437ed1b6 Setup the stack gap for COMPAT_HPUX, too. 1995-11-28 08:16:47 +00:00
thorpej
63b0022b86 Update a #include for the "new" location of HP-UX emulation code. 1995-11-28 08:12:37 +00:00
thorpej
ffcccc41bd Compile compat/hpux/hpux_exec.c and compat/hpux/hpux_file.c if COMPAT_HPUX
is defined.
1995-11-28 08:10:09 +00:00
thorpej
a5d3f68110 Add hooks for COMPAT_HPUX. 1995-11-28 08:07:25 +00:00
cgd
29d9eeabd1 kill these. they're no longer used. 1995-11-27 23:28:00 +00:00
mycroft
e2baea19f3 Make sure vt_coldinit() is called before vt_coldmalloc(). 1995-11-26 21:01:16 +00:00
mellon
55980119ec Remove some cruft 1995-11-25 10:39:57 +00:00
mellon
8b29652e06 Fix colormap initialization for monochrome pmax framebuffer 1995-11-25 10:38:42 +00:00
mellon
db99c1a30b Provide compiler tool definitions for cross compilation. 1995-11-25 05:55:38 +00:00
cgd
afc45b4ab7 pull in ECOFF exec code with EXEC_ECOFF 1995-11-25 01:34:38 +00:00
cgd
93a78af882 no DDB 1995-11-25 01:32:34 +00:00
cgd
e6dc5f55db update for am7990var.h, am7990.c changes 1995-11-25 01:31:09 +00:00
cgd
0f7f390b49 allow bus-specific lance drivers to use machine-independent buffer/descriptor
copy functions, and convert isa and pmax drivers to do so.
1995-11-25 01:23:51 +00:00
cgd
57dc31272e pull in ecoff_exec.c with 'options EXEC_ECOFF', as well as with compat
options, so that it can be used in kernels (e.g. alpha) w/o need for
compat options.
1995-11-25 00:37:39 +00:00
cgd
523c12167c fix definition of nullcnpollc, and add a prototype for it. 1995-11-25 00:03:35 +00:00
cgd
540ab1b88d since 'long's in this code are meant to be exactly 32-bits wide, use
'int32_t's instead, so that this code is usable on the alpha.
1995-11-24 23:50:51 +00:00
cgd
13bf4371ae delete extra (blank) line in comment block 1995-11-24 23:45:40 +00:00
cgd
f5655b153b fix paste-o 1995-11-24 22:13:08 +00:00
cgd
deb4082f80 wholesale update from my NetBSD/Alpha source tree. Includes:
Support for AXPpci CPUs,
	Support for AlphaStation 600 CPUs,
	new boot block structure, which requires an 'installboot'
	    program and works a lot like the NetBSD/sparc boot blocks.
1995-11-23 02:33:17 +00:00
cgd
5cd2526d5c db_lastsym (cast from pointer) should be long not int. db_maxoff -> db_expr_t 1995-11-23 01:42:08 +00:00
cgd
b69dc1f62c move ../sys/syscallargs.h out of the way when making new version,
just like we do for init_sysent.c, syscalls.c, and ../sys/syscall.h.
1995-11-22 23:11:32 +00:00
cgd
a321588516 update for new syscalls.master 1995-11-22 23:09:26 +00:00
cgd
a2ce90f34c change definition of profil() to make it 64-bit friendly. This has
no practical consequence on 32-bit systems.  old prototype was
int profil(char *, int, int, int), and new one is int profile(char *,
size_t, u_long, u_int).  the size_t is the size of the buffer,
and the u_long is the 'starting offset'.  (I changed the last int
to u_int, because it's treated as a u_int everywhere, and isn't
logically a signed value.)
1995-11-22 23:07:19 +00:00
cgd
895c6508ee represent profiling size, scale more correctly (as size_t, u_int, resp.) 1995-11-22 23:01:53 +00:00
briggs
93d836857c RAMDISK stuff. 1995-11-21 05:06:28 +00:00
briggs
447b897889 Define DST and TIMEZONE 1995-11-21 05:05:51 +00:00
briggs
e5a588356f Small RAMDISK kernel. 1995-11-21 05:02:02 +00:00
briggs
369e3de013 Get rid of obsolete time specs. 1995-11-21 05:00:34 +00:00
briggs
f9ba6adcd7 Add rd_root.c from sun3. 1995-11-21 04:53:20 +00:00
briggs
0d91c3ff0b Back the sccClkConst off to 115200 for several classes of machines. 1995-11-21 04:00:43 +00:00
briggs
9afe66efa5 Add rd support at the same address as the Sun3. 1995-11-21 03:39:45 +00:00
cgd
dfad729a16 make netinet work on systems where pointers and longs are 64 bits
(like the alpha).  Biggest problem: IP headers were overlayed with
structure which included pointers, and which therefore didn't overlay
properly on 64-bit machines.  Solution: instead of threading pointers
through IP header overlays, add a "queue element" structure to do
the threading, and point it at the ip headers.
1995-11-21 01:07:34 +00:00
cgd
0917ae9d17 define M_IPQ, for IP queue (IP reassembly queue, TCP sequence queue) entries. 1995-11-21 01:00:25 +00:00
cgd
c20292b01b fix casts; should cast pointers to longs, not ints. 1995-11-20 20:43:33 +00:00
thorpej
b92924680d Garbage collect some stuff that isn't used. Rename the relocation info
structure to be consistent with the other m68k ports.  XXX that struct needs
to move to an m68k common file.
1995-11-20 01:15:26 +00:00
thorpej
22ab83eff0 We don't have, and have never had, a kern/exec_hpux.c 1995-11-20 01:01:05 +00:00
thorpej
df59198ddc Put doshutdownhooks() in the right place. Pointed out by cgd. 1995-11-20 00:58:54 +00:00
thorpej
8272af3168 Re-arrange boot() a bit; call doshutdownhooks(), if we're rebooting, say so,
etc.  Modeled after the alpha port's boot().
1995-11-19 23:24:15 +00:00
thorpej
8122bc0e33 Prevent the ITE_ACTIVE bit from being cleared in iteoff() if the ITE_ISCONS
bit is set.  Works around the fact that the last process to have the
console open exits, the bit is cleared, and "syncing disks...", etc. is
not seen if the system is rebooted with reboot(8).  Fixes PR #1455.
1995-11-19 23:14:22 +00:00
thorpej
31430a5279 Cosmetically change one #include directive. 1995-11-19 22:32:38 +00:00
thorpej
905cb9dda1 Re-arrange things such that we can print out disk geometry regardless of
COMPAT_NOLABEL.

XXX One day when the world doesn't assume DEV_BSIZE bytes/sector, we'll be
able to actually use the stuff sensed from the drive, rather than a table.
1995-11-19 19:07:18 +00:00
thorpej
d0e01feb5c Do an indirect driver a little more like an indirect driver would like to
be done.  Set up a structure filled with function pointers in the
controller-specific probe routines, and jump through them, instead of
if()'ing our way though each operation.

Be a little more discriptive; print out the controller type found
during the probe in a way that's somewhat meaningful.
1995-11-19 17:57:15 +00:00
gwr
97fc3b8321 get size of softc right 1995-11-17 23:33:34 +00:00
gwr
86f10d8343 Switch to ncr_si (will just do PIO for now) and cleanup 1995-11-17 23:31:11 +00:00
gwr
0ee10ff487 Give translated label a valid magic number 1995-11-17 23:30:19 +00:00
gwr
c01eb77976 cosmetic 1995-11-17 23:29:30 +00:00
gwr
5d5c8d0d4b Latest, greatest version of the new NCR driver.
DMA works!  Interrupts work!  Disconnect/reselect works!
To be paranoid, leave that all disabled for now...
1995-11-17 23:27:41 +00:00
gwr
6b20139b41 Add copyright 1995-11-17 23:24:56 +00:00
gwr
92b8a2d9e5 just cleanup 1995-11-17 23:23:44 +00:00
jtc
ce0b404f4e fixup copyright notice before the release 1995-11-17 06:47:27 +00:00
cgd
e9ef628234 don't link against libkern, so that boot blocks will work properly.
(pulled down from 1.1 release branch.)
1995-11-16 22:38:16 +00:00
thorpej
b2f1fb085b Fix transposed copyin() args, from Niklas Hallqvist <niklas@appli.se>. 1995-11-16 18:42:05 +00:00
cgd
bd4a0a45ea note that COMPAT_OSF1 requires ECOFF, in a comment. 1995-11-15 05:42:17 +00:00
pk
0c031adc76 Not all v2 proms understand the `mac-address' word (from Theo). 1995-11-14 15:04:01 +00:00
briggs
83604dcbd6 Add call to doshutdownhooks() before we attempt to reboot. 1995-11-14 04:05:49 +00:00
christos
d125a07adb My previous changes broke the pcmcia support. For now assume that all non
PCI cards look identical to ISA cards.
1995-11-13 20:50:22 +00:00
christos
7a68425190 Don't use the softc at probe time on pci devices because it has not been
allocated yet. Thanks Charles...
1995-11-12 20:55:26 +00:00
ragge
826b97635f No longer needed; interrupt vectors now dynamic allocated. 1995-11-12 15:19:49 +00:00
ragge
bfc2ca40b8 Function call definition on stack. (calls frame) 1995-11-12 15:07:30 +00:00
ragge
763fd0a011 Macros for locore mapping added. 1995-11-12 14:41:41 +00:00
ragge
d96cac4b8e pt_entry_t now struct pte. cleanup. 1995-11-12 14:40:26 +00:00
ragge
e6db353726 extern struct scb *scb; added. 1995-11-12 14:38:31 +00:00
ragge
7aac03e745 11/750 specific things moved to ka750.h 1995-11-12 14:37:18 +00:00
ragge
2a23f39e82 struct ivec_dsp for interrupt vector allocation added. 1995-11-12 14:33:11 +00:00
mycroft
7edc899fdd ffs -> ufs 1995-11-11 22:00:15 +00:00
pk
c7d1d39b3e dk_device => device in controller structure (noted by Jason Thorpe). 1995-11-11 21:12:50 +00:00
mycroft
fbecb8d22b Remove the gratuitous code to check for a disc at boot time. 1995-11-11 20:07:57 +00:00
gwr
70065d9d16 Fix a comment while I'm here... 1995-11-10 22:05:52 +00:00
gwr
01655dec81 Need to define KERNTEXTOFF for kvm_mkdb 1995-11-10 22:04:48 +00:00
gwr
3dcdca7c52 Allow unit != 0 1995-11-10 21:59:30 +00:00
christos
e4c4e9cb07 Add support for the 3c59x (pci) cards in the 3c5x9 driver. In addition
add the necessary bits for the 3c589 (pcmcia) card without adding any
of the pcmcia framework.
1995-11-10 19:39:21 +00:00
christos
ffa8bfeda1 pcidevs was changed 1995-11-10 19:36:29 +00:00
christos
c3ae59171a - pcidevs: add 3c590 and adaptec ultra
- aic7xxx.c: fix the probe routines to use pcidevs.h
1995-11-10 19:36:08 +00:00
christos
c0aaa86553 Add a config line for 3c590 ethernet cards 1995-11-10 19:34:54 +00:00
ragge
f51faf62ac Dynamic allocate uba_softc and interrupt vectors.
Allow for more that one uba.
1995-11-10 19:25:46 +00:00
ragge
d16c357ab9 A couple of CPU specific defines moved away. 1995-11-10 19:14:43 +00:00
ragge
c9be4b2e09 Removed some warnings. 1995-11-10 19:09:56 +00:00
ragge
42edf9d2b4 _idsptch added, _physcopypage removed. 1995-11-10 19:08:59 +00:00
ragge
eca544e6fc sysarch() -> sys_sysarch. 1995-11-10 19:07:16 +00:00
ragge
ae0f1d45d8 Allow for dynamic allocation of interrupt vectors.
COMPAT_RENO removed.
Handle memory errors.
uap->sigcntxp -> SCARG(uap, sigcntxp)
1995-11-10 19:05:46 +00:00
ragge
33bd27fa3c Major rewriting of pmap_bootstrap; CPU dependent allocations moved
to related file.
1995-11-10 18:52:54 +00:00
mycroft
d3c61be30b Convert IRQ, DRQ, and port numbers to int. 1995-11-10 05:01:05 +00:00
mycroft
38a7c4b007 Correct the format of some diagnostics. 1995-11-10 04:41:58 +00:00
mycroft
d8f6a1896b Convert IRQ, DRQ, and port numbers to int. 1995-11-10 04:30:36 +00:00
fvdl
051bb183e3 Same as in 1.1 branch. 1995-11-09 08:40:51 +00:00
cgd
7a34e263d7 "goto start" after sleeping for locked iso_node in cd9660_lock, like
in ufs_lock.
1995-11-08 22:26:24 +00:00
pk
c2cd05605d UFS => FFS conversion. 1995-11-08 09:09:20 +00:00
gwr
3c996d6b06 ufs ==> ffs 1995-11-07 23:01:40 +00:00
gwr
dd962ebbf6 Make sys_mount accept "ufs" as an alias for "ffs" 1995-11-07 22:41:02 +00:00
gwr
883be4be3a ufs ==> ffs 1995-11-07 22:27:21 +00:00
pk
54ec9fb697 Correct test for sun4 machines (thanks Chuck).
Since uname currently does not allow to discriminate different sparc
models, we use `sysctl.hw.cpumodel' to do this somewhat heuristicly:
if the returned strings starts with "SUN4-" a sun4 architecture is
assumed. This information is used to determine whether or not to strip
the a.out header off the 1st-stage bootblocks.
1995-11-07 11:45:24 +00:00
leo
3b8542c63a The Falcon needs a delay after writing the dma_data register (Thomas Gerner) 1995-11-06 21:13:38 +00:00
thorpej
20783f6b85 Bring in several changes from the ccd:
* Be a bit better with prototypes
	* Use struct dkdevice in vnd_softc.
	* Prevent the unit from being unconfigured while open.
	* Implement a simple locking mechanism and use it for sanity's
	  sake.
Still needs more work; needs to support disklabels and the like.
1995-11-06 20:28:09 +00:00
thorpej
664cb04670 Fix a race condition where if a process is asleep waiting on an
exclusive lock of a ccd device while another process is unconfiguring
that same device, the first process would never awaken (unless interrupted).
1995-11-06 19:58:01 +00:00
ws
29fff9256a Don't forward credentials to bread, it makes nfs panic
(Of course, nfs shouldn't rely on the credentials not being referenced)
Don't give directory entry to deget, it could result in a deadlock
Use device blocks, not clusters for logical block numbers
1995-11-05 18:47:48 +00:00
briggs
f028be21e6 Update from Ken Nakata. 1995-11-05 04:23:00 +00:00
briggs
8b79bcb9e7 Fixes from Ken Nakata. Mainly renaming debug_level to fpu_debug_level. 1995-11-05 00:35:09 +00:00
ws
77daf1e361 Fix cookie handling 1995-11-03 19:36:41 +00:00
ws
e0f9d74ef5 Really don't generate long names when mounted with -s 1995-11-03 17:29:53 +00:00
pk
996526aa02 Make error recovery actually work, i.e. don't hang on SCSI bus resets
and re-synchronize before re-scheduling pending operations.
Things seem to be a fair bit stabler now.
1995-11-03 16:47:43 +00:00
pk
bbdb422873 Stop DMA before resetting 1995-11-03 16:34:12 +00:00
ragge
3095b6514c No need anymore. 1995-11-03 14:34:52 +00:00
ragge
46e32a9703 No need for this file anymore; it's defines moved to other places. 1995-11-03 14:29:23 +00:00
briggs
cc272f90a1 Add in NetBSD id string. 1995-11-03 04:51:51 +00:00
briggs
5b38a18f42 include files.fpe instead of just fpu_emulate.c--to get the new fpe code. 1995-11-03 04:50:21 +00:00
briggs
526615e592 Add NetBSD id string and update instructions. 1995-11-03 04:48:22 +00:00
briggs
fc8793fb3d Still incomplete, but much more complete FPE from Ken Nakata
<kenn@remus.rutgers.edu>.  This emulator does not yet emulate
the following functions:
	FSINH, FETOXM1, FTANH, FATAN, FASIN, FATANH, FSIN, FTAN,
	FETOX, FTWOTOX, FTENTOX, FCOSH, FACOS, FCOS, FSINCOS
It is sufficient, however, to allow programs like df, w, and newfs,
to run to completion with correct results.
Portions of this code were based on the sparc fpe and on initial
work by gwr.
1995-11-03 04:46:55 +00:00
thorpej
f85819bc44 In ccdstart(), only translate the block number from partition-relative
to absolute if part != RAW_PART.
1995-11-03 02:35:54 +00:00
briggs
3074f94137 Remove ser1 from init list. 1995-11-01 04:59:31 +00:00
briggs
9a1fb2674a Fixup error/debugging message. 1995-11-01 04:59:03 +00:00
briggs
c587e77144 Remove bogus assignment. 1995-11-01 04:58:21 +00:00
briggs
819cd49aa7 Remove -fno-builtin 1995-11-01 04:53:34 +00:00
briggs
4d13774bbc Rearrange a bit. bpfilters -> 16 and ae0/ae1 -> ae*. 1995-11-01 04:52:46 +00:00
briggs
680ada5add port-mac/1707: mac68k mouse drag problems with Cmd+arrow keys
from Ken Nakata <kenn@remus.rutgers.edu>
1995-11-01 04:40:21 +00:00