Commit Graph

18 Commits

Author SHA1 Message Date
thorpej 434a4243a1 Fix the way the scsipi adapter openings are adjusted when the array
controller adjusts our queue length.
2003-06-13 02:33:09 +00:00
ad 57d787eeac - Handle DPT ioctls from native NetBSD binaries.
- SCSI targets could disapper mid-way through autoconfig if the board
  notifed us of a changed LCT at the wrong time. Fix that.
2002-12-06 11:22:25 +00:00
thorpej c9b3657ce9 Add trailing ; to CFATTACH_DECL. 2002-10-02 16:33:28 +00:00
thorpej 9d4a640785 Use CFATTACH_DECL(). 2002-09-30 21:04:24 +00:00
thorpej f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
provos 0f09ed48a5 remove trailing \n in panic(). approved perry. 2002-09-27 15:35:29 +00:00
tsutsui c12b5c180d Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:41:02 +00:00
lukem 05b019ba0f add RCSID 2001-11-13 12:24:11 +00:00
ad 1d6329bb04 Parameter group changes:
- Do FIELD_SET correctly for scalar types.
- Add some basic table ops.
- Push error reporting back into iop.c.
- Add some field index and (yet more) LAN defs to i2o.h.
2001-08-22 09:42:05 +00:00
ad 03e46dc80b Some changes from OpenBSD, and some of my own:
- More SCSI port defs.
- Nuke vtophys().
- Release resources in iop_init() upon failure.
- Don't use a message wrapper when initalising the outbound FIFO.
- A couple of field size/endian fixes.
- Just use iop_post() when we don't need special handling.
- IM_DISCARD is now pointless, since we don't queue at the driver level.
- Map data transfers from/to userspace directly.
- A few comment and stylistic changes.
2001-08-04 16:54:18 +00:00
bouyer f47d097cf5 Make it compile with SCSIPI_DEBUG 2001-06-26 12:46:56 +00:00
bouyer 937a7a3ed9 Pull up the thorpej_scsipi branch to main branch.
This is a completely rewritten scsipi_xfer execution engine, and the
associated changes to HBA drivers. Overview of changes & features:
- All xfers are queued in the mid-layer, rather than doing so in an
  ad-hoc fashion in individual adapter drivers.
- Adapter/channel resource management in the mid-layer, avoids even trying
  to start running an xfer if the adapter/channel doesn't have the resources.
- Better communication between the mid-layer and the adapters.
- Asynchronous event notification mechanism from adapter to mid-layer and
  peripherals.
- Better peripheral queue management: freeze/thaw, sorted requeueing during
  recovery, etc.
- Clean separation of peripherals, adapters, and adapter channels (no more
  scsipi_link).
- Kernel thread for each scsipi_channel makes error recovery much easier
  (no more dealing with interrupt context when recovering from an error).
- Mid-layer support for tagged queueing: commands can have the tag type
  set explicitly, tag IDs are allocated in the mid-layer (thus eliminating
  the need to use buggy tag ID allocation schemes in many adapter drivers).
- support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command
  will be requeued, or a REQUEST SENSE will be sent as appropriate.

Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
2001-04-25 17:53:04 +00:00
ad 99187cdd56 - Allocate any private space that's requested.
- Fix a few bogons with the last update.
- Add some more LAN defs.
2001-04-01 15:02:08 +00:00
ad ebf5110997 Major update; basically, improve performance somewhat and play nicer with
Intel and AMI IOPs. There still exists one nasty problem with Intel adapters
when under load, which I'm working on.
2001-03-20 13:01:48 +00:00
ad fc919d3e61 FC peripherals on DPT/Adaptec boards only respond to private class messages. 2001-02-07 17:05:46 +00:00
ad af9d4c4fa4 - Only configure un-claimed devices. Implement re-configuration.
- Adhere to the spec better in some places. Also, work around some quirks
  noted in the Linux I2O code.
- Register event handlers for the executive and RBS devices.
- Fix a number of buglets and tidy a little.
- Implement a message pass-through interface and some other useful ioctls.
2000-12-03 13:17:03 +00:00
ad 0129c52c7d - A few minor changes (typos and the like).
- Use SPLs in iop_msg_send() and not the interrupt mask - it accesses
  shared resources lower down.
2000-11-09 12:51:36 +00:00
ad d49fd13524 Add support for I2O adapters and SCSI/FC-AL/BSA class devices. This needs
more testing with different configurations, and work in a number of areas
(which I'm not able to do for a little while), but is at least functional
and stable on i386 with DPT adapters.
2000-11-08 19:45:30 +00:00