Commit Graph

61 Commits

Author SHA1 Message Date
christos
168cd830d2 __unused removal on arguments; approved by core. 2006-11-16 01:32:37 +00:00
christos
4d595fd7b1 - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
2006-10-12 01:30:41 +00:00
christos
95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
christos
2ccc3ff1e9 - add const
- avoid variable shadowing.
2005-05-30 04:32:38 +00:00
perry
f31bd063e9 nuke trailing whitespace 2005-02-27 00:26:58 +00:00
perry
18db93c7f6 de-__P 2005-02-04 02:10:35 +00:00
drochner
1308c6d767 Separate the namespace for default (ie unspecified) locators used
by the isa.c bus driver and the "address/whatever not specified"
argument passed to leaf device drivers.
The former is "ISACF_XXX_DEFAULT" as generaterd by config(8), the latter
"ISA_UNKNOWN_XXX", defined in isavar.h.
This way we save a dependency of every ISA device driver on "locators.h".
2004-09-14 20:20:46 +00:00
christos
7aec408c5a avoid stupid printfs during probe 2003-04-03 15:36:31 +00:00
perry
c290830eb1 changed asm()s to __asm()s.
XXX Now, could someone please explain to me why in the love of Bob a
file containing inline x86 assembler is in sys/dev/isa/????
This should be moved, fixed, or nuked from space.
2002-11-02 02:10:56 +00:00
thorpej
60530be43c Fix sizeof and whitespace bug from the script I'm using to do the
CFATTACH_DECL conversion.  (Grumble.)
2002-10-02 03:10:45 +00:00
thorpej
0dac35b547 Use CFATTACH_DECL(). 2002-10-02 02:00:07 +00:00
thorpej
f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
bouyer
e5727031fb Implement mstohz() as discussed on tech-kern, and use it in SCSI drivers
to convert xs->timeout to callout() parameter.
2002-04-05 18:27:45 +00:00
sommerfeld
c127a007e8 really fix it this time. 2002-01-28 03:47:14 +00:00
sommerfeld
3c99883ed4 Finish conversion to new-style isa config machinery (#ifdef DEBUG code was
left unconverted)
2002-01-28 03:45:25 +00:00
tsutsui
b87a051ec8 Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:17:05 +00:00
thorpej
3835413bc1 Overhaul of the ISA autoconfiguration code to support direct
configuration of devices logically attached to the ISA bus:

* Change the isa_attach_args to have arrays of io, mem, irq, drq
  resources.
* Add a "pnpnames" and a linked list of "pnpcompatnames" to the
  isa_attach_args.  If either of these members are non-NULL,
  direct configuration of the bus is being performed.  Add an
  ISA_DIRECT_CONFIG() macro to test for this.
* Drivers are not allowed to modify the isa_attach_args unless
  direct configuration is not being performed and the probe fucntion
  is returning success.
* Adapt device drivers -- currently, all driver probe routines return
  "no match" if ISA_DIRECT_CONFIG() evaluates to true.
2002-01-07 21:46:56 +00:00
lukem
2565646230 don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
lukem
3f7d8d47b6 add RCSID 2001-11-13 08:01:09 +00:00
thorpej
42a4d5b520 bcmp -> memcmp 2001-07-18 20:42:54 +00:00
wiz
0a600be867 receive, not recieve 2001-06-12 15:17:10 +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
bouyer
179157be03 Fix a reversed test.
Partial fix for kern/11726: now the kernel find the drives, but panics
after a device has been mounted.
2000-12-17 19:35:23 +00:00
thorpej
d28fe378bc Use device_lookup(). 2000-07-06 02:02:48 +00:00
mycroft
319d44bfb1 Adjust asm patterns for newer versions of GCC. 2000-05-03 21:20:07 +00:00
augustss
169ac5b3c1 Remove register declarations. 2000-03-30 12:41:09 +00:00
thorpej
fc96443d15 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
thorpej
63b8530b4e Update for SCSPI changes. 1999-09-30 23:04:39 +00:00
cgd
fa26744c04 don't need isa_machdep.h, since isavar.h is included 1999-03-19 05:42:00 +00:00
mycroft
4449a6ef39 Kill vestiges of isa_establish(). 1999-02-19 16:15:06 +00:00
mjacob
74bc9f26d5 Update HBAs to incorporate the new max_lun property. 1998-12-05 19:43:33 +00:00
thorpej
3b068a6c78 Adapt to the new scsipi_adapter interface. 1998-11-19 21:53:32 +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
mycroft
6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
thorpej
5bc2217a49 Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-09 07:24:55 +00:00
drochner
13463145fe make it compile without BROKEN_INDIRECT_CONFIG 1998-01-13 19:33:28 +00:00
thorpej
06ce220790 Update for config changes. 1998-01-12 09:39:57 +00:00
perry
fff05a68ab RCSID Police. 1998-01-05 07:31:05 +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
mikel
53945ccb19 Eliminate unsolicited spewage; PR #2108. 1996-11-05 07:20:32 +00:00
christos
86373f8cf9 backout kprintf changes 1996-10-13 01:37:04 +00:00
christos
58953408cb printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:04:48 +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
mycroft
cec36bf8d5 Use intr.h. 1996-05-12 23:51:23 +00:00
christos
1c86bef3bc Fix gcc -Wall warnings. 1996-04-29 20:28:40 +00:00
cgd
51e85d07b9 update for addition of a machine-dependent cookie as the first argument
to isa_intr_{,dis}establish().
1996-04-11 22:27:59 +00:00
thorpej
de7c200585 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 00:53:54 +00:00
mycroft
3da4b2a160 The IST_* and IPL_* constants are not bus-specific; don't treat them as such.
Change splimp -> splnet in Ethernet, ARCnet, and FDDI drivers.
1995-12-24 02:29:35 +00:00
thorpej
a47ab73248 memcmp -> bcmp. Fixes PR #1518. 1995-09-26 22:56:54 +00:00