Commit Graph

8779 Commits

Author SHA1 Message Date
simokawa
cad5969811 firewire/fwohci
- Drain fwohci TX queue first then drain xfer queue which has not started.
- Check validity of the received packet length.
- Don't allocate too large buffer for xfer receive buf.

sbp
- Fix panic for some CROM which doesn't have a text leaf.
	This could fix the PR kern/48129 but no feedback has been gotten from
	the originator yet.
- Put back some M_NOWAIT flags into malloc which could be called
	in interrupt context for 4-stable.
2003-02-13 13:35:57 +00:00
sanpei
116925a3d8 Sync to 1.114 of usbdevs 2003-02-13 12:57:24 +00:00
sanpei
1d841a831a Add support SUNTAC Ir-Trinity IS96U
PR:		48212
Submitted by:	Masaharu FUJITA <m@fjts.org>
2003-02-13 12:55:18 +00:00
anholt
8774707900 Add Intel 85x/86x AGP support.
Submitted by:	David Dawes <dawes@xfree86.org>
2003-02-13 07:17:39 +00:00
sanpei
5d9e45b106 Sync to 1.113 of usbdevs 2003-02-12 13:22:55 +00:00
sanpei
13c2b6c89a Add support YAMAHA NetVolante Routers
NetVolante RTA54i Broadband&ISDN Router
	NetVolante RTA55i Broadband VoIP Router
	NetVolante RTW65b Broadband Wireless Router
	NetVolante RTW65i Broadband&ISDN Wireless Router

PR:		bin/42574
Submitted by:	Yoshihiko Sarumaru <mistral@imasy.or.jp>
2003-02-12 13:20:39 +00:00
imp
634dd85c3a Minor correction to comment: PNIC and XIRCOM have eeprom, its just
non-standard.
2003-02-12 07:16:15 +00:00
imp
792ab263cf MF-p4:
Kill the slightly bogus #define for DECODE_PROTOTYPE
	Be less verbose.  Hide most (all I hope) of the CIS
	parsing behind cardbus_debug_cis (which is set with
	hw.cardbus.debug_cis=1).

	This doesn't fix problems with parsing, but should make cardbus
	less chatty.  There appears to be some issues still with the
	parsing of the CIS, but this won't fix them.

Prompted by: scottl
2003-02-12 06:11:47 +00:00
imp
7c1257f6fe MFp4:
Second part of the kldload patches for cardbus.  This makes
	kldload of a driver for a device that's inserted now appears
	to work.  To make it work, we only do a power cycle of the card
	if there's no children drivers attached.

	This likely is papering over bogosities in the power system.  The
	power sequence needs to be re-written, so I'll not worry about
	the papering over until the re-write.
2003-02-12 05:57:02 +00:00
imp
69fdce865d MFp4:
Don't reach inside of rman to r_dev.  Use rman_get_device instead.
2003-02-12 05:54:22 +00:00
imp
7c1a3ea129 Whitespace nits. 2003-02-12 04:48:15 +00:00
phk
b098c0b196 Announce our ability to do MAXPHYS transfers. 2003-02-11 21:29:53 +00:00
joerg
4fe8424f92 Deregister the dev_clone event handler when unloading the module. Bad
things might happen otherwise.

Noticed by:	Michael Reifenberger <root@nihil.reifenberger.com>
2003-02-11 21:12:43 +00:00
green
127c3ce121 Sound devices were being leaked by dsp_open() not actually releasing the
channels it allocates if chn_reset() on them resulted in failure.
ARROW'D!
2003-02-11 16:58:54 +00:00
phk
6fa71cfe58 Mark our provider with G_PF_CANDELETE in the cases where this is actually
the case.
2003-02-11 12:35:44 +00:00
alfred
ebf32f5a55 Fixup printf format. 2003-02-11 08:19:52 +00:00
scottl
2f7dc73c5d Terminate 'e' event messages with a newline.
PR:	33202
2003-02-11 06:36:26 +00:00
imp
7a6774448c Don't turn off the power of cards when new drivers are added
unconditionally.  kldloading a cardbus driver was shooting down other
attached devices because most drivers assume that one cannot
power-cycle cards w/o the driver knowning about it.

Submitted by: simokawa-san
2003-02-11 05:31:35 +00:00
sanpei
4c523f362c Regen 2003-02-11 00:16:56 +00:00
sanpei
f74d50d3e8 Add support SUNTAC U-Cable TypeD2 (DS96L)
PR:		kern/47547
Submitted by:	Kazu TAKAMUNE <takamune@mail.com>
2003-02-11 00:15:01 +00:00
nyan
15498f1825 Use correct spl mask.
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
MFC after:	1 day
2003-02-10 13:31:49 +00:00
scottl
2daf7453dd Implement a new dynamic command allocator. FIBs are allocated in 1 page
blocks now, which should eliminate problems with the driver failing to
attach due to insufficient contiguous RAM.  Allow the FIB pool to grow
from the default of 128 to the max of 512 as demand grows.  Also pad the
adapter init struct to work around the 2120/2200 DMA bug now that there
is no longer a FIB slab.
2003-02-10 00:34:24 +00:00
simokawa
d40dbd1c8c Increase atrq.ndesc for if_fwe. 2003-02-09 17:11:55 +00:00
simokawa
51e766f699 Add new ioctl to specify target EUI64 for fwmem. 2003-02-09 10:14:22 +00:00
simokawa
36ad849baa Remove unnecessary check for OCB_ACT_CMD. 2003-02-09 07:40:27 +00:00
simokawa
edadda996a - Detect split transcation timeout.
* implement watchdog timer.
	* check all standing transactions in firewire_xfer_timeout().
- Add firewire_xferq_drain() for fw_busreset().
- Add/improve some debug messages.
- Call fw_xfer_done() if retry handler is NULL.
2003-02-09 07:16:01 +00:00
nyan
b723a9faa7 Include <isa/isavar.h> to fix building on alpha. 2003-02-08 07:05:07 +00:00
ambrisko
f6f64762ea - Fixes for suspend/resume code (MPI-350)
- Cache temp. keys so they are preserved across suspend/resume (MPI-350)
- Reads and writes are real fast to the MPI-350 causing early timeouts so
  wait do some DELAYs to slow things down in the spin loops.
- Stream line setting RIDs when they are better to be set via another
  function
- Add better support for setting home key via "ifconfig an0 wepkey 9:<key>"

Tested by:	Peter Radcliffe <pir@pir.net> (in -stable)
		myself in -current & -stable
MFC in:		3 days
2003-02-08 04:41:17 +00:00
mbr
6d1daa2399 Fix the breakage resulting from Rev. 1.80. Get the eeprom width
for all but two cards. This should fix broken cards like these:

DM9102 (Davicom, DEVICE_ID: 0x9002)
DM9009 (Davicom, DEVICE_ID: 0x9009)
DM9100 (Davicom, DEVICE_ID: 0x9100)
98713/98713_CP (Macronix PMAC, DEVICE_ID: 0x0512)
98713_CP (Macronix PMAC, DEVICE_ID: 0x0512)
987x5 (Macronix PMAC, DEVICE_ID: 0x0531)
98727  (Macronix PMAC, DEVICE_ID: 0x0532)
82C115 (Lite-On PNIC II, DEVICE_ID: 0xc115)
AX88140A (ASIX Dev_ID: DEVICE_ID: 0x1400)
EN1217 (Accton EN1217, DEVICE_ID: 0x1217)

Note that these cards sould still work in STABLE.

Reviewed by:	imp
2003-02-07 23:12:51 +00:00
sam
3c791c8729 add 5823 device id's; this allows 5823 parts to function but you cannot
use the AES functionality

Submitted by:	Jonathan Stone <jonathan@DSG.Stanford.EDU>
MFC after:	1 day
2003-02-07 23:02:02 +00:00
sam
fdc99ad92b shield kernel data structures so user apps can include this file 2003-02-07 21:44:52 +00:00
phk
0d87d64253 Rename bio_linkage to the more obvious bio_parent.
Add bio_t0 timestamp, and include <sys/time.h> where needed
2003-02-07 21:09:51 +00:00
harti
0dc52ce602 Implement the ALT_BREAK_TO_DEBUGGER option for the ofw console. This is very
handy if the machine is on another floor. A minor issue with this is that
these functions are also used by the debugger, so its possible to break into
the debugger from the debugger.

PR:		sparc64/47143
Reviewed by:	benno
Approved by:	jake (mentor)
2003-02-07 16:20:09 +00:00
nyan
3391eada81 - Clean up ISA DMA supports.
- Rename all sndbuf_isadma* functions to sndbuf_dma* and move them into
  sys/dev/sound/isa/sndbuf_dma.c.

No response from:	sound
2003-02-07 14:05:34 +00:00
mbr
5159a138c0 Add missing braces.
Found by:       FlexeLint (phk)
Reviewed by:	wpaul, phk
2003-02-07 13:55:02 +00:00
sanpei
f74d1f7c95 Regen 2003-02-07 13:19:29 +00:00
sanpei
84c1059a0c Add support FUJITSU AH-F401U Air H device
Submitted by:	[bsd-nomads:16601]
		Kouichi ABE (WALL) <kouichi@MysticWALL.COM>
2003-02-07 12:53:21 +00:00
simokawa
fc5f5fef96 Remove debug message. 2003-02-07 09:46:30 +00:00
ps
f29e29c451 Update to new crashdump API 2003-02-07 06:58:32 +00:00
ps
db6256b6fd Update to new crashdump api 2003-02-07 02:36:20 +00:00
scottl
f0e4158cff Fix the mly driver! If card resources became unavailable, the driver would
correctly tell CAM to requeue the command and then freeze it's queue.  The
problem was that when resources became available again, it wouldn't tell
CAM to unfreeze it's queue, so no more commands would ever be delivered.
This is simialr to the bug that was fixed in the cciss driver last year.
This is a bug in 4-STABLE also, but is probably masked by the OS being
fast enough to drain the completion queue before it fills up.
Also add some diagnostics avaialble when compiled with MLY_DEBUG.
Thanks very much to LSI Corp for donating equipment to track this down,
and Vaidus Damosevicius for pestering me long enough to get it fixed.
2003-02-06 23:46:32 +00:00
orion
d41d744bdc Fix comment typo.
Sync with userland test framework which now deals better with pcm feeder kobj
emulation.

Reduce max rate from 96kHz to 48kHz as userland tests found a few bad
points about 90kHz and we don't care about operating up there for now.
2003-02-06 17:32:02 +00:00
simokawa
65fd97f7e7 Fix memory leak. 2003-02-06 17:23:01 +00:00
scottl
6fd61c14bd Teach the CAM module how to deregister itself so it can be unloaded. 2003-02-06 03:31:02 +00:00
scottl
00eaa83c32 Free the container and sim objects on detach. Convert several uses of
MALLOC to malloc.
2003-02-06 00:37:37 +00:00
scottl
ae4d85478f Don't include aac_cam.h, since it was nuked in the last commit.
Deregister the shutdown eventhandler on unload.
2003-02-06 00:07:12 +00:00
scottl
ab1fb54425 Various cleanups:
- Move the command timeout check from a separate repeating timeout to the
   kthread since the kthread is already running periodically.
 - Move printing the hardware print buffer to the kthread.
 - Properly shut down the kernel thread on detach.
 - Detach the child array devices on detach.
 - Don't issue a controller halt command on detach.  Doing so requires a PCI
   reset to wake the controller back up.  The driver can now be unloaded as
   long as CAM support is not enabled.
2003-02-05 23:24:25 +00:00
mbr
1be933f329 Move the DC_SETBIT to the attach function.
Reviewed by:		phk
2003-02-05 21:21:26 +00:00
joerg
4e7a2a1e8b Finally make vinum ready for the root filesystem in FreeBSD 5.x. (A
similar patch has been in 4.x for a while, but is more hacky there.)

For this to work, vinum has to be loaded early (e. g. from
boot/loader), for obvious reasons.  If the kernel env variable
(aka. loader variable) "vinum.autostart" is set, vinum then asks the
sysctl kern.disks for all available disks in the system, and scans
them for possible vinum headers.

For statically compiled kernels, this behaviour can be obtained even
without boot/loader by using "options VINUM_AUTOSTART" (though this is
not the recommended way).

Alternatively, the 4.x way to specify "vinum.drives" is also supported.

No further hacks (like the 4.x "vinum.root" variable) are needed,
since in 5.x, mountroot() asks back at the drivers to have them
resolve the name of the root FS into a dev_t (using the dev_clone
eventhandler).

(The MFC reminder below is for a partial MFC for vinum.autostart, the
rest is already there in 4.x.)

Timed out on:	grog
MFC after:	2 weeks
2003-02-05 21:02:56 +00:00
simokawa
a2b80d2be8 Fix for fwmem write part.
- fix typo
- don't need to check receive buffer.
- don't forget to free xfer on errer.
2003-02-05 17:19:34 +00:00
ache
d15f8916c5 Remove srandom():
1) It is already called in init_main.c:proc0_post()
2) It is called each time read_random_phony() called, because "initialized"
variable is never set to 1.

Approved by:    markm
2003-02-05 15:56:04 +00:00
charnier
89bc49645c Spelling. 2003-02-05 14:03:55 +00:00
ps
0b7392dfc1 Obtain the media type from the shared memory and only use the eeprom
as a fallback.
2003-02-05 08:54:36 +00:00
ps
0eca408203 Properly get the drive geometry from the controller. This should
fix booting off of volumes > 255GB.
2003-02-05 08:43:46 +00:00
ps
79b6a6c38c Close a memory leak when rescanning the bus. 2003-02-05 07:46:08 +00:00
ambrisko
9a4fb866c2 Support for suspend/resume in laptops. Loosely based on the wi(4) patches
but not quite.  The memory descriptors and most of the card parameters
need to be writen to the card.

MFC in:		3 days
2003-02-05 03:37:42 +00:00
simokawa
ef78581d72 - Implement write part.
- Use quad access for aligned 4 byte access.
2003-02-04 17:09:59 +00:00
simokawa
485435e319 - Improve recovery after timeout.
* reset agent first then reset target.
	* untimeout all ccbs.
- Try reconnect first if the device has been seen.
- Fix for ORB_FUN_ATA.
2003-02-04 17:08:45 +00:00
sanpei
43302434ca Fix `umass0: BBB bulk-in clear stall failed, IOERROR' problem with
some USB devices.  (Make sure to set xfer data length when we force
a short inquiry.)

Obtained from: NetBSD(sys/dev/usb/umass_scsipi.c rev.1.8)
Original idea from: Shingo WATANABE <nabe@nabechan.org>
2003-02-04 13:45:41 +00:00
sanpei
76ea3678a0 Remove duplicated entry
Put the Trek Smart Thumbdrives (8MB model) entry in the right place.
(Entries are sorted by vendor id).
2003-02-04 13:36:32 +00:00
orion
bbd89fb5c2 Remove unintended growth of bt848_card_signature. 2003-02-03 18:59:12 +00:00
orion
658f4bf358 Avoid zero padding when feeding read channels. chn_rdfeed has no way
of knowing data size transformations of feeder chain and in some cases
this means too much data is pulled through chain, eg converting input
stream from 16bits to 8bits on 16bit only h/w.

PR: kern/37831
Submitted by: Harti Brandt <brandt@fokus.fraunhofer.de>
2003-02-03 15:02:28 +00:00
simokawa
57fd1b57b9 Remove unnecessary M_NOWAIT. 2003-02-03 09:41:42 +00:00
simokawa
d15a58ad27 Add missing 'static'. 2003-02-03 08:10:50 +00:00
simokawa
afb9eb67e2 - Take malloc type as an argument in fw_xfer_alloc().
- Fix overwrite problem of freed buffers. It was rare but could happen
	when fwohci_arcv() is called before fwohci_txd() is called for
	the transcation.
- Drain AT queues and pend AR queues on SID receive rather than BUS reset to
	make sure DMA actually stops.
- Do agent reset in sbp_timeout().
2003-02-03 07:33:31 +00:00
orion
3c32c12072 Remove mono encodings from vchan format and mixer description. Fixes
mono formats at 44.1kHz playing at double speed when vchans are
enabled.
2003-02-03 03:20:27 +00:00
orion
bfb168afa9 Print ac97 name/id on normal boot.
Fix typo reported in pr misc/47794.
2003-02-03 01:38:43 +00:00
ambrisko
3df9deadf2 Some small enhancments
-	Implement TX power control with hints to code in Linux driver
	by Douglas S. J. De Couto <decouto@lcs.mit.edu>
      -	Update ifmedia support to use ieee80211_rate2media and
	ieee80211_media2rate.  Note doesn't work with stock ifconfig
	since there seems to be an issue with the setmedia code.
	"ancontrol -t" works now, before it did nothing.
      -	Fix spelling error in header.
2003-02-02 22:49:31 +00:00
phk
0aa1a2dc66 Set si_drv1 to our softc for all the six dev_t's we create for a serial port. 2003-02-02 21:25:22 +00:00
orion
72a5c5c443 Add BCTV3/PCI entry.
Rename functions bctv_* to bctv2_* and macros BCTV_* to BCTV2_* for
coexistance of BCTV2 and BCTV3.

Rename CARD_IO_GV to CARD_TO_BCTV2.

Add auto recognition of BCTV3/PCI.

PR:             i386/43879
Submitted by:   MOROHOSHI Akihiko <moro@remus.dti.ne.jp>
Approved by:    roger
MFC after:      6 days
2003-02-02 17:46:00 +00:00
alfred
499b47780f chase more of the MIN/MAX mess. *sigh* 2003-02-02 13:52:25 +00:00
alfred
86daf0cca6 Catch more uses of MIN(). 2003-02-02 13:30:00 +00:00
alfred
8f9cc7853a remove MIN now that it's a standard kernel define 2003-02-02 13:21:05 +00:00
alfred
b5c0015ac9 Consolidate MIN/MAX macros into one place (param.h).
Submitted by: Hiten Pandya <hiten@unixdaemons.com>
2003-02-02 13:17:30 +00:00
imp
f2f732f720 Unlock the mutex in the error case in wi_init. Otherwise we can return
from an ioctl with the lock held.

Submitted by: iedowse (by way of sam)
2003-02-02 06:35:46 +00:00
marcel
7aeb9d406d Regenerate after fixing duplicate device entries. 2003-02-02 01:58:28 +00:00
marcel
1daa16a90e Unbreak kernel builds caused by what appears to be a merge conflict.
This change has been tested.
2003-02-02 01:57:31 +00:00
sanpei
108b68c79d Regen 2003-02-01 23:09:33 +00:00
sanpei
d9110389e4 Add Genesys Logic products
- GL650 HUB
	- GL641USB CompactFlash Card Reade
	- GL641USB USB-IDE Bridge
Add MELCO product
	- USB-IDE Bridge: DUB-PxxG
2003-02-01 22:50:50 +00:00
simokawa
1071276d73 Define new malloc type M_FW and use it. 2003-02-01 15:04:33 +00:00
simokawa
5790015ee5 - replace timeout with callout_*.
- replace TAILQ with STAILQ for device list.
- some clean up.
2003-02-01 14:42:49 +00:00
simokawa
1c5753d03f Check status FIFO more closely to report error. 2003-02-01 12:06:57 +00:00
phk
f9d517f0ed Eliminate the sc_openmask, ccdopen() and ccdclose() functions, we
can use the flag maintained by geom_disk.c

Having only a strategy method to intialize, don't waste space using
a cdevsw structure to do so.
2003-02-01 11:17:22 +00:00
simokawa
095827745e Add basic support for device wiring down to specific (CAM)
target id. It still needs to be hard-coded now but will
be changed to be configured by tunables or device hints.
2003-02-01 08:55:33 +00:00
benno
a1dc0be46a MacIO frontend for the zs driver.
Many thanks to jake for doing the initial driver and for helping me in making
this work.
2003-02-01 07:23:47 +00:00
simokawa
551f94c8c8 Sort device list by eui64 in acendent order correctly. 2003-02-01 06:34:36 +00:00
shiba
b4ac024b7f Regen. 2003-02-01 04:47:51 +00:00
shiba
a02f58e575 Allied Telesis WR211PCM(wi) and Corega PCC-T(ed) have
same manufacture id and product id. So use CIS info
(PCCARD_CISTPL_VERS_1).

reported by HONDA Yasuhiro <yasu@yasu.org>
2003-02-01 04:47:29 +00:00
silby
af3bd9355b Add deviceids for 6105 and 6105M chips. Further changes will be necessary
to fully support these new chips, but preliminary evidence suggests that
they work acceptable with our present driver.

MFC after:	1 week
2003-02-01 01:27:05 +00:00
silby
e8e9b02202 Switch the if_vr driver from using our generic MII routines over to
using the Rhine's internal shift registers which are designed
for the job.  This reduces the amount of time we wait around shifting
bits, and seems to work better with some chips.

Also, provide a workaround for some newer cards which report fake PHYs
at multiple addresses.  (As more cards are ID'd, I'm sure this part
of the code will have to be expanded to cover more cases.)

Submitted by:	Thomas Nystrom <thn@saeab.se>
MFC after:	1 week
2003-02-01 01:18:26 +00:00
phk
9dd70473b6 Add PCI id for Quatech SSCLP-200/300 lowprofile single-port RS422/485 card. 2003-01-31 21:11:20 +00:00
orion
e7ce94ea3c Add tuner code for WinTV Go FM (Hauppauge Model 44811 C133). Patch
supplied by Ross Finlayson <finlayson@live.com>.
2003-01-31 15:23:40 +00:00
simokawa
bfede02c1b function name change. 2003-01-31 14:14:45 +00:00
simokawa
30013fce11 SBP related changes.
- Issue LOGOUT command on detach and shutdown.
- Rename some functions.
2003-01-31 14:11:22 +00:00
silby
208fd61178 Fixes from Thomas Nystrom to fix hanging problems experienced by vr cards
under load.

This patch has been tested by Thomas and other for more than a month now,
and all (known) hangs seem to be solved.

Thomas's explanation of the patch:

*  Fix the problem with the printing of the RX-error.

*  Code from if_fet do better deal with the RX-recovery including a
   timeout of the RX-turnoff.

*  The call to vr_rxeof before vr_rxeoc have been moved to a point
   where the RX-part of the chip is turned off. Otherwise there is a
   window where new data could have been written to the buffer chain
   before the RX-part is turned off. If this happens the chip will see
   a busy rx-buffer. I have no evidence that this have occured but
   god knows what the chip will do in this case!

*  I have added a timeout of the TX-turnoff. I have checked and in
   my 900 MHz system the flags for turnoff (both RX & TX) is seen at
   the first check in the loop.

*  I could see that I got the VR_ISR_DROPPED interrupt sometimes and
   started to thinking about this. I then realized that no recovery is
   needed for this case and therefore I only count it as an rxerror
   (which was not done before).

*  Finally I have changed the FIFO RX threshhold to 128 bytes. When I
   did this the VR_ISR_DROPPED interrupt went away. Theory: The chip
   will receive a complete frame before it tries to write it out to
   memory then the RX threshold is set to store'n'forward. IF the frame
   is large AND the next rx frame also is large AND the bus is busy
   transfering a TX frame to the TX fifo THEN the second received
   frame wont fit in the FIFO and is then dropped. By having the RX
   threshold set to 128 the RX fifo is emptied faster.

MFC after:	5 days
2003-01-31 07:37:06 +00:00
simokawa
2088790fbc SBP related changes.
- Set dual phase retry BUSY_TIMEOUT.
- Let users to know serial bus error.
2003-01-31 03:09:13 +00:00
phk
837e7af52d NO_GEOM cleanup: retire disk_invalidate() 2003-01-30 19:43:50 +00:00
trhodes
d312b9554d Add support for the Trek Thumbdrive 8MB USB Drive.
PR:		46004
Submitted by:	Brian J. McGovern <mcgovern@tick.beta.com> (original version)
2003-01-30 18:33:01 +00:00
orion
a16f92695c o Constrain inputs to 25Hz granularity so interpolator can operate
between any pair of values in range 4-96kHz.  Thanks to Ken Marks for
discovering there were problems with the previous version.

o Use a non-recursive gcd routine.
2003-01-30 16:32:56 +00:00
fjoe
8bfc65ceab - bpf is now working (tested with tcpdump)
- fix promiscious mode

MFC after:	3 days
2003-01-30 15:55:02 +00:00