Commit Graph

1887 Commits

Author SHA1 Message Date
kato
74bccae1f5 Oops, I forgot to commit two diffs to fe driver. 1998-12-15 15:56:37 +00:00
kato
cc284d2636 PC/AT(ISA) version and PC-98(NEC) version of if_fe drivers are merged,
as well as several functional additions.

(1) dot3 MIB support.
(2) if_media selection method support.
(3) bridge support.
(4) new boards support. Supported boards are as follows.
    [PC/AT]
     * Fujitsu FMV-180 series
     * Allied-Telesis RE2000 series
     * Allied-Telesyn AT1700 series
     * Gateway Communications G/Ether series
     * UB networks Access/PC ISA series
     * TDK/LANX LAC-AX series
     * ICL EtherTeam16i series
     * RATOC REX-5586/5587
    [PC-98]
     * Allied-Telesis RE1000 series
     * Allied-Telesis RE1000Plus/ME1500 series
     * Contec C-NET(9N)E series
     * Contec C-NET(98)P2 series
     * UB networks Access/PC N98C+ series
     * TDK/LANX LAC-98 series(not tested)

Submitted by: seki@sysrap.cs.fujitsu.co.jp (Masahiro Sekiguchi) and
              chi@bd.mbn.or.jp (Chiharu Shibata)
1998-12-15 15:51:37 +00:00
gibbs
147f35e007 Pull in new ccb_hdr list types. 1998-12-15 08:24:45 +00:00
gibbs
4bb599f96c Perform a save data pointers operation if a data transfer was performed
in target mode, but we are not completing the command.

Use a template of allowed bus arbitration phases to selectively and
dynamically enable/disable initiator or target (re)selection.

Properly handle timeouts for target role transactions - just go to the
bus free state and report the error to the peripheral driver.

Checkpoint support for the XPT_ABORT_CCB function code.  This currently
handles the accept tio and immediate notify ccb types, but does not
handle the continue target I/O or SCSI I/O ccb types.  This is enough
to handle dynamic target enable/disable events.

Clean up the SCSI reset code so that we perform at most 1 SCSI bus
reset at initialization, the reset requested by the XPT layer.
1998-12-15 08:22:42 +00:00
n_hibma
1531d24acf Added UCLASS_CDC definitions to usb.h 1998-12-15 07:06:51 +00:00
imp
c1b89abf0d o Convert length of hccb to integer from the array. Eivind Eklund
pointed this out, but I've not seen a manifestation of this.
o Check against 0x00 as well as 0xff for geometry register, as some clone
  cards don't return 0xff.  Vadim Mikhailov pointed this out in PR
  8743 for his Dell SCSI Array controller working in AHA-1540
  emulation mode.  Note that this test is likely to go away in the
  future in favor of a better one Justin has recommended.
1998-12-15 02:51:54 +00:00
julian
f4d6fc7ea6 The OHCI interfaces I have access to map their control regs etc. into
memory address space rather than IO space.. reflect this when looking for the
interface revision register.

If this is not true for them all then we probably need some smarter code.
1998-12-14 21:14:11 +00:00
bde
746dcb079d Fixed LINT breakage in previous commit. Option FDC_YE enabled a
syntax error.  Options FDC_YE and DEVFS together enabled references
to a nonexistent variable and calls of a nonexistent function.
1998-12-14 16:29:58 +00:00
n_hibma
bb7a814654 Added Id 1998-12-14 09:40:15 +00:00
n_hibma
b25219fcba Added Id to all files 1998-12-14 09:32:25 +00:00
n_hibma
a9ce772c0c Added Id 1998-12-14 09:31:41 +00:00
n_hibma
3d4b15f81a Added comment 1998-12-14 09:15:19 +00:00
n_hibma
cccb885020 Added copyright and Id 1998-12-14 09:13:29 +00:00
dillon
1b46557c21 probe function changed from returning char * to const char *. 1998-12-14 06:37:37 +00:00
dillon
5e557fc6bd pci_device pd_probe function changed from returning char * to returning
const char *.  Originally I was going to add casts from const char * to
    char * in some of the pci device drivers, but the reality is that the
    pci device probes return constant quoted strings.
1998-12-14 05:47:29 +00:00
n_hibma
db1a25dccb small oops on previous bug fix, it's late... 1998-12-13 23:53:42 +00:00
n_hibma
067b9d6ac9 small bug fix 1998-12-13 23:26:41 +00:00
n_hibma
d6b94b79c0 Removed unneeded definition 1998-12-13 23:16:20 +00:00
steve
f8cec29a5c Add support for another 3COM/USR PNP modem, USR3031. 1998-12-13 23:12:54 +00:00
n_hibma
4f19f2cec5 dded the stubs for umodem and ucom (communications class driver). They are nothing other than
the ugen driver with different variable names.
1998-12-13 23:04:35 +00:00
eivind
8fdbb602f1 Remove warning introduced by the last committer. 1998-12-13 23:00:48 +00:00
n_hibma
7a761ba5fa Updated USB kernel sources to NetBSD sources of 1998-12-09.
1 bug fix and several textual changes.
Preparing to feed back changes for port into NetBSD to create one source base.
1998-12-13 22:27:42 +00:00
gibbs
9bdc2c6395 Pull in fixes similar to those recently committed to the bt driver:
- For transactions of 0 length, us a non-residual checking CCB type.

 - Preserve command status if our interrupt handler completes a command
   while we are polling for completion in aha_cmd.
1998-12-13 00:05:04 +00:00
n_hibma
fb03cef48c Fixed warning in usr.sbin/usbd 1998-12-12 11:57:59 +00:00
imp
ca6fd0503c Add support for the YE-Data external PCMCIA floppy driver. This
floppy is used on the toshiba Libretto line of subnotebook computers.
It differs from a normal floppy in that you must use PIO rather than
DMA to transfer the data.

To enable this, you must add options "FDC_YE" to your kernel.  I don't
have a machine that has a floppy and a pcmcia slot to test to make
sure that this doesn't impact normal floppy units, so I've left this as
an option.

I have ported this to -current and made an attempt to ensure that the
indentation conforms to style(9), aka the bruce filter.

Reviewed by:	nate, markm
Submitted by:	David Horwitt (dhorwitt@ucsd.edu)
1998-12-12 08:16:01 +00:00
julian
1f33b54c67 If we failed to probe/attach somehow, we never have a sc->sc_hcca
but the present PCI probe code still thinks we are there as the pci attach
can't return an error code.

This means we are in the shared interrupt list, but have not been set up.
If we are sharing ints with another device, ohci_intr will be called and will
coredump on a NULL reference. So just return if it is called when not set up.

This fixes the symptom and not the cause.
The right answer is to let the PCI system know that the attach failed,
or to fail earlier (in the PCI probe).
The attach() is a void fn() so it can't return failure..
1998-12-11 06:02:06 +00:00
gibbs
5d9e607fd1 Remove unsued variable.
If we are not transfering any data, use a non S/G ccb type that doesn't
return residual information.  It seems that some firmware revisions dislike
S/G ccbs with 0 length S/G lists.

Correct bt_cmd() so that we always honor command status that was latched
by our interrupt routine while polling for completion..
1998-12-11 03:50:35 +00:00
n_hibma
ae03a8f07d Fixed same as Julian did in uhci_pci.c and fixed the fetching of the revision ohci_pci.c; clean up 1998-12-11 00:09:54 +00:00
julian
ab7355e57b The shift and the masking were in the wrong order for extracting
the INTERFACE type byte from the longword register.
1998-12-10 22:07:05 +00:00
eivind
d2f9690e5c Rename one of the two devfs_link's to devfs_makelink. 1998-12-10 19:57:01 +00:00
brian
578a7c3375 Support ESS1868 (and probably ESS688 & ESS1668).
Submitted by: Max Khon <fjoe@husky.iclub.nsu.ru>
1998-12-10 18:36:10 +00:00
gibbs
3e9f8a5d64 Revamp the way that exceptional message handling is performed so that it
is more robust and common code can be used for both the target and iniator
roles.  The mechanism for tracking negotiation state has also been simplified.

Add support for sync/wide negotiation in target mode and fix many of
the target mode bugs running at higher speeds uncovered.  Make a first
stab at getting all of the bus skew delays correct.  Sync+Wide dataout
transfers still cause problems, but this may be an initiator problem.

Ensure that we exit BITBUCKET mode if the controller is restarted.

Add support for target mode only firmware downloads.  This has been
tested on the aic7880, but should mean that we can perform target mode
on any aic7xxx controller.  Mixed mode (initiator and target roles in
the same firmware load) is currently only supported on the aic7890, but
with optimization, may fit on chips with less instruction space.
1998-12-10 04:14:50 +00:00
archie
b114eb4c1b Eliminate compiler warning. 1998-12-10 02:31:08 +00:00
archie
7e681e5e17 Eliminate compiler warning. 1998-12-10 01:52:16 +00:00
n_hibma
ff213ddb78 Various bug fixes:
1) Removed 'emulation' of bitmaps in printfs, FreeBSD seems to have caught
  up on that one
2) Fixed a few bugs in the timeout/timo timeout variables
3) First attempt at fixing a bug mentioned by Kazu: uhci_run is not able
  start/stop his USB host on his motherboard.
1998-12-09 23:36:15 +00:00
n_hibma
1e167561f8 Preliminary support for OHCI motherboards 1998-12-09 23:28:43 +00:00
n_hibma
716f1ecea7 1) Fixed bug: sc was used unitialised in uhci_run
2) Clean up the code and remove superfluous statements
1998-12-09 23:23:13 +00:00
eivind
6fc4a3adfc Someday I hope people will learn that "#endif" is not a comment
introducer in ANSI C.
1998-12-09 03:30:52 +00:00
eivind
b4ee85eb7d malloc(xxx, yyy, M_WAITOK) does not fail. This probably explains why
the bug in the check had never been discovered.
1998-12-09 02:18:53 +00:00
eivind
52811ba27f Adjust prototype to match definition (by adding a 'const'). 1998-12-09 01:12:18 +00:00
archie
60d13c7a9d The "easy" fixes for compiling the kernel -Wunused: remove unreferenced static
and local variables, goto labels, and functions declared but not defined.
1998-12-07 21:58:50 +00:00
wpaul
f72fa84f93 Add sanity check to foo_start() routines: in the unlikely (though
apparently possible) event that the transmit start routine is
called with and empty if_snd queue, bail out instead of dereferencing
unilitialized transmit list pointers and panicking.
1998-12-05 02:21:44 +00:00
mjacob
ad9bd899c9 oops on last 1998-12-05 01:46:40 +00:00
mjacob
6b499c42bc Remove the Target mode functions until they're in better shape. Implement some
suggested compilation cleanups from Eklund. Wire down a hard loop id if we are
not on a platform that has the ability to get to a PCI BIOS (it still will
float to the ID it gets after a LIP but at least we can try). Clarify that the
expanded lun is based upon SCCLUN defines (in f/w).
1998-12-05 01:33:57 +00:00
mjacob
ee4de20504 make a real "done" func; clarify some LUN widths 1998-12-05 01:31:21 +00:00
mjacob
993b50af59 compilation fixes from Eklund 1998-12-05 01:30:52 +00:00
mjacob
ba9a0c9f21 compilation fixes from Eklund && move XS_CMD_DONE to be a real function 1998-12-05 01:30:27 +00:00
mjacob
2dd2c8d11c do a bit of cleanup on some target mode structures and clarify a couple other minro things 1998-12-05 01:29:43 +00:00
mjacob
8500a9a7a3 roll core version minor and wire a non-i386 default Loop ID to 113 1998-12-05 01:28:38 +00:00
mjacob
9a7bd192e5 offset was wrong for HARDLOOPID in NVRAM 1998-12-05 01:07:52 +00:00