Commit Graph

2566 Commits

Author SHA1 Message Date
thorpej 6e8facbdcc When creating ccbs, be a little more informative about why we couldn't
should creation/initialization of a ccb fail.  Also, don't panic in
these situations.  Instead, simply return an error condition and allow
the caller to deal with it.  It may be the case that we were able to
create one ccb what we can grab, and continue to hobble along.
1997-10-28 23:31:30 +00:00
thorpej 711fc71012 When creating ccbs, be a little more informative about why we couldn't
shoud creation/initialization of a ccb fail.  Also, don't panic in
these situations.  Instead, simply return an error condition and allow
the caller to deal with it.  It may be the case that we were able to
create one ccb what we can grab, and continue to hobble along.
1997-10-28 23:06:21 +00:00
christos c12bf4cc9f DTRT with level and edge interrupts:
- add a type field to the isapnp_pin struct and set to IST_EDGE or
      IST_LEVEL depending on the card configuration data.
    - use the irq type field in all the drivers instead of hardcoding it.
1997-10-28 21:27:55 +00:00
thorpej d1bfbc66c6 Syncronize with changes to aha.c:
Adjust the number of ccbs allocated during initialization.
Every ccb could potentially lock 64k of memory for dma buffers if bounce
buffers are used.  Instead of BHA_CCB_MAX ccbs using 2MByte, only
sc_link.openings ccbs per device are allocated.  Thus we now use only
256KByte per device present.
(hannken)

Fix a couple of errors in bha_create_ccbs():
- Don't ever let the number of CCBs be creater than BHA_CCB_MAX.
- Fix a fencepost that caused the last CCB allocated to never be put
  on the freelist.
(thorpej)
1997-10-28 19:13:36 +00:00
thorpej 1dfae448cd Reply from an INQUIRE DEVICES is a lun map. 1997-10-28 19:08:26 +00:00
thorpej 1bfea0bd23 Fix a couple of errors in aha_create_ccbs():
- Don't ever let the number of CCBs be creater than AHA_CCB_MAX.
- Fix a fencepost that caused the last CCB allocated to never be put
  on the freelist.
1997-10-28 18:40:07 +00:00
gwr d6a95307e3 The release and control maps are shared by all keyboard types, so
change KEYSYM_HOLE to KEYSYM_NOP most places in those tables.
Map the `R' function keys with KEYSYM_FUNC_R instead of the
arrow key strings so that numlock indirection works.
1997-10-28 06:18:36 +00:00
gwr f4a80e422c Print more helpful information if we get unexpected keysyms.
Call kbd_xlate_init() after we know the keyboard type so it
has a chance to install the RIGHT keymap pointers!  (Duh!)
1997-10-28 06:14:17 +00:00
thorpej e0ccf46ed0 In isapnp_alloc_irq(), use isa_intr_alloc(), since it performs resource
conflict checking.
1997-10-27 23:42:30 +00:00
thorpej a222447f6f Oops, missed one in previous. 1997-10-27 23:34:19 +00:00
thorpej ce3918177b Update for new pcidevs entry for Winbond NE2000-compatible Ethernet ASIC. 1997-10-27 23:31:41 +00:00
thorpej bb340dc5c7 Regen. 1997-10-27 23:29:23 +00:00
thorpej 10e3181b2b Fix the description of the Winbond NE2000-compatible Ethernet ASIC.
It's a W89C940F.
1997-10-27 23:27:35 +00:00
thorpej 16905ceeda Make sure we don't allocate a conflicting DRQ. From Christos. 1997-10-27 22:16:49 +00:00
bouyer 917389821c Changes to the probe and attach routine:
- at end of attach, explicitely select an existing drive. This fixes hangs
  some users reported (such as the one reported in port-i386/4247).
- Some atapi cdrom drives (e.g. Nec 24x) don't enables their registers before
  a controller reset is issued. The controller probe routine is changed as
  follow: issue a controller reset. If fail, test atapi signature on slave.
  If fail, wait 5s and retry a reset. If the second reset fail, return(0).
  If the first reset succeed, test presence of a master drive:
  atapi signature, and if this fail RO/RW registers test. If no master, test
  atapi signature on slave. If no slave, return 0.
1997-10-27 14:09:23 +00:00
thorpej bbc9422b97 Print interrupt information like all of the other PCI drivers. 1997-10-27 02:10:07 +00:00
pk 233c534958 Apply patch from Michael L. Hitch (PR#4318):
"A sequence step of 0 after a select with ATN can be a selection
 timeout, or it can also indicate the target did not respond with
 a message out phase.  The latter will occur on very old SCSI
 devices which do not respond to the ATN signal and go directly to
 the command phase".
1997-10-26 16:45:24 +00:00
christos 15839e5d3d PR/4328: Matthias Scheler: Syntax errors in debug macros. 1997-10-24 15:44:42 +00:00
mikel 1f8a154917 add comments describing what devices correspond to each PnP ID matched 1997-10-23 06:14:11 +00:00
gwr 0889565499 Clean up kbdioctl():
* Make sure all uses of the data pointer are type-cast appropriately.
* Eliminate the super-user check in the KIOCSKEY case (back as it was).
* Return ENOTTY if the ioctl command code is unrecognized.
1997-10-21 15:17:31 +00:00
bouyer b1b04efc58 Correct 'ThunderLAN' spelling 1997-10-21 05:54:21 +00:00
fvdl 37e4eea4a4 Make 16650 probe optional on COM16650 define. It breaks on some
multiport Startech chips.
1997-10-21 01:25:41 +00:00
thorpej 37919a04d9 Moved to src/sys/dev/ic/i82365.c via repository copy. 1997-10-20 20:24:17 +00:00
is 4a8fcf4aed Dont waste time in delay()s... else we won't finish in time to get our first
lowwatermark interupt for AUDIO_BYPASS data.
1997-10-20 19:07:59 +00:00
explorer 1f2bca63e2 clean up the event queue more. Add volatile where needed. 1997-10-20 18:43:48 +00:00
thorpej 5c6445bc0d Don't panic if we fail to remap i/o or mem space in the attach function.
Instead, print a diagnostic and return.  (Some drivers do this already.)

Also, normalize the diagnostic message, and fix some places where the
printfs were getting ugly.
1997-10-20 18:43:03 +00:00
explorer 7f8a4b47f8 Clean up the timeout and queue code. 1997-10-20 15:05:05 +00:00
explorer c327761377 Don't pretned to maintain an internal "global" entropy pool. In-kernel
locking cannot be done with it, and that sort of thing probably should not
be shared anyway.
1997-10-20 15:03:19 +00:00
matt 500281c8a4 21142 / 21143 chips always use ISVSROM format. (print out message is
SROM checksum is invalid).
1997-10-20 14:32:46 +00:00
fvdl d82bb1870c Make sure to unmap bus space when a successful probe is done, to prevent
a panic when the attach code does the map again. PR 4302, from
Anders Hjalmarsson.
1997-10-20 13:46:53 +00:00
thorpej cdc616ca77 Port the latest FreeBSD "fxp" driver to NetBSD-current. Changes include:
- Work around a bug in the 82557 that causes the receiver to lock up
  in certain conditions by kicking the multicast address filter if we
  haven't heard anything come down the wire for some period of time.
- Fix a bug that could cause TxCB descriptor chains to cross page boundaries
  on the Alpha.
- Remove some unneeded register masking.
- Fix a bug where too much data was copied from the config template, causing
  memory corruption.
- Fix handing of if_timer (it was be cleared too early in some cases).
- Attempt to reduce the chances of receiver overrun by doubling the
  number of receive DMA segments, and processing receive interrupts
  before transmit interrupts.
- Remove a gratuitous assignment.
- Fix a bug where incoming packets were counted twice.
1997-10-20 01:15:53 +00:00
fvdl 9e76627586 Do hack around VOP_BMAP call to avoid recursive locks. The locking
interface doesn't allow currently to specify recursive locks.
Should fix vnd device locking panics.
1997-10-20 00:11:03 +00:00
is b266316bea Fix pasto in symbolic name for string 1997-10-19 20:46:32 +00:00
christos 7507e6a5e9 Make this compile again. 1997-10-19 20:34:54 +00:00
is eb1b51cac1 tav_write_word -> tav_write_short 1997-10-19 20:21:49 +00:00
mycroft 1bb75c1efa Initialize the IER to 0 in com_attach_subr(). 1997-10-19 20:01:08 +00:00
thorpej 29500b20c0 Make sure the i/o and/or mem addresses aren't wildcarded (i.e. -1) before
using the address in a bus_space_map() call.
1997-10-19 18:56:39 +00:00
fvdl ab36c13e4b Add 16650 hardware flowcontrol support. Basically PR 3844 from
Dave Huang <khym@bga.com>, with added check for broken early versions
of the 16650, taken from the Linux driver.

This should be extended to use, for example, higher trigger levels for
the bigger 16650 FIFO, and its capability for using a smaller divisor
and thus higher speeds. But this patch is very useful for 16650 users
already.
1997-10-19 14:26:25 +00:00
fvdl 961e39030d Add 16650 hardware flowcontrol support. Basically PR 3844 from
Dave Huang <khym@bga.com>, with added check for broken early versions
of the 16650, taken from the Linux driver.

This should be extended to use, for example, higher trigger levels for
the bigger 16650 FIFO, and its capability for using a smaller divisor
and thus higher speeds. But this patch is very useful for 16650 users
already.
1997-10-19 14:26:16 +00:00
enami fe0c14e139 Fix typo; hang binary operator at the end of previous line. 1997-10-19 14:10:11 +00:00
enami 5c1050e68f Include locators.h and use symbolic name comes from it. 1997-10-19 14:07:19 +00:00
enami 0afff66463 Include locators.h and use symbolic name comes from it. 1997-10-19 14:04:29 +00:00
enami 4e304b8dd7 Make `manufacturer' and `product' 32bit wide so that they can contain
both 16bit id values found in card CIS and special value to indicate
that no value found in CIS.  Use that special value for the card that
doesn't have id values.  Test that value in ne2000_match().
1997-10-19 14:00:32 +00:00
explorer ebf03fd00c Add hooks for entropy collection. Right now, you must place
options RND_COM
in your kernel config file (along with the
	pseudo-device rnd
line) to enable this.  If results are positive, I will make this enabled
by default.
1997-10-19 11:45:33 +00:00
explorer 2a18497c3f o Remove most of the splhigh() protected regions, making them
splsoftclock() instead.  This is done with an event queue of raw data,
  and the entropy calculation etc. is done at splsoftclock().

o Use a private entropy pool rather than the global one defined in
  rndpool.c.  That global will probably go away, eventually.
1997-10-19 11:43:05 +00:00
thorpej 17e98700bd Use symbolic names for default locator values. 1997-10-19 09:05:04 +00:00
augustss e7029fc0da Make the audio API (almost) SunOS compatible.
The changes is to allow some limited mixer manipulation through
the audio device (instead of the mixer device).
This rendered 4 methods in audio_hw_if unused so garbage collect these.
1997-10-19 07:41:33 +00:00
is 1083b2ab71 Use long long in bitrate tolerance computation, else we'll overflow for
higher than standard-pc chip clocks.
1997-10-18 23:11:45 +00:00
thorpej 75e554c27d Implement two macros, scsipi_command() and scsipi_command_direct(), and
use them to hide the structure of the function pointers we jump through
to issue a command.
1997-10-18 19:50:51 +00:00
drochner 83d255de83 This driver can't handle wildcarded iobase.
(This is really a config file error.)
1997-10-18 14:09:52 +00:00