Commit Graph

26 Commits

Author SHA1 Message Date
is 313b807f3f Only change my own license conditions. 2004-03-25 11:12:08 +00:00
is 6de8cab7db UCB no longer requires the advertising clause. 2004-03-25 10:53:46 +00:00
agc aad01611e7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
2003-08-07 16:26:28 +00:00
thorpej 8818afa48e Use PAGE_SIZE rather than NBPG. 2003-04-01 21:26:26 +00:00
thorpej c5e91d447d Use CFATTACH_DECL(). 2002-10-02 04:55:47 +00:00
thorpej 9a711d6985 Declare all cfattach structures const. 2002-09-27 20:29:02 +00:00
aymeric 1ea4df81a8 add __KERNEL_RCSID as suggested by Luke Mewburn 2002-01-28 09:56:43 +00:00
aymeric 9382c87338 - ANSIfy
- remove some trailing spaces/tabs
- minor style nits
2002-01-26 13:40:52 +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
kleink 8bc084e1de Kill more broken cf_unit bogons. 2000-03-16 16:37:20 +00:00
is e80be24250 Yet another cpu.h. 2000-01-16 21:19:44 +00:00
mjacob 74bc9f26d5 Update HBAs to incorporate the new max_lun property. 1998-12-05 19:43:33 +00:00
thorpej 5f0577babc Adapt to the new scsipi_adapter interface. 1998-11-19 21:43:00 +00:00
thorpej 29d472f53d Garbage-collect the open_target_lu and close_target_lu entry points from
struct scsipi_adapter; they were not used.

Add a scsipi_ioctl entry point to struct scsipi_adapter.  This will be
used to issue ioctl commands to the host adapters.

Inspired by PR #6090, from Matt Jacob.
1998-10-10 00:28:28 +00:00
is 8eebf1cfc5 yet more atomic operations accessing DraCo registers 1998-07-26 06:45:17 +00:00
thorpej 0b6e56ec02 Adjust for changes to config. 1998-01-12 10:39:01 +00:00
bouyer 6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
veego 94b6312429 Get rid of __BROKEN_INDIRECT_CONFIG. 1996-12-23 09:09:49 +00:00
thorpej d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +00:00
is ca9770feb9 Make sure autoconfiguration is searching for _us_. There is more than
one DraCo specific device on the DraCo mainbus.
1996-11-30 01:27:04 +00:00
christos ca36ac9ef4 backout previous kprintf change 1996-10-13 03:05:43 +00:00
christos 946833855f printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:51:21 +00:00
cgd 71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
cgd 2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
is 1a41d54c27 Yet some more cleanup for missing prototypes, if DRACO is supported. 1996-05-19 19:03:01 +00:00
is f6ab1073c8 First part of M68060 and DraCo support.
* for the M68060 part: store buffer and branch target cache aren't
  enabled yet (this needs cleanup of lots of locore.s code which is a
  maze of little passages, all a little different) (and it wasn't yet
  tested in an accellerated Amiga, only in the DraCo).

  I've included a workaround for 2 of the CPU bugs in chips with Masks
  1F43G and earlier, but didn't bother to deal with the can of worms
  in the [0-3]D11W chips. Be sure to get "68060 rev. 1" or more
  reported at kernel startup time, or at least mention it (or the mask
  revision, if available) when reporting problems.

* for the DraCo: only machines with a CIA timer.

  I assigned machine id 32000+nn (0x7Dnn), where n is the machine
  readable Quicklogic custom chip revision (also printed at boot
  time).  "Guaranteed to work" up to rev. 3, newer DraCo's aren't
  guaranteed to have any CIA (we don't have a driver for the new timer
  yet).

  Supported are:

  - MF-II keyboards on the native interface and A3000 keyboards via
    the CIA.
  - builtin SCSI interface (yet another instance of siop)
  - CIA timer.
  - Zorro II devices which don't do DMA (don't get mapped to Zorro II
    address space in the DraCo)
  - "local bus" devices which are autoconfigured by the boot rom
    (should be all); only an Altais driver is there (looks like a Retina Z3)

  Not yet supported are:

  - native timer of newer machines.
  - Real Time Clock.
  - serial, parallel + floppy on the SuperIO chip (that is also: no mouse)

  XXX You need an enhanced boot loader, which will committed in a few days.

  XXX std.draco should and will go away.
1996-05-09 20:30:30 +00:00