Commit Graph

4372 Commits

Author SHA1 Message Date
msaitoh
2d5b32dd03 fix an invalid panic message. 1998-12-17 17:45:08 +00:00
bouyer
85078af6c4 Add a new quirk flags, "ADEV_NOSENSE", for devices that don't
handle properly the request sense command. Add <FX320S, , q01> as being
sense-unfriendly in the quirk table.
1998-12-17 13:05:05 +00:00
bouyer
f1addbd3fd Defer mapping of pci interrupt to pciide_mapregs_native(). This way,
the native interrupt shouldn't be mapped if a channel is in native mode,
but disabled.
1998-12-16 13:21:26 +00:00
bouyer
945acd7834 Leave some room for the string-terminating char in temp. buffers.
Pointed out by Scott Presnell (thanks !).
1998-12-16 13:06:52 +00:00
bouyer
c37bf0ccb4 Keep track of DMA errors, and downgrade the transert mode (UDMA ->DMA,
DMA->PIO) in case of 2 consecutive errors. Don't downgrade if the
PIO/DMA/UDMA modes were forced by a config flag.
1998-12-16 13:02:03 +00:00
bouyer
1f0d6730cc Switch to single-sector transfert mode only for the last retry, to let
a chance to the underlying driver to downgrade the mode first.
1998-12-16 13:00:02 +00:00
bouyer
2093338697 Rearange the modes setup to allow these to be dyanmically changed. Fill
in the new "set_mode" callback.
1998-12-16 12:48:45 +00:00
bouyer
94f32463dc Add a callback to re-compute the modes used on a channel. 1998-12-16 12:46:47 +00:00
christos
bbe8b4dde5 Add Byte Runner Technologies TC-400 and TC-800 driver from Eric S. Hvozda 1998-12-16 11:33:50 +00:00
augustss
b4cf442656 Fix a MIDI buffer overflow problem. Fixes PR 6583.
Patch from Ales Krenek <ljocha@ics.muni.cz>
1998-12-15 18:03:07 +00:00
drochner
4f720cad14 make sure programs cannot write to the screen while it is in graphics mode 1998-12-15 14:25:59 +00:00
augustss
cb022e620d Initialize field to indicate fragment block. 1998-12-14 23:44:04 +00:00
drochner
2e89d55ed4 Deal with an unusual response on port selftest commands. This makes at
least John Kohl's crappy Dell box work.
1998-12-14 13:54:25 +00:00
nisimura
8bb7627336 - Fix typos in commentary description. 1998-12-14 02:45:51 +00:00
thorpej
b33907f299 Don't DMA the scsi command from or the sense data to the scsipi_xfer
directly.  That would require that we map the scsipi_xfer into DMA
space.  Instead, copy to/from the NCR CCB, which the script already
has to DMA to/from.  These copies are small, and don't seem to affect
performance.
1998-12-13 00:11:37 +00:00
thorpej
178fc3cc05 Step 3:
Use DMA maps for the actual data transfers.
1998-12-12 23:41:56 +00:00
mycroft
95aa0d0b7d Simplify the copy loops a bit. 1998-12-12 16:58:10 +00:00
mycroft
90b7cbc727 Simplify argument to MGET(), to generate better code. 1998-12-12 16:36:24 +00:00
mycroft
a6717054a4 Slight simplification to previous. 1998-12-12 16:31:34 +00:00
augustss
eeb8a988a9 Oops, I commited the wrong version before. 1998-12-12 12:18:26 +00:00
augustss
f8c84e3e97 Initialize variable to make gcc happy. 1998-12-12 12:06:53 +00:00
augustss
ef6d3553ea Move initialization of sce around. 1998-12-12 11:59:28 +00:00
thorpej
3cc30b3641 Step two:
Use DMA-safe memory for the script instances.  The most important thing
here is that is guarantees that the script is contiguous in DMA space.
1998-12-12 00:19:13 +00:00
thorpej
086b4b0bf1 Step one of bus_dma'ing the PCI NCR driver:
Separate the ncb (i.e. softc) members that are accessed by the script into
a separate structure.  Allocate one of these structures in DMA safe memory
using bus_dma, and change RELOC_SOFTC to use the DMA address of this
structure.
1998-12-11 23:21:11 +00:00
bad
fe3ce4e89a Simplify the code dealing with the mbuf chain in dp8390_get(). 1998-12-11 18:03:55 +00:00
augustss
09dd50c412 Regen. 1998-12-11 17:44:41 +00:00
augustss
d39ff672ac Add Imation disk. 1998-12-11 17:43:31 +00:00
bad
ba8bdebedd Change a comment to reflect reality. 1998-12-11 16:01:16 +00:00
augustss
3e85b3dd48 Move spls around. 1998-12-11 00:05:07 +00:00
augustss
46e04a18a1 Take care of some lines > 80 chars. 1998-12-10 23:16:47 +00:00
augustss
b94cb7b768 Add a driver for the S3 SonicVibes chip. From OpenBSD and
Constantine Paul Sapuntzakis (csapuntz@cvs.openbsd.org) with
some changes by me.
XXX The driver still needs work.
1998-12-10 18:47:18 +00:00
mjacob
7f5c8f7db2 add Adaptec RAID units as devices that do not return geometry pages 1998-12-10 18:13:29 +00:00
augustss
95f1a325a2 Change a printf a little. 1998-12-10 16:13:48 +00:00
thorpej
93e17878d1 Regen. 1998-12-09 23:57:58 +00:00
thorpej
02d7f1236c Some more touchup on the VIA Rhine chip model number, and so some
sorting.
1998-12-09 23:57:35 +00:00
tls
2fbbdcc0cb Fix bug that caused all ifp's to have if_xname ntwo0, which was rather inconvenient. Should use config_found on each port instead, but this works for the moment and it's quick. 1998-12-09 23:25:41 +00:00
drochner
35345a1311 make compile without USB_DEBUG, wrap lines to 80 cols 1998-12-09 19:24:28 +00:00
thorpej
7a9cc5bfbc Update for changed scsipi_xfer struct. 1998-12-09 08:37:50 +00:00
leo
5335909035 BVME410 ethernet driver by 'maximum entropy'. 1998-12-09 07:33:59 +00:00
augustss
1fdafa2f13 Insert some splusb() since memory allocation and deallocation can
occur from an interrupt.
1998-12-09 01:02:29 +00:00
augustss
c8736358e3 Clear stall condition on interrupt pipe. 1998-12-09 01:01:24 +00:00
augustss
f8b9a417f0 Improvement to the ugen driver.
Better error checking.
Some code rearrengment.
1998-12-09 00:18:10 +00:00
augustss
28d60e8711 Use plaintest error messages for debugging. 1998-12-08 15:48:18 +00:00
augustss
d26c277522 Add a generic USB driver. It allows easy access to descriptors, the
control pipe via ioctl() and read() and write() access to bulk and
interrupt pipes.
1998-12-08 15:39:00 +00:00
augustss
4d19a06c27 Some minor API changes and additions. 1998-12-08 15:18:45 +00:00
augustss
dfff19e3d3 Take care of return code from uiomove(). 1998-12-08 15:12:24 +00:00
augustss
43c3030bd5 Print plain text error codes. 1998-12-08 14:34:08 +00:00
augustss
0280322dcb Change debug level of a printf. 1998-12-08 14:31:58 +00:00
augustss
1b499d8ce6 Make the OPL information string more informative. 1998-12-08 14:26:56 +00:00
bouyer
997074f17c Add a missing 'return' in an error path; noticed by Matthias Drochner. 1998-12-08 13:29:31 +00:00
thorpej
10d50739c7 Actually, restructure scsipi_wait_drain() slightly. 1998-12-08 00:26:22 +00:00
thorpej
8ebf1e8824 Remove xs_free_list; it no longer exists. 1998-12-08 00:20:16 +00:00
thorpej
624619a881 When closing, wait for pending xfers to drain before deleting the reference
to the adapter.
1998-12-08 00:19:27 +00:00
thorpej
dcc5f32c2b When closing, wait for pending xfers to drain before unlocking the door,
and wait again before deleting the reference to the adapter.
1998-12-08 00:18:46 +00:00
thorpej
1ddd2ffec0 - When allocating a scsipi_xfer, add it to the specified device's
pending_xfers queue.
- When freeing a scsipi_xfer, remove it from the device's pending_xfers
  queue.  If the queue is empty, and SDEV_WAITDRAIN is set, wakeup
  those waiting for the queue to drain.
- Implement scsipi_wait_drain(), which waits for a device's pending_xfers
  queue to drain.
1998-12-08 00:17:21 +00:00
thorpej
98194169ea When allocating a device's scsipi_link, initialize the pending_xfers
queue.
1998-12-08 00:14:41 +00:00
thorpej
126dc6bfcc - Remove the "free_list" member from scsipi_xfer. Add "adapter_q" and
"device_q" TAILQ entries.  The former is for use by the adapter driver,
  as it sees fit.  The latter is for the scsipi middle layer to track
  pending xfers per device.
- Add a pending_xfers queue to scsipi_link, to track pending xfers per
  device.
- Grow scsipi_link's flags to int, and add SDEV_WAITDRAIN, to indicate that
  we're waiting for the pending_xfers queue to empty.
1998-12-08 00:13:58 +00:00
mjacob
337eb43541 NOMODESENSE for all Seagate ST19171- not just FC 1998-12-05 20:52:47 +00:00
mjacob
d610e1ad3f Update BA for new max_lun parameter for SCSIbusses. Clearify maximum luns
for FC HB based upon a SCCLUN define (15 for normal- 255 out of a possible
65535 for SCCLUN). Propagate loopid as adapter_target.

Roll minor platform version. Roll core version number.

Update mailbox definitions with cleaner target mode structure definitions.
Clean up some ENDIAN stuff. Correct botched ISP2100_NVRAM_HARDLOOPID offset.
1998-12-05 19:48:23 +00:00
mjacob
74bc9f26d5 Update HBAs to incorporate the new max_lun property. 1998-12-05 19:43:33 +00:00
mjacob
4b8245a959 Add a max_lun property to match with the max_target property. Shorten
max_target to int16.
1998-12-05 19:41:31 +00:00
mjacob
33fde1ad76 Eliminate the moreluns entry as it makes no sense for fat SCSI busses (e.g,
FC loops). Change the semantics of scsi_probedev so that it returns 1 if
you should continue probing at this target, else 0 for not.

Replace the blanket use of '7' with the use of the new sc_maxlun property
that is now gathered from HBAs. Allocate scsipi_link arrays based upon this.
Fix a really nasty and silly bug that has been there for a while where the
number of first level scsipi_link structures was one less than it needed
to be.
1998-12-05 19:39:23 +00:00
matt
3f225e009d Add Sigma Designs REALmagic Hollywood Plus MPEG-2 decoder 1998-12-05 19:02:14 +00:00
dbj
8f7f8d557d made prototype for debug function wss_dump_regs match its definition. 1998-12-05 10:49:24 +00:00
mjacob
9d51ff8e34 Roll to 1.15 f/w level for Qlogic 2100. Leave all flavors in, but control which
one gets compiled in by default. The default is private loop, non-expanded lun.
1998-12-05 00:28:05 +00:00
mjacob
45fb6a3e74 Add in and enable latest SBus ISP Firmware (1.31) 1998-12-05 00:25:26 +00:00
drochner
3a08ae9402 always use unsigned numbers for screen positions (for sanity - the libkern
min() et al. did unsigned comparisions before)
make ROWS_ABOVE / ROWS_BELOW return signed values, the negative results
occur if the cursor is outside the scrolling region
1998-12-04 20:48:04 +00:00
drochner
9175cc0ddf The chipset manual doesn't tell the truth about the channel enable
register bits. Replace by experimental result.
1998-12-04 17:30:55 +00:00
bouyer
c10f6edafc AT_ERROR should be different from AT_TIMEOUT. pointed out by Matthias Drochner. 1998-12-04 11:17:54 +00:00
pk
19f705b094 Cast bus_space_{read,write}_multi arguments. 1998-12-03 23:33:45 +00:00
augustss
a68f1ef94c Handle the case where the device does not support GET_PEPORT better. 1998-12-03 20:43:19 +00:00
augustss
bedb40a78c Use umodem as the modem driver stub. 1998-12-03 19:58:09 +00:00
bouyer
47ab212504 Rename pio_mode, etc ... to PIO_cap, etc ... for consistency with the
ata_drive_datas struct. Suggested by Soren S. Jorvan.
1998-12-03 18:24:30 +00:00
bouyer
71f33dbfa5 UDMA->Ultra-DMA in a printf 1998-12-03 17:30:32 +00:00
bouyer
334abc06cf Correct definition for SIS_TIM_UDMA_EN macro. Ultra-DMA should now work ... 1998-12-03 17:29:01 +00:00
bouyer
e39a5bdc53 Now that vtophy() is no longuer used, re-enable WDCDEBUG, with
wdcdebug_pciide_mask = 0 (so that one can easily patch this variable and give
me more informations :)
1998-12-03 17:27:57 +00:00
bouyer
2b28c858d8 add a udma_mode field to wdc_softc, and use it the same way dma_mode is used
(higthest ultra-dma mode supported). There may be a higther ultra-dma mode
defined ...
1998-12-03 15:38:59 +00:00
oster
1b04131eff Try a bit harder to detect the physical failure of a component, and to
mark that component as dead.  Physical failures are handled much better now.
1998-12-03 15:14:40 +00:00
oster
3f3d8e85e6 If a configuration fails due to a non-existant spare, remember to release
any previously allocated components before bailing.  Credit to Manuel Bouyer
for noticing this.
1998-12-03 15:06:25 +00:00
oster
679de7e878 Fix (potential) referencing of null pointer in (verbose) debugging mode. 1998-12-03 14:58:24 +00:00
bouyer
ba90b4b2d3 Add URLs of documentation source (from Matthias Drochner). 1998-12-03 14:06:16 +00:00
bouyer
7d87d6a5f6 Use correct register when disabling the second channel. 1998-12-03 13:50:38 +00:00
bouyer
8ef785add8 Restore changes from revision 1.17:
"If a channel has no drives, do *not* unmap its I/O regions.
 It's not really safe to use them for anything else, and in legacy mode it
 will just cause us to probe the channel again as an ISA device."
1998-12-03 13:30:00 +00:00
bouyer
1af63c0605 Correct a few bogons in the SiS chip initialisation. 1998-12-03 13:25:44 +00:00
bouyer
09408781c9 Ouh ! Correct the 8-bit PCI registers reading/writing functions: need to
multiply the register offset by 8.
1998-12-03 13:24:11 +00:00
augustss
2228eaca8a Add configuration and interface locators. 1998-12-02 22:57:08 +00:00
augustss
cf75925c7f Even shorter printfs at attach. 1998-12-02 22:54:52 +00:00
augustss
4b4afb8252 Regen. 1998-12-02 22:51:50 +00:00
augustss
7270b91afe Shorten some vendor names. 1998-12-02 22:49:51 +00:00
augustss
e424a174ba Add stub for a modem driver. 1998-12-02 22:47:19 +00:00
augustss
fd3af06364 Avoid wrapping lines in attach printfs. 1998-12-02 17:20:20 +00:00
augustss
7d417ca964 Handle compound devices in usbd_get_report_descriptor(). 1998-12-02 17:17:40 +00:00
augustss
c4dc0e3950 Regen. 1998-12-02 17:14:53 +00:00
augustss
65145fce2c Fix typo. 1998-12-02 17:11:51 +00:00
augustss
41095ae62a Add some new devices. 1998-12-02 17:02:59 +00:00
bouyer
1d5d5ab40a In struct wdc_xfer, change 'channel' to a pointer to a channel_softc, to avoid
a double-pointer dereference at run-time. Suggested by Matthias Drochner.
1998-12-02 15:53:34 +00:00
bouyer
45675ab14b - change drive_flags from u_int8_t to u_int16_t
- keep the modes supported by the drive in struct ata_drive_datas (will be
  later used for downgrading the DMA/PIO mode on error)
- use config flags to force/disable PIO/DMA/UDMA modes
- For the CMD PCI0643/6 setup DMA mode to DMA Read multiple.
1998-12-02 10:52:24 +00:00
christos
a5d7ea15aa Regen. 1998-12-02 09:43:15 +00:00
christos
8692433023 add the compat id for the aha-1542cp 1998-12-02 09:42:57 +00:00
sommerfe
57ba10cfab Change ofisa attachment comparable to change drochner made to isa
attachment.  Works at least well enough to allow kernel to build &
boot on diskless shark with wdc controller in it.
1998-12-02 00:18:41 +00:00