Commit Graph

24299 Commits

Author SHA1 Message Date
thorpej a4c7bab10e Use the pool allocator for sockets. 1998-08-02 04:53:11 +00:00
thorpej 0e28b643e9 Use a pool for proc structures. 1998-08-02 04:41:32 +00:00
thorpej 6f739e1a66 Fix a braino in the idle page instrumentation. 1998-08-02 04:34:46 +00:00
thorpej 833061914a Use the pool allocator for tcpcbs. 1998-08-02 00:36:19 +00:00
thorpej d319e4b419 Use the pool allocator for syn_cache entries. 1998-08-02 00:35:51 +00:00
thorpej 47e9dcf841 Use the pool allocator for inpcbs. 1998-08-02 00:35:31 +00:00
thorpej 7c61b8cdd8 Instrument "idle pages" (i.e. pages which have no items allocated from
them, and could thus be freed back to the system).
1998-08-01 23:44:20 +00:00
thorpej bf8f319d0e Remove some lint. 1998-08-01 21:12:32 +00:00
augustss eba74b9369 Abort interrupt pipe on disconnect. 1998-08-01 20:52:45 +00:00
thorpej 8eeb95fce4 Implement pci_intr_disestablish(). 1998-08-01 20:25:12 +00:00
augustss 6aff95b06c Make sure to abort the interrupt pipe on disconnect of a mouse or keyboard.
Improve some error messages.
1998-08-01 20:11:38 +00:00
thorpej 92fa3a68ad In sio_intr_disestablish, also make sure that IRQs 0, 1, 8, and 13
default to edge-triggered, just like in the setup.
1998-08-01 19:38:29 +00:00
thorpej 0b60fda7c8 Implement sio_intr_disestablish(), and ensure that an initially-enabled
interrupt is never disabled and an initially-level-triggered interrupt
never becomes untyped.
1998-08-01 18:54:21 +00:00
thorpej 528dab6808 Implement alpha_shared_intr_disestablish(). Simply removes the handler
fromthe list, allowing the caller to manipulate the sharing type,
if appropriate.
1998-08-01 18:52:36 +00:00
augustss f654e0188e Switch from a global flag to tell if the host controller should use
polling to a local one for each controller.
1998-08-01 18:16:19 +00:00
augustss 5a1f4dd6bc Complete the scancode conversion table.
Tell the keyboard not to send idle reports.
1998-08-01 17:46:22 +00:00
scw aec399e36f Changes to keep lint happy.
In particular, fix some Makefiles so the include
paths are passed to lint.
1998-08-01 11:22:51 +00:00
thorpej 3c658f1f41 Don't call the protocol drain routines if how == M_NOWAIT, which typically
means we're in interrupt context.  Since we can be called from a network
hardware interrupt, we could corrupt the protocol queues we try to drain
them at that time.
1998-08-01 01:47:24 +00:00
thorpej 45d17e02f7 We need to be able to specify a uvm_object to the pool page allocator, too. 1998-08-01 01:39:03 +00:00
thorpej c56c24f4fd Initialize the mbuf allocator _before_ autoconfiguration; it might be
called when devices attach, take two.

Note that it is necessary that mbinit() NOT allocate memory, since it
is called before mb_map is created.  This is not a problem with the
pool allocator that is now used for mbufs and mbuf clusters.
1998-08-01 01:36:35 +00:00
thorpej e7521693c1 Use the pool allocator for mbufs and mbufs clusters (two pools, one for
each).  Partially from pk@netbsd.org.
1998-08-01 01:35:20 +00:00
thorpej e8b92fa131 Oops, back out previous. I need to attack that problem differently. 1998-08-01 01:20:43 +00:00
augustss ce69d417a2 Make it compile without DIAGNOSTIC 1998-07-31 23:54:09 +00:00
perry 2b8a659f68 make libkern build memmove() properly 1998-07-31 23:44:41 +00:00
perry 730baa7431 fix sizeofs so they comply with the KNF style guide. yes, it is pedantic. 1998-07-31 22:50:48 +00:00
pk 6c727e1651 dvma_malloc(), dvma_mapin() and dvma_mapout() are gone; all drivers
the use bus_dma(9) interface now.
1998-07-31 22:35:07 +00:00
pk 359cf8c23d Move `dvma_cachealign' here from vm_machdep.c 1998-07-31 22:23:30 +00:00
pk a0818b4b8b Use bus_dmamem_alloc/bus_dmamem_map. 1998-07-31 22:21:35 +00:00
thorpej 17e88cf50e Initialize the mbuf allocator _before_ autoconfiguration; it might be
called when devices attach.
1998-07-31 21:59:55 +00:00
thorpej fe7696eacb Un-static pool_head; vmstat wants to find it. 1998-07-31 21:55:09 +00:00
thorpej 55bf1fd9ad Allow an alternate splimp-protected map to be specified in the pool page
allocator routines.
1998-07-31 20:46:36 +00:00
mjacob 6e34b79e01 Suggestion from Matthias Drochner: If at close you decide to write
filemark 'coz you opened write only and didn't do anything else,
call st_check_eod to possibly write TWO furshlugginer filemarks.

Also- return any errors from writing filemarks out of stclose.
1998-07-31 17:25:55 +00:00
thorpej 0869d8f714 Blargh, deal with some fallout from the ISA PnP goo, this will go away once
we can pull in files.isa properly.
1998-07-31 16:42:01 +00:00
pk 519f1f7f0e Convert to bus dma. 1998-07-31 15:53:11 +00:00
kleink 17de9df6c1 Reject an iovcnt argument of 0 to readv(), writev(), preadv() and pwritev()
as invalid.  This has been stated by the respective manual pages at least
since Net/2, and is the behaviour specified by XSH5.
1998-07-31 15:38:58 +00:00
ross 22554e01a9 Following discussions with eeh and mrg, change most of these types so
that they should make an ILP32 setup with an ILP32 compiler and an LP64
setup if run through an LP64 compiler. None of the data sizes actually
change right now, and any type errors that show up would have to be fixed
eventually anyway.
1998-07-31 15:30:40 +00:00
augustss 6b407a79c6 Major cleanup of the ESS driver. It now sorta works. More to come. 1998-07-31 15:17:17 +00:00
mycroft a24dbc8065 (Always) (practice) (safe) (macro expansion). 1998-07-31 15:07:41 +00:00
pk c206cad36e Convert to bus_dma. 1998-07-31 12:45:48 +00:00
thorpej 53878c1925 Change one word to be consistent w/ a previous message. 1998-07-31 05:37:02 +00:00
thorpej 99d64ae1ca Oops, unused variable. 1998-07-31 05:29:48 +00:00
thorpej 4ea9132164 Rearrange isapnp_callback() slightly. 1998-07-31 05:28:24 +00:00
thorpej c489673819 Ensure we're probed only once per ISA bus. 1998-07-31 05:26:15 +00:00
wrstuden 06761b1ed4 Merge in a register definition mentioned only in passing in one place in
the Zilog docs.
1998-07-31 05:08:38 +00:00
thorpej 6ec566abd2 Add BeBox support. 1998-07-31 04:56:55 +00:00
thorpej 46c7e2fa53 ISA PnP goo. 1998-07-31 04:55:30 +00:00
thorpej 2e33e4c2fa First-cut support for ISA PnP for NetBSD/bebox. 1998-07-31 04:54:38 +00:00
thorpej c46ad7a0cc Add NetBSD/arm32 support. 1998-07-31 04:50:54 +00:00
thorpej 29ad6dac50 ISA PnP goo. 1998-07-31 04:50:01 +00:00
thorpej 6f3b1afe37 First-cut ISA PnP support for NetBSD/arm32. 1998-07-31 04:48:42 +00:00
thorpej 171cebde9c Actually add support for the Atari. 1998-07-31 04:45:01 +00:00
thorpej 92d42c0871 Add a comment about why we can (and must) use bus_space_{,un}map() directly
in this file.
1998-07-31 04:44:10 +00:00
thorpej 75db93cec2 Pull in files.isapnp here; the two busses are linked together quite closely
(more than we'd like maybe, but don't we wish ISA didn't suck...)
1998-07-31 04:40:39 +00:00
thorpej a138b68143 Don't include files.isapnp here. 1998-07-31 04:39:23 +00:00
thorpej 9589268364 Add unused zskbd and zsms entries, and ISA PnP entry. 1998-07-31 04:38:51 +00:00
thorpej e2ce6c8a28 Machine-dependent ISA PnP goo for NetBSD/alpha. 1998-07-31 04:38:04 +00:00
thorpej f948e430bb Provide a hook for bypassing space accounting, needed to support ISA PnP
for now.
1998-07-31 04:37:02 +00:00
thorpej 54de49fcb9 Add support for NetBSD/alpha. 1998-07-31 04:35:22 +00:00
thorpej f40a42d5c4 Use config_defer() to scan for ISA PnP cards. 1998-07-31 04:00:35 +00:00
mjacob b90b2a3798 Several more changes. First of all, move CTRL_MODE to have I/O behaviour
like a no-rewind device. Secondly figure out whether the initial TUR
for a CTRL_MODE open resulted in a tape being actually found (if so,
then do a mount session).

Move the 'sun compatibility' behaviour into stdone && stclose- don't
mark a tape as having been written in stopenm, fer gosh sakes.
1998-07-31 04:00:22 +00:00
thorpej 03ffe0a516 Use the pool allocator for scsipi_xfer structures. 1998-07-31 03:00:51 +00:00
thorpej 310dc86986 Add PR_NOWAIT (0) for symmetry. 1998-07-31 02:53:34 +00:00
thorpej 6056af462f Use the pool allocator for vndxfer and vndbuf structures. 1998-07-31 02:24:26 +00:00
thorpej dcfe0e1506 Back out part of previous; it is perfectly reasonable, and desirable, to
print out debugging info ifdef DEBUG.
1998-07-31 02:14:40 +00:00
thorpej ecf815f930 Back out previous; it is perfectly reasonable, and desirable, to print out
debugging info ifdef DEBUG.
1998-07-31 02:10:12 +00:00
mjacob bec14b0ce3 Part A (Cosmetic nonsense):
>We're not Linux.  If we still want driver version strings to be displayed
>at boot, then I suppose DEBUG is a reasonable compromise.
Makes the whole concept useless. This is for default printouts. If you
can build a debug kernel, you know what version you have. This was under
the concept of 'RAS' so that hapless users could tell you microversion
things. But I guess this isn't the right way according to our local
Jesuits. Oh, well. I'll think up something different and hopefully
less objectionable. And yes, NetBSD isn't linux. The developers seem
to be equally bad tempered, but linux is more successful.

Part B:
Field interrupts in OS layer so that (in this OS) bus_dmamap_sync(POSTREAD)
can (formally) ensure that the result queue is stable wrt to buffering
and that for sending a command a bus_dmamap_sync(PREWRITE) is done to
ensure that the device gets a good view of what the mailbox contents
should be.
1998-07-31 02:08:16 +00:00
mjacob 36f9ab27ce >We're not Linux. If we still want driver version strings to be displayed
>at boot, then I suppose DEBUG is a reasonable compromise.
Makes the whole concept useless. This is for default printouts. If you
can build a debug kernel, you know what version you have. This was under
the concept of 'RAS' so that hapless users could tell you microversion
things. But I guess this isn't the right way according to our local
Jesuits. Oh, well. I'll think up something different and hopefully
less objectionable. And yes, NetBSD isn't linux. The developers seem
to be equally bad tempered, but linux is more successful.
1998-07-31 01:56:49 +00:00
thorpej 4356136193 Use the pool allocator for component buffer headers. 1998-07-31 01:23:56 +00:00
rvb 11c3d96b49 Flush spurious #endif after ADDMULTI 1998-07-31 01:10:13 +00:00
thorpej 3cd681ef27 Typo. 1998-07-31 00:42:31 +00:00
thorpej 34529b444b From cd.c: call disk_unbusy() if we are unable to enqueue our command. 1998-07-30 23:57:07 +00:00
pk 6026f141fd Enable bus_dmamem_alloc/bus_dmamem_map 1998-07-30 22:44:51 +00:00
pk af89712b25 Use bus_dma_*() instead of dvma_mapin/dvma_mapout. 1998-07-30 22:42:04 +00:00
pk 32a5557426 Adapt to changes in the base bus_dma* functions. 1998-07-30 22:29:34 +00:00
pk 8a39d7a7fb The IOMMU now has its own dma bus tag and associated functions.
machdep.c retains the `mainbus' (i.e. sun4/sun4c) bus_dma* versions for now.
Create a DVMA map specifically for 24-bit devices (le,ie), which has a
more room than previous DVMA map which should be reserved for sun4 VME.
1998-07-30 22:28:44 +00:00
pk 862c0bafcc Define a BUS_DMA flag for devices that have a 24-bit address space.
Update _bus_dma* prototypes.
1998-07-30 22:20:31 +00:00
thorpej bf52ef5697 Squash unused variable. 1998-07-30 22:17:34 +00:00
thorpej 7b68dfc9c7 Fixup include paths. 1998-07-30 21:58:48 +00:00
thorpej d85ed3d973 Put the SoundBlaster stuff back for files.ofisa (Until we can just
properly include files.isa).
1998-07-30 21:51:00 +00:00
is ae2fb64e3a Document supported boards near the top of the driver source code. 1998-07-30 21:28:15 +00:00
thorpej 4f8d24662e Uncomment the SoundBlaster ofisa attachment; the Shark isn't the only
potenial user of ofisa (e.g. my FirePower).  An ofisa attachment for the
SoundBlaster is prefectly legitimate.
1998-07-30 21:25:05 +00:00
thorpej 0bd4f9291c Use the correct "compatible" strings (ESS, not generic SB!), and correct
some comments about what we expect as far as interrupt and dma properties.
1998-07-30 21:22:59 +00:00
thorpej 16ad73c288 Add the Simple Technology Communicator 28.8. 1998-07-30 20:47:11 +00:00
thorpej b25d4941cd Regen. 1998-07-30 20:45:35 +00:00
thorpej 965404c104 Add Simple Technology vendor ID, and Simple Technology Communcator 28.8
product ID.
1998-07-30 20:44:25 +00:00
pk 741c837f77 Get to DMA map functions through parent tag, instead of calling some base
functions directly.
1998-07-30 18:54:06 +00:00
christos b7a585b61d Use the previously committed pnp hook. 1998-07-30 18:03:34 +00:00
christos c1303944f7 Add a hook that resets the bios configuration from the pnp devices
thus making them invisible to isa probes [from OpenBSD]
1998-07-30 18:02:50 +00:00
christos dd49f248a4 Protect against multiple inclusions. 1998-07-30 18:01:44 +00:00
is 8bd9c69e11 Multicast support. 1998-07-30 16:40:19 +00:00
augustss c0ca4781ed ESS attachments for ofisa. 1998-07-30 14:15:59 +00:00
augustss cdeb158d5f A first stab at making the SHARK sound work. It doesn't really work
yet, but it probes and makes a noise when used.  Stay tuned!
1998-07-30 14:11:42 +00:00
mrg 7712d62ed7 allow ${SIZE} to be set from the environment, also allow using genassym.sh (both for cross compiling). 1998-07-30 13:34:09 +00:00
leo 3a8b550914 Make this a bit more complete. (Triggered by Julian Coleman ;-) 1998-07-30 12:02:41 +00:00
drochner 326ffe6cd3 regen 1998-07-30 09:47:49 +00:00
drochner 085f3ce0cc add entry for Boca 56k (from Fujie Zhang <fzhang@NMSU.Edu>)
update comment for OPL3-SA2 / OPL3-SA3 (same PnP ID)
1998-07-30 09:45:16 +00:00
mjacob e404c0efec Some minor comment tweaking.
Also- to be fair and on review, kern/391 isn't really addressed by
the previous commits. In reviewing, I'm embarassed to find that this
talks about reading at EOT. I'm actually going to claim that this
is 'not a bug' or 'fixed already' in that at the end of media (at the
edge of recorded media), you may continuously open the tape (should
you choose to) issue a read, and zero bytes will transfer- this is a
sufficient EOF indicator.
1998-07-30 04:11:43 +00:00
mjacob c45a129a99 Clarify and name some of the 'open' modes. Clarify a few comments. Remove
a now unused variable. Also, remove the restriction against at density
code being greater than the max SCSI 2 density code: 0x80..0xff are the
Vendor Unique codes and most certainly should be allowed. The check for
invalid values should be less than 0 or greater than 255.

Oh- yeah, the previous commit addressed kern/391.
1998-07-30 03:17:22 +00:00
mjacob 7692effeed Make some changes wrt EOM behaviour. Distinguish EIO_PENDING from
EOM_PENDING. Set up a persistent EARLYWARNING behaviour flag. If
set, EOM behaviour forces a 'short read' to signal logical (as
opposed to physical) end of media. The user application may, of
course, do with this information what it will.

The EARLYWARNING behaviour may be enabled/disabled by a MTIOCTOP
operation. The default action is to not have EARLYWARNING enabled-
but this may be reversed by an option ST_ENABLE_EARLYWARN in
the kernel build.
1998-07-30 00:55:20 +00:00
mjacob 4205ca3d2a opt_scsiverbose.h now is opt_scsi.h and contains the defopted
SCSIVERBOSE and the new ST_ENABLE_EARLYWARN.
1998-07-30 00:49:19 +00:00
mycroft f53fedba63 Regen. 1998-07-30 00:46:27 +00:00
mycroft d588e17601 __Namespace__ __protection__. 1998-07-30 00:46:01 +00:00
mjacob 4fe629bf62 add MTIOCTOP/MTEWARN option to enable/disable Early Warning EOM behaviour 1998-07-30 00:44:46 +00:00
mrg 813b2f15cf allow ELFSIZE to be pre-defined 1998-07-30 00:27:04 +00:00
fvdl d40e353fa6 Add NOLUNS quirk for the UMAX Astra 1220 scanner. 1998-07-30 00:00:06 +00:00
augustss a0803787f7 Add functions to execute asynchronous requests and use these from
interrupt context.
[I had some feline debugging help here.  I noticed that every time Kem,
our kitty, jumped onto the USB keyboard the machine crashed.]
1998-07-29 20:50:11 +00:00
augustss f453d02883 Make sure to report wheel movements. 1998-07-29 20:44:32 +00:00
pk ab0e92568b <sparc/dev/sbusvar.h> => <dev/sbus/sbusvar.h> 1998-07-29 18:48:54 +00:00
pk 9104b183fa Lots of things have moved to <dev/sbus/sbusvar.h> 1998-07-29 18:45:57 +00:00
pk 402a052405 Deal with sbus attach args changes. 1998-07-29 18:44:22 +00:00
pk 9e4d2f9b53 Switch to new sbus attach arguments layout. 1998-07-29 18:42:32 +00:00
pk 58d952ce7d Deal with sbus attch args changes.
Use sbus_destroy_attach_args().
1998-07-29 18:37:23 +00:00
pk 426330f642 We no longer need to get the register sets by ourselves. 1998-07-29 18:36:08 +00:00
pk 4f2fd378bb Use sbus_destroy_attach_args(). 1998-07-29 18:33:27 +00:00
pk 1d8ad313ab `struct rom_range' => `struct sbus_range' 1998-07-29 18:32:54 +00:00
pk 9a7ffd5724 Move some Sbus structures in here.
* attach arguments now directly support multiple register and
	  interrupt sets.
	* address translation (`ranges') has been made bus-specific
	* introduce sbus_destroy_attach_arg() to clean up after
	  attaching an an Sbus device.
1998-07-29 18:30:20 +00:00
pk 718ff722b7 In the reset() function, preserve the current cable selection bit.
If in auto media select mode, this avoids losing carrier every time
the lance code decides to re-initialize.
1998-07-29 16:10:57 +00:00
augustss 33a72d432a Add wss on isapnp. 1998-07-29 12:36:47 +00:00
mrg 179879e08f add Elf_em_sparc64 at 43 (from solaris 2.7) 1998-07-29 12:14:00 +00:00
augustss d6a8a4f025 Don't print chip name in attach, the ad1848 attach already does. 1998-07-29 11:39:25 +00:00
tsubai 5b03ac980b Use ite for screen console by default until wscons support. 1998-07-29 05:38:04 +00:00
tsubai fbd86622a0 Add ``install floppy'' config file. 1998-07-29 05:19:26 +00:00
tls 31d0752b99 change IN_IFADDR_HASH_SIZE to 509, which actually uses no more space than 293 due to rounding up to nearest power of two in hashinit. 1998-07-29 05:18:54 +00:00
thorpej 4b039671de When checking for overflow in the residual count, test against SSIZE_MAX.
The read/write system calls return ssize_t because -1 is used to indicate
error, therefore the transfer size MUST be limited to SSIZE_MAX, otherwise
garbage can be returned to the user.

There is NO change from existing behavior here, only a more precise
definition of that the semantics are, except in the Alpha case, where
the full SSIZE_MAX transfer size can now be realized (ssize_t is 64-bit
on the Alpha).
1998-07-29 02:07:19 +00:00
thorpej eb32016a95 Split up using BWX for PCI config and bus access. Default to using BWX for
the former, but not the latter.  Hopefully, this will address some problems
people have been experiencing w/ some devices on Pyxis systems when BWX
is used for bus access.  (If it's not used for PCI config access, we can
get fatal machine checks while probing behind PCI-PCI bridges!!)
1998-07-29 01:28:44 +00:00
mark 620bc79e36 Fix the copyin(), copyout() argument validation to check for zero
length copy before returning EFAULT for a bad address.
1998-07-29 00:56:08 +00:00
thorpej 1712467308 fic typi 1998-07-29 00:31:01 +00:00
thorpej 8a2c338704 Use a std options file, like other ports do. 1998-07-29 00:19:20 +00:00
thorpej 7698349700 Ah, we use a _different_ ofcons; rename it macofcons to avoid the
name collision.
1998-07-28 23:43:33 +00:00
thorpej c8f1cea511 Provide SSIZE_MAX. 1998-07-28 23:20:54 +00:00
thorpej 8a3626d966 ofcons attaches to ofbus, not pci! Comment it out, since we do not have
any ofbus support in these configurations.
1998-07-28 23:09:07 +00:00
thorpej d0714d3f21 Support NFS_BOOT_DHCP. 1998-07-28 23:02:06 +00:00
augustss 0733d4c87f Do locator related defines using defines from locators.h rather
than literal constants.
1998-07-28 22:01:24 +00:00
thorpej 99b10d9e98 Regen. 1998-07-28 21:51:34 +00:00
thorpej 463fc03c76 Add the IMS TwinTurbo 128M graphics board. 1998-07-28 21:50:30 +00:00
thorpej 37b70b3064 Change the "aresid" argument of vn_rdwr() from an int * to a size_t *,
to match the new uio_resid type.
1998-07-28 21:39:54 +00:00
augustss ae97a4cbf5 Support for USB mice with Z axis or wheel. 1998-07-28 21:21:47 +00:00
thorpej 6dd25080b4 Garbage-collect ofisacs, noted by Scott Reynolds. 1998-07-28 21:19:13 +00:00
augustss 20f454ae1c KNFify. 1998-07-28 20:58:39 +00:00
pk 9111209fdf In _bus_dmamem_map(), use uvm_km_valloc() to get kernel addresses.
uvm_map() -- which used to be here (why was that?) -- was called with
an uninitialized value in its `start' argument.
1998-07-28 20:46:28 +00:00
mjacob d0aa61ad21 fix to accomodate change in vn_rdwr prototype 1998-07-28 20:37:33 +00:00
mjacob ed8d65b169 fix to accomodate change in vn_rdwr prototype 1998-07-28 20:25:28 +00:00
drochner 5788941588 document "Intelli"mouse support 1998-07-28 20:22:29 +00:00
drochner 0a5abbe31d Reset the mouse in attach(); Bog knows what other drivers did to it
in their probe()s.
Clean up some "pms" vs. "psm" naming confusion.
1998-07-28 20:18:36 +00:00
drochner fa0aee147e Use the new mkdtemp() instead of mktemp();mkdir().
Various cleanups (and typecasts) to get lint quiet.
Add remaining prototypes, enable -Wmissing-prototypes -Wstrict-prototypes.
1998-07-28 20:10:53 +00:00
thorpej 6326c90134 Change the "aresid" argument of vn_rdwr() from an int * to a size_t *,
to match the new uio_resid type.
1998-07-28 18:37:47 +00:00
thorpej 3ff8e6493a Don't cast the null residual pointer passed to vn_rdwr(). 1998-07-28 18:34:52 +00:00
thorpej e8063e5201 Don't cast the null residual pointer passed to vn_rdwr(). 1998-07-28 18:30:54 +00:00
thorpej e95c22ee96 Don't cast the null residual pointer passed to vn_rdwr(). 1998-07-28 18:17:34 +00:00
thorpej 80e25bcca0 Don't cast the null residual pointer passed to vn_rdwr(). 1998-07-28 18:11:39 +00:00