Commit Graph

1969 Commits

Author SHA1 Message Date
Simon L. B. Nielsen
9d67a21858 - Add the Dell PERC 4/Di to the list of supported devices; it
has been supported for the last 10 months. [1]
- Make the device list compact, since it is getting rather large.

Reported by:	David Magda <dmagda@magda.ca> [1]
MFC after:	2 weeks
2003-09-27 18:03:03 +00:00
Tom Rhodes
c3d7a60342 Update an email address overlooked by scottl.
Prompted by:	scottl's commit message (see rev 1.9 of iir.c).
2003-09-27 14:02:15 +00:00
Nate Lawson
297835bcd5 Sort debugging levels and update the man page to match reality. Also
update man page to reflect iasl(8) import.
2003-09-26 04:32:40 +00:00
Sam Leffler
bffc912d5d o add information about the debugging tools
o give proper attribution to Atsushi Onoe
2003-09-25 23:56:20 +00:00
John Birrell
61387b470a Make the fields in the text match dev/usb/usb.h too. 2003-09-24 05:55:59 +00:00
John Birrell
432facc3a8 Make the field names in the documented structures match dev/usb/usb.h. 2003-09-24 04:53:50 +00:00
Warner Losh
9473f5cf39 document Sony PEGA-WL110
# I think this is prism 3 based, but I could be wrong
2003-09-22 05:36:32 +00:00
Sam Leffler
47b03ede0c change bridge mib usage to reflect new world order
Prodded by:	Ruslan Ermilov <ru@FreeBSD.org>
2003-09-21 23:16:02 +00:00
Bill Paul
eed6f75013 Fix copyright (Wind River has no rights to this file).
Add Gigabyte 7N400 Pro2 motherboard integrated gigE to list of
supported devices.
2003-09-20 21:42:56 +00:00
Stefan Eßer
0c8f620780 Fix width of first column in FILES table to account for longer device name. 2003-09-20 15:16:56 +00:00
Stefan Eßer
ed2e6e111b Fix name of no-reset device (ulpn -> unlpt). 2003-09-20 15:13:35 +00:00
Stefan Eßer
c6316a6123 Correct card type of Netgear WG311 and add WAG311 and WGT511T
which are based on the AR5212 and should just work (not verified).
Add Proxim Skyline 4032, the PCI version of th e4030.
Add revision suffix 'B' to D-Link DWL-G520/G650 entries, in order
to indicate that revision A1 cards are not supported by this driver
(both A1 and B1/B2 cards are sold in identical boxes).
Explicitly point out the existence of unsupported DWL-G520/G650
(rev. A1) cards in the CAVEATS section.
Approved by:	sam
2003-09-20 15:10:38 +00:00
Wilko Bulte
56969d9d94 Note added support for 3C940 and Marvell Semiconductor 88E1000* gigabit PHY
Submitted by:	Jung-uk Kim <jkim@niksun.com>
Based on: Nathan L. Binkert's OpenBSD patch for sk(4)
2003-09-20 11:10:51 +00:00
Marcel Moolenaar
06b7363b33 o Properly spell my last name. Bad Hiten, no cookie :-)
o  Use the email address I put in my signature.
2003-09-20 04:13:16 +00:00
Sam Leffler
e2596b53fa o add some more retail card identifiers
o remove caveat about 11g operation; seems to work ok
2003-09-19 01:41:18 +00:00
Takeshi Shibagaki
123e4875af Add NEC PA-WL/54AG. 2003-09-16 22:43:36 +00:00
Hiten Pandya
b654922dc1 Update supported Ethernet Controllers as per the Hardware Notes.
PR:		docs/55559
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
MFC after:	3 days
2003-09-14 23:38:42 +00:00
Ruslan Ermilov
959d6c24f6 Get rid of duplicates. 2003-09-14 13:41:59 +00:00
Ruslan Ermilov
a1de21c12e mdoc(7): Fix common mistakes made in the SEE ALSO section. 2003-09-12 21:54:11 +00:00
Christian Weisgerber
0fbd709bd5 Add missing .El
Approved by:	ru
2003-09-11 13:45:29 +00:00
Warner Losh
eda5416940 compaq WL110 is a lucent card
Submitted by Jeremy Bingham
2003-09-10 19:34:51 +00:00
Ruslan Ermilov
743d5d518c mdoc(7): Properly mark C headers. 2003-09-10 19:24:35 +00:00
Ruslan Ermilov
4ddb47c4a9 mdoc(7): Moved #include directives into the SYNOPSIS section. 2003-09-10 18:47:07 +00:00
Ruslan Ermilov
13a91ca28f Typo. 2003-09-10 18:45:26 +00:00
Ceri Davies
0898b961b6 The re.4 manpage has been checked in now, so hook it back up. 2003-09-09 18:30:34 +00:00
Bill Paul
b9f78d2b4a Add a device driver for the Broadcom BCM4401 ethernet controller,
written by Stuart Walsh and Duncan Barclay (with some kibbitzing by
me). I'm checking it in on Stuart's behalf.

The BCM4401 is built into several x86 laptop and desktop systems. For the
moment, I have only enabled it in the x86 kernel config because although
it's a PCI device, I haven't heard of any standalone NICs that use it. If
somebody knows of one, we can easily add it to the other arches.

This driver uses register/structure data gleaned from the Linux
driver released by Broadcom, but does not contain any of the code
from the Linux driver itself. It uses busdma.
2003-09-09 18:17:23 +00:00
Bill Paul
6cee741b2b Add the re.4 man page, which I forgot to do last night. 2003-09-09 02:45:53 +00:00
Ruslan Ermilov
fe08efe680 mdoc(7): Use the new feature of the .In macro. 2003-09-08 19:57:22 +00:00
Doug Barton
4f6c710fc9 Looks like the re.4 man page didn't make it in the last commit,
so unhook it to get the build back in action.
2003-09-08 07:46:41 +00:00
Bill Paul
a94100fa9b Take the support for the 8139C+/8169/8169S/8110S chips out of the
rl(4) driver and put it in a new re(4) driver. The re(4) driver shares
the if_rlreg.h file with rl(4) but is a separate module. (Ultimately
I may change this. For now, it's convenient.)

rl(4) has been modified so that it will never attach to an 8139C+
chip, leaving it to re(4) instead. Only re(4) has the PCI IDs to
match the 8169/8169S/8110S gigE chips. if_re.c contains the same
basic code that was originally bolted onto if_rl.c, with the
following updates:

- Added support for jumbo frames. Currently, there seems to be
  a limit of approximately 6200 bytes for jumbo frames on transmit.
  (This was determined via experimentation.) The 8169S/8110S chips
  apparently are limited to 7.5K frames on transmit. This may require
  some more work, though the framework to handle jumbo frames on RX
  is in place: the re_rxeof() routine will gather up frames than span
  multiple 2K clusters into a single mbuf list.

- Fixed bug in re_txeof(): if we reap some of the TX buffers,
  but there are still some pending, re-arm the timer before exiting
  re_txeof() so that another timeout interrupt will be generated, just
  in case re_start() doesn't do it for us.

- Handle the 'link state changed' interrupt

- Fix a detach bug. If re(4) is loaded as a module, and you do
  tcpdump -i re0, then you do 'kldunload if_re,' the system will
  panic after a few seconds. This happens because ether_ifdetach()
  ends up calling the BPF detach code, which notices the interface
  is in promiscuous mode and tries to switch promisc mode off while
  detaching the BPF listner. This ultimately results in a call
  to re_ioctl() (due to SIOCSIFFLAGS), which in turn calls re_init()
  to handle the IFF_PROMISC flag change. Unfortunately, calling re_init()
  here turns the chip back on and restarts the 1-second timeout loop
  that drives re_tick(). By the time the timeout fires, if_re.ko
  has been unloaded, which results in a call to invalid code and
  blows up the system.

  To fix this, I cleared the IFF_UP flag before calling ether_ifdetach(),
  which stops the ioctl routine from trying to reset the chip.

- Modified comments in re_rxeof() relating to the difference in
  RX descriptor status bit layout between the 8139C+ and the gigE
  chips. The layout is different because the frame length field
  was expanded from 12 bits to 13, and they got rid of one of the
  status bits to make room.

- Add diagnostic code (re_diag()) to test for the case where a user
  has installed a broken 32-bit 8169 PCI NIC in a 64-bit slot. Some
  NICs have the REQ64# and ACK64# lines connected even though the
  board is 32-bit only (in this case, they should be pulled high).
  This fools the chip into doing 64-bit DMA transfers even though
  there is no 64-bit data path. To detect this, re_diag() puts the
  chip into digital loopback mode and sets the receiver to promiscuous
  mode, then initiates a single 64-byte packet transmission. The
  frame is echoed back to the host, and if the frame contents are
  intact, we know DMA is working correctly, otherwise we complain
  loudly on the console and abort the device attach. (At the moment,
  I don't know of any way to work around the problem other than
  physically modifying the board, so until/unless I can think of a
  software workaround, this will have do to.)

- Created re(4) man page

- Modified rlphy.c to allow re(4) to attach as well as rl(4).

Note that this code works for the sample 8169/Marvell 88E1000 NIC
that I have, but probably won't work for the 8169S/8110S chips.
RealTek has sent me some sample NICs, but they haven't arrived yet.
I will probably need to add an rlgphy driver to handle the on-board
PHY in the 8169S/8110S (it needs special DSP initialization).
2003-09-08 02:11:25 +00:00
Hiten Pandya
af3f61eb4e Change an is' to a was' in the AUTHORS section.
Recommended by:	jmallett
2003-09-07 16:34:03 +00:00
Marcel Moolenaar
854d378a59 Hook-up the uart(4) manpage.
Reminded by: bmah@
2003-09-07 02:52:25 +00:00
Hiten Pandya
fdae0df42a Mdoc Review:
* Remove extraneous .Pp in SYNOPSIS

	* Remove hard sentence break

	* Add the AUTHORS section
2003-09-06 23:46:29 +00:00
Marcel Moolenaar
27d5dc189c The uart(4) driver is an universal driver for various UART hardware.
It improves on sio(4) in the following areas:
o  Fully newbusified to allow for memory mapped I/O. This is a must
   for ia64 and sparc64,
o  Machine dependent code to take full advantage of machine and firm-
   ware specific ways to define serial consoles and/or debug ports.
o  Hardware abstraction layer to allow the driver to be used with
   various UARTs, such as the well-known ns8250 family of UARTs, the
   Siemens sab82532 or the Zilog Z8530. This is especially important
   for pc98 and sparc64 where it's common to have different UARTs,
o  The notion of system devices to unkludge low-level consoles and
   remote gdb ports and provides the mechanics necessary to support
   the keyboard on sparc64 (which is UART based).
o  The notion of a kernel interface so that a UART can be tied to
   something other than the well-known TTY interface. This is needed
   on sparc64 to present the user with a device and ioctl handling
   suitable for a keyboard, but also allows us to cleanly hide an
   UART when used as a debug port.

Following is a list of features and bugs/flaws specific to the ns8250
family of UARTs as compared to their support in sio(4):
o  The uart(4) driver determines the FIFO size and automaticly takes
   advantages of larger FIFOs and/or additional features. Note that
   since I don't have sufficient access to 16[679]5x UARTs, hardware
   flow control has not been enabled. This is almost trivial to do,
   provided one can test. The downside of this is that broken UARTs
   are more likely to not work correctly with uart(4). The need for
   tunables or knobs may be large enough to warrant their creation.
o  The uart(4) driver does not share the same bumpy history as sio(4)
   and will therefore not provide the necessary hooks, tweaks, quirks
   or work-arounds to deal with once common hardware. To that extend,
   uart(4) supports a subset of the UARTs that sio(4) supports. The
   question before us is whether the subset is sufficient for current
   hardware.
o  There is no support for multiport UARTs in uart(4). The decision
   behind this is that uart(4) deals with one EIA RS232-C interface.
   Packaging of multiple interfaces in a single chip or on a single
   expansion board is beyond the scope of uart(4) and is now mostly
   left for puc(4) to deal with. Lack of hardware made it impossible
   to actually implement such a dependency other than is present for
   the dual channel SAB82532 and Z8350 SCCs.

The current list of missing features is:
o  No configuration capabilities. A set of tunables and sysctls is
   being worked out. There are likely not going to be any or much
   compile-time knobs. Such configuration does not fit well with
   current hardware.
o  No support for the PPS API. This is partly dependent on the
   ability to configure uart(4) and partly dependent on having
   sufficient information to implement it properly.

As usual, the manpage is present but lacks the attention the
software has gotten.
2003-09-06 23:13:47 +00:00
Bruce A. Mah
bfb86d9ff2 Catch up isp.4 manpage with hardware notes.
PR:		55558
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
2003-09-06 17:47:25 +00:00
Hiten Pandya
5a4501e107 Remove hard sentence breaks. 2003-09-06 17:46:16 +00:00
Bruce A. Mah
88f04461c3 Add stg(4) manpage and hook up to the section 4 manpage build.
PR:		55605
Submitted by:	Bob Bishop <rb@gid.co.uk>
2003-09-06 17:31:50 +00:00
Peter Pentchev
095a0a15af Change /dev/rsa0 and /dev/rwt0 references to sa0 and wt0.
PR:		55925
Submitted by:	Michael L. Squires <mikes@siralan.org>
MFC after:	1 month
2003-09-05 15:28:09 +00:00
Peter Pentchev
dbcefa3f61 Catch up with the hardware notes: list the supported cards.
PR:		55645
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
MFC after:	1 month
2003-09-05 14:27:22 +00:00
Peter Pentchev
732bf4906e Catch up with the hardware notes: list the supported cards.
PR:		55643
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
MFC after:	1 month
2003-09-05 14:23:22 +00:00
Peter Pentchev
831203cbc0 Catch up with the hardware notes: list the supported Compaq controllers.
PR:		55641
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
2003-09-05 14:17:33 +00:00
Peter Pentchev
e11a2faaf2 Document the SC_NO_SUSPEND_VTYSWITCH kernel config option.
PR:		55562
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
2003-09-05 13:27:57 +00:00
Kenneth D. Merry
cb32189e23 Move dynamic sysctl(8) variable creation for the cd(4) and da(4) drivers
out of cdregister() and daregister(), which are run from interrupt context.

The sysctl code does blocking mallocs (M_WAITOK), which causes problems
if malloc(9) actually needs to sleep.

The eventual fix for this issue will involve moving the CAM probe process
inside a kernel thread.  For now, though, I have fixed the issue by moving
dynamic sysctl variable creation for these two drivers to a task queue
running in a kernel thread.

The existing task queues (taskqueue_swi and taskqueue_swi_giant) run in
software interrupt handlers, which wouldn't fix the problem at hand.  So I
have created a new task queue, taskqueue_thread, that runs inside a kernel
thread.  (It also runs outside of Giant -- clients must explicitly acquire
and release Giant in their taskqueue functions.)

scsi_cd.c:	Remove sysctl variable creation code from cdregister(), and
		move it to a new function, cdsysctlinit().  Queue
		cdsysctlinit() to the taskqueue_thread taskqueue once we
		have fully registered the cd(4) driver instance.

scsi_da.c:	Remove sysctl variable creation code from daregister(), and
		move it to move it to a new function, dasysctlinit().
		Queue dasysctlinit() to the taskqueue_thread taskqueue once
		we have fully registered the da(4) instance.

taskqueue.h:	Declare the new taskqueue_thread taskqueue, update some
		comments.

subr_taskqueue.c:
		Create the new kernel thread taskqueue.  This taskqueue
		runs outside of Giant, so any functions queued to it would
		need to explicitly acquire/release Giant if they need it.

cd.4:		Update the cd(4) man page to talk about the minimum command
		size sysctl/loader tunable.  Also note that the changer
		variables are available as loader tunables as well.

da.4:		Update the da(4) man page to cover the retry_count,
		default_timeout and minimum_cmd_size sysctl variables/loader
		tunables.  Remove references to /dev/r???, they aren't used
		any longer.

cd.9:		Update the cd(9) man page to describe the CD_Q_10_BYTE_ONLY
		quirk.

taskqueue.9:	Update the taskqueue(9) man page to describe the new thread
		task queue, and the taskqueue_swi_giant queue.

MFC after:	3 days
2003-09-03 04:46:28 +00:00
Warner Losh
7d43c8c902 CardBus instead of Cardbus. Add I/O Data WN-AG/CB and Prixim Skyline
4030 cards.

Special Thanks: shigeru yamamoto-san for the kind donation of I/O Data and
	other wireless cards
2003-09-01 23:09:09 +00:00
Simon L. B. Nielsen
79a97ad9c5 Catch up my(4) with hardware notes by adding Myson MTD89X to list of
supported devices.

Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
PR:		docs/56244
Confirmed by:	driver source code
2003-08-31 19:37:48 +00:00
Simon L. B. Nielsen
88fced4cb3 - Update the page title to include information about which cards
are supported by the driver.
- Use a list to specify which cards are supported.
- Add the 3c592/3c597 EISA cards to the list of supported cards.

PR:		docs/56086 (based on)
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
2003-08-29 17:59:01 +00:00
Bruce A. Mah
744cb35d65 Sort the lists of supported devices. No other content changes. 2003-08-25 04:29:43 +00:00
Bruce A. Mah
2e1a133fa4 In the lists of supported devices, remove "The" from the names of
devices and capitalize the words "Gigabit", "Ethernet", and "adapter"
consistently.
2003-08-25 04:28:29 +00:00
Bruce A. Mah
1780f0787a Catch up ti(4) with hardware notes.
PR:		55637
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
2003-08-25 04:25:58 +00:00
Bruce A. Mah
05ba13027b Add a few PC98-specific (?) devices, from the hardware notes. 2003-08-24 22:51:09 +00:00