Commit Graph

144 Commits

Author SHA1 Message Date
thorpej dbb3225d5b Can't actually auto-discover wedges here yet, because ed drives are
not attached with interrupts enabled, meaning we can't do the required
I/O.  Add a comment to this effect.
2004-09-25 16:13:42 +00:00
thorpej 2a671cfd0e Add support for wedges to the MCA ESDI disk driver. 2004-09-25 04:47:02 +00:00
jdolecek f2d3769fa4 compute the shared memory location instead of hardcoding list of 'known'
pos3 values for 8013 variants; fixes attachment for some variants

patch provided in PR port-i386/26877 by Dave Barnes
2004-09-08 19:09:43 +00:00
jdolecek eefdd9368e fix mask for getting WD8003 I/O address location, so it works even
for 0x300-0x3E0 bases; also miscellaneous white-space and comment fixes

patch provided by in PR port-i386/26871 by Dave Barnes
2004-09-08 17:44:53 +00:00
drochner 0b2a837787 use a submatch function for drive attachment, and pass locators
just for sanity
2004-09-01 20:57:58 +00:00
drochner 266668cb7d There is no point in using config_found_sm() if there is no submatch function.
(actually, there should be one...)
2004-08-30 18:28:33 +00:00
drochner 9a623ba311 use the locator-passing variant of autoconf submatch and use constants
from locators.h
2004-08-30 18:27:21 +00:00
drochner 46289e1fef Phase out the use of a string as first "attach args" member to control
which bustype should be attached with a specific call to config_found()
(from a "mainbus" or a bus bridge).
Do it for isa/eisa/mca and pci/agp for now. These buses all attach to
an mi interface attribute "isabus", "eisabus" etc., and the autoconf
framework now allows to specify an interface attribute on config_found()
and config_search(), which limits the search of matching config data
to these which attach to that specific attribute.
So we basically have to call config_found_ia(..., "foobus", ...) where
such a bus is attached.
As a consequence, where a "mainbus" or alike also attaches other
devices (eg CPUs) which do not attach to a specific attribute yet,
we need at least pass an attribute name (different from "foobus") so
that the foo bus is not found at these places. This made some minor
changes necessary which are not obviously related to the mentioned buses.
2004-08-30 15:05:15 +00:00
drochner 5fa053333d add centralized {eisa,isa,pci,agp,mca}busprint() functions which do
what tens of the bus' parents foo{...}bridge_print()s scattered around do
2004-08-30 10:30:38 +00:00
thorpej 46f4277564 WDCDEBUG -> ATADEBUG. 2004-08-13 04:10:49 +00:00
itojun aca4c091d3 sprintf -> snprintf 2004-04-22 00:17:10 +00:00
jdolecek f5f3fd557c fixup code for Elite card attachments, and adjust autoconfig messages
a little
2004-01-20 19:59:59 +00:00
jmc 43bf89bfc6 Fixes from PR#23177. Various lint/logic fixes:
Fix some non-initialized variables
close the output files when done
Redo the printing for RCS strings so they don't expand in the awk script too
Do proper tests for variables existance before accessing

Verified output from all scripts is identical to original versions
2003-12-15 07:32:20 +00:00
wiz ee1b406595 Spell address with two d's. Inspired by similar changes in OpenBSD,
originating from Jonathon Gray and forwarded by jmc@openbsd.
2003-11-10 08:51:51 +00:00
mycroft 8e823735c6 break -> return in previous. 2003-10-25 20:19:01 +00:00
christos 8bfd5e3292 Fix uninitialized variable warnings 2003-10-25 18:34:14 +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
lukem 365cbd9428 add missing __KERNEL_RCSID() 2003-07-14 15:47:00 +00:00
fvdl d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
jdolecek c46b3f8bf7 regen: allocate identifier for BusTek BT-640A adapter 2003-06-29 14:49:15 +00:00
jdolecek 95ab1275a4 allocate identifier for BusTek BT-640A adapter 2003-06-29 14:48:21 +00:00
darrenr 960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
thorpej e43fecb228 Change bounds_check_with_label() to take a pointer to the disk structure,
rather than the label itself.  This paves the way for some future changes.
2003-05-10 23:12:28 +00:00
dsl d91455ce26 Change return type of readdisklabel() to const char *
I hope I've found all the correct places!
2003-05-02 08:45:10 +00:00
simonb f0192b8a3f Remove assigned-to but not used variable (including nice little switch
statement to set said variable).
2003-02-23 04:14:16 +00:00
simonb e40197c4b3 Remove assigned-to but not used variable. 2003-02-23 04:10:11 +00:00
thorpej 72a7af27b0 Use aprint_normal() in cfprint routines. 2003-01-01 00:10:15 +00:00
jdolecek 1a82d4f05f regen - addition of 0x90EE, IBM SVGA Adapter/A 2002-12-04 18:53:14 +00:00
jdolecek 53ba962fcf add 0x90EE - IBM SVGA Adapter/A 2002-12-04 18:52:28 +00:00
tsutsui 9604e7689d More cleanup of MI mb86960 driver:
- Add support for byte system bus mode. Based on patch in kern/17193 by
  Christian Groessler, with some improvements by me.
- Rename sc_flags in mb86960_softc to sc_stat, rename "type" to sc_flags
  to specify controller quirks and remove enum mb86960_type.
- Pass controller type via new sc_flags in mb86960_softc rather than
  via an mb86960_attach() arg.
- Handle unaligned mbufs properly in mb86960_write_mbufs(). (from ne2000.c)
- Fix a signed/unsigned comparision warning.
- Add definitions of status bits in the RX packed header.
- Change types of some members in mb86960_softc.
2002-11-30 14:15:10 +00:00
mrg 603098b9b5 implement separate read/write disk statistics:
- disk_unbusy() gets a new parameter to tell the IO direction.
	- struct disk_sysctl gets 4 new members for read/write bytes/transfers.
	when processing hw.diskstats, add the read&write bytes/transfers for
	the old combined stats to attempt to keep backwards compatibility.

unfortunately, due to multiple bugs, this will cause new kernels and old
vmstat/iostat/systat programs to fail.  however, the next time this is
change it will not fail again.

this is just the kernel portion.
2002-11-01 11:31:50 +00:00
jdolecek e0cc03a09b merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe
2002-10-23 09:10:23 +00:00
tsutsui fdedb8dbd6 - Merge dev/ic/ate_subr.c into dev/ic/mb86960.c since it only has EEPROM
read function which can also be used for other MB86965 based boards.
- Rewrite EEPROM read function as per 93C06 EEPROM datasheet.
- Misc cleanup.
2002-10-04 15:22:27 +00:00
thorpej c9b3657ce9 Add trailing ; to CFATTACH_DECL. 2002-10-02 16:33:28 +00:00
thorpej 9bb77522c1 Use CFATTACH_DECL(). 2002-09-30 21:31:52 +00:00
tsutsui 065fc336c2 Move AT1700/RE2000 EEPROM definitions from isa/if_fereg.h to ic/ate_subr.h.
XXX Maybe all stuff in ate_subr.* should be merged into ic/mb86960*.[ch].
2002-09-28 18:19:08 +00:00
thorpej f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
thorpej 6c88de3b53 Introduce a new routine, config_match(), which invokes the
cfattach->ca_match function in behalf of the caller.  Use it
rather than invoking cfattach->ca_match directly.
2002-09-27 03:17:40 +00:00
thorpej d1ad2ac4f2 Rather than referencing the cfdriver directly in the cfdata entries,
instead use a string naming the driver.  The cfdriver is then looked
up in a list which is built at run-time.
2002-09-27 02:24:06 +00:00
gehenna 77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
hannken 7de36862a8 Rename bufq_init() to bufq_alloc().
Add bufq_free() to remove a buffer queue.
Avoid MALLOC while holding a spinlock.

From Chuck Silvers.
2002-07-21 15:32:17 +00:00
hannken 856bd17f66 Convert to new device buffer queue interface. 2002-07-20 16:30:18 +00:00
jdolecek 23f67512e0 edc_cmd_wait(): it is absolutely necessary to wait for the BSR_CMD_INPROGRESS
flag to clear, even when the COMMAND COMPLETE interrupt already did happen,
  otherwise we get ATTENTION ERROR for next command if it happens soon
  enough; this fixes the reliability problems introduced by previous change

some other cleanup & simlify of edc_cmd_wait()/edc_run_cmd(), the 'secs'
  is just a hint used in !poll case only
add some comments
move status_block[] back to edc_mca_softc, to save stack memory
make #ifdef DEBUG #ifdef EDC_DEBUG and g/c some obsolete debug stuff
make some EAGAINs EIOs
edc_intr(): wakeup the waiter for any command, not just READ/WRITE DATA
2002-03-31 10:01:26 +00:00
jdolecek 3ead6be6bd no need to splbio() while manipulating sc_q - it's accessed from
process context only (edcworker())
2002-03-29 20:10:46 +00:00
jdolecek 313e79182d aha at mca? confirmed working (test card provided by Jonathan Hankins) 2002-03-24 18:47:54 +00:00
jdolecek 6c9be960fd update comments + cosmetic change in aha_mca_probe()
Driver is now confirmed working. Tested with AHA-1640 card provided to me
by Jonathan Hankins.
2002-03-24 18:46:49 +00:00
jdolecek b042e5bdb0 drop the isadma attribute for aha, aha at mca? doesn't use that 2002-03-24 18:03:58 +00:00
thorpej 6ca57419d1 Labels must be followed by statements. 2001-12-31 22:07:58 +00:00
jdolecek 27b0006d34 it doesn't make sense to wait for resources during autoconfiguration 2001-12-06 21:04:27 +00:00
jdolecek a275d0a6b9 clarify copyright - this is all freshly written, no older code used 2001-12-04 20:51:23 +00:00