7011 Commits

Author SHA1 Message Date
Josef Karthauser
c2e0959f73 Update the $NetBSD$ ident to show that some patches have been applied
in the past.
2002-01-26 12:25:32 +00:00
Josef Karthauser
b7e4eb198d Merge from NetBSD:
ohci.c:	revision 1.72 and 1.73
    ohcivar.h:	revision 1.19 and 1.20
    uhci.c:	revision 1.85
    usbdi.h:	a small part of revision 1.40
    usbdivar.h:	revision 1.47

Relevant commit messages from NetBSD are:

	date: 2000/02/22 11:30:54;  author: augustss;  state: Exp;
	Prepare a little for having USB interrupt processing done
	outside the hard interrupt level (in a thread or a softintr).
	No real soft processing done yet.
	----------------------------
	date: 2000/02/01 05:42:53;  author: augustss;  state: Exp;
	Put some #ifdefs around power and shutdown hooks.
2002-01-26 12:04:22 +00:00
Scott Long
436c9b651a Fix code that had rotted behind debugging macros.
Approved by:	cg (in principle)
MFC after:	2 weeks
2002-01-25 04:14:12 +00:00
Cameron Grant
be27d718c0 a buffer offset equal to the buffer size is illegal too, fix assertion in
sndbuf_getbufofs()
2002-01-25 02:39:34 +00:00
Cameron Grant
f8db81f347 cosmetic change, free b instead of c->bufhard for consistency within
chn_kill()
2002-01-25 02:36:22 +00:00
Josef Karthauser
46d0cbc2cd Merge from NetBSD:
usb.c:	-r1.35 - 1.37
    usb_port.h:	tiny bit of -r1.26 + an extra bit in the FreeBSD config section.

	revision 1.37
	date: 2000/01/24 18:35:51;  author: thorpej;  state: Exp;  lines: +7 -1
	Use config_pending.
	----------------------------
	revision 1.36
	date: 1999/12/22 23:54:09;  author: augustss;  state: Exp;  lines: +2 -2
	Use the flags `locator' to govern if devices are detected early or
	late during cold boot.
	----------------------------
	revision 1.35
	date: 1999/12/20 02:12:23;  author: augustss;  state: Exp;  lines: +8 -5
	Make sure tsleep() is not called during cold boot.
2002-01-24 20:21:17 +00:00
Guido van Rooij
a3e5380a47 1) Fix a debug statement by filling in its data before the printf in
stead of after
2) Honour NO_TEST_UNIT_READY quirk for atapi devices as well
3) Actually support FujiFilm FinePix 6800 camera's. Will very likely also
work for other FinePix models.

Based on a debug session about half a year ago with Nik Hibma.
MFC after:	2 weeks
2002-01-24 15:10:53 +00:00
Matt Jacob
d9f1ea7b2b Roll to latest production level firmware.
MFC after:	1 day
2002-01-23 06:42:54 +00:00
Cameron Grant
4c68642adb improve sndstat output of feederchains so it can be understood without
reading the feeder sourcecode
2002-01-23 06:02:15 +00:00
Cameron Grant
4e60be3473 print warnings if a pcm*.buffersize hint is out of range or a non-power-of-2 2002-01-23 05:49:41 +00:00
Cameron Grant
23bc171b29 fix some comments accidentally hit by search/replace several revisions ago 2002-01-23 05:41:35 +00:00
Cameron Grant
0dd4f3508e set the speeds the right way round for recording using the rate feeder 2002-01-23 05:35:12 +00:00
Cameron Grant
1e59d53c22 add more error checking in chn_init() and chn_reset() 2002-01-23 05:21:27 +00:00
Cameron Grant
79e6a82b48 make the feederchain builder work for recording. this has not been tested
extensively as none of my testboxes have speakers or an audio source at
present, but the chains built look correct and reading /dev/audio (ulaw,
translated from signed 16 bit little-endian) gives values within the
expected range for silence.
2002-01-23 05:10:56 +00:00
Cameron Grant
f6126456ef don't bother checking if an unsigned parameter is less than 0 in a KASSERT 2002-01-23 04:50:51 +00:00
Cameron Grant
095159ecd1 add more error checking to open of /dev/dsp* and /dev/audio* - if the
default format for the chosen subdevice cannot be obtained return an error
instead of returning success with an indeteterminate format selected.

note that this should never happen once the feederchain builder works for
recording.
2002-01-23 04:44:03 +00:00
Cameron Grant
1c72c53f4e don't allow mmap beyond the end of the buffer
Submitted by:	Philippe Anel <philippe.anel@noos.fr> (partially)
2002-01-23 04:32:18 +00:00
Wes Peters
ce6d929bb5 Add missing destroy_dev().
Submitted by:	Maxime Henrion <mux@sneakerz.org>
Reviewed by:	msmith@
MFC after:	3 weeks
2002-01-23 01:11:52 +00:00
Jonathan Lemon
a1a9c8f7e6 Initialize the sysctl_ctx list early, which avoids a panic in case other
allocatiosn fail and fxp_release() is called.
2002-01-22 17:51:44 +00:00
Poul-Henning Kamp
3ca627fefa Gah! last commit botched indentation, fix indentation and some other
white-space nits while at it.
2002-01-21 20:57:03 +00:00
Poul-Henning Kamp
b4a4f93c5e Restructure slightly, eliminating some repetitive source lines and
making GEOM patches simpler and more readable at the same time.
2002-01-21 20:50:06 +00:00
Josef Karthauser
c3da78970e Merge from NetBSD:
ohci.c:	-r1.69 to 1.71
    ohcireg.h:	-r1.14

Some of these deltas are based upon patches that we submitted back to
NetBSD.  They got manifested slightly differently though, so I've brought
back those differences to bring our code bases closer together.

The logs from the NetBSD version of ohci.c:

	revision 1.71
	date: 2000/02/01 05:42:52;  author: augustss;  state: Exp;  lines: +13 -2
	Put some #ifdefs around power and shutdown hooks.
	----------------------------
	revision 1.70
	date: 2000/01/31 22:35:13;  author: augustss;  state: Exp;  lines: +7 -7
	Rename TAILMASK to HEADMASK, since it really masks the head pointer.
	From FreeBSD.
	----------------------------
	revision 1.69
	date: 2000/01/31 22:09:13;  author: augustss;  state: Exp;  lines: +18 -14
	Change where the has table for physical-to-virtual address translation
	is handled.  Partly from FreeBSD.
2002-01-21 05:02:21 +00:00
Josef Karthauser
851522be27 Merge from NetBSD:
ohci.c:	-r1.68
    ohcireg.h:	-r1.13

	date: 2000/01/31 20:17:25;  author: augustss;  state: Exp;
	Fiddle with over-current protect when turning on port power to make
	things work for some OHCI controllers.
2002-01-21 04:24:33 +00:00
Josef Karthauser
3bedcae34f Merge from NetBSD:
revision 1.65
	date: 2000/01/25 12:06:21;  author: augustss;  state: Exp;  lines: +10 -2
	Add done method for root control transfers.
2002-01-21 04:15:39 +00:00
Josef Karthauser
4cd5d8f292 Merge from NetBSD:
revision 1.84
	date: 2000/01/28 00:44:27;  author: augustss;  state: Exp;  lines: +9 -2
	Add uhci_root_ctrl_done() method.
2002-01-21 03:44:00 +00:00
Josef Karthauser
ed98caba5f Merge from NetBSD:
uhci.c:	-r1.82
    uhcivar.h:	-r1.22

	date: 2000/01/26 10:04:39;  author: augustss;  state: Exp;
	Try to avoid accessing the HC if it is dead.  Suggested by mycroft.
2002-01-21 03:35:55 +00:00
Brooks Davis
01b8b9e983 Add support for Linksys WDT11 PCI adaptors.
Submitted by:	Eric Liedtke <eliedtke@apogeetelecom.com>
2002-01-21 00:59:59 +00:00
Josef Karthauser
a87935da55 Remove some unused code, in line with NetBSD's version. 2002-01-20 23:56:46 +00:00
Josef Karthauser
aeab0647e8 Merge from NetBSD:
revision 1.125
	date: 2000/09/23 21:00:10;  author: augustss;  state: Exp;  lines: +19 -3
	Avoid "bandwidth reclamation" for control transfers.  The kue device chokes
	on it.
2002-01-20 23:48:43 +00:00
Josef Karthauser
519461f843 Merge from NetBSD:
uhci.c:	-r1.124
    uhcireg.h:	-r1.13

	date: 2000/08/13 18:20:14;  author: augustss;  state: Exp;
	Fix race condition when unlinking xfers.  Thanks to IWAMOTO Toshihiro
	<iwamoto@sat.t.u-tokyo.ac.jp> for analyzing the problem and suggesting a fix.
	Fixes PR 10662.
2002-01-20 23:38:33 +00:00
Josef Karthauser
8e65c31988 Merge from NetBSD:
uhci.c:	-r1.123 (and a tiny bit of -r1.92)
    uhcivar.h:	-r1.32

	date: 2000/08/13 16:18:09;  author: augustss;  state: Exp;
	Implement what in Intel-speech is known as "bandwidth
	reclamation".  It means that we continously poll USB devices
	that have a pending transfer instead of polling just once
	every ms.  This speeds up some transfers at the expense of
	using more PCI bandwidth.
2002-01-20 20:12:25 +00:00
Josef Karthauser
a353e14e75 Merge from NetBSD:
uchireg.h:	-r1.12
    uchi.c:	-r1.121

    date: 2000/07/23 19:43:38;  author: augustss;  state: Exp;
    Be a little more explicit and careful about setting links in TDs and QHs.
2002-01-20 12:08:09 +00:00
Mike Smith
a245737c51 Add the 'iir' driver, for the Intel Integrated RAID controllers and
prior ICP Vortex models.  This driver was developed by Achim Leubner
of Intel (previously with ICP Vortex) and Boji Kannanthanam of Intel.

Submitted by:	"Kannanthanam, Boji T" <boji.t.kannanthanam@intel.com>
MFC after:	2 weeks
2002-01-20 08:51:08 +00:00
Orion Hodson
bd8e0aee01 Change ich_calibrate to busy wait on buffer fill level and use a more
likely looking rate calculation.

Install interrupt handler before calling ich_init as the initialization
occasionally generates spurious interrupts.

These changes are derived from cg's work in progress version of this
driver.
2002-01-18 18:44:41 +00:00
Joerg Wunsch
31f639ecdf Back out the hack from rev 1.13 that was done to initiate a bus rescan
at insert time.  When asking gibbs for approval for an MFC, this was
his reply:

1) It leaks memory if it can't allocate a path.

2) It defers allocation of aic->path until the call to scan the
   bus.  This means the path may be NULL when an interrupt occurs
   prior to the call to scan the bus (stray bus reset for instance),
   which will lead to a panic.

3) The driver in current doesn't recover from the failure to allocate
   aic->path.  The driver doesn't check during normal operation if
   the path is NULL, so again a panic will result.

4) aic_cam_rescan calls malloc with M_WAITOK.  aic_cam_rescan is called
   from attach where it isn't necessarily safe to sleep.

5) And most importantly, it co-opts the xpt_periph from the driver level.
   This was never part of the design (xpt_periph used to be static).  Making
   a call of this type may completely confuse the XPT if other XPT operations
   are ongoing.

In the long term, Justin and Warner agreed to implement solution where
CAM itself will initiate the bus rescan if a new bus is added.  For
the time being (and in particular in light of the upcoming 4.5
release), we now have camcontrol available on the boot floppy, and can
have pccardd initiate the rescan through it.
2002-01-17 20:34:58 +00:00
Bruce A. Mah
7f04152a10 Cosmetic fix: Not every machine that uses the sio driver has a BIOS.
Pointed out by:	imp
2002-01-17 20:05:47 +00:00
Warner Losh
ba24c8d971 While I'm not sure that I like the wording of the BIOS message in the
previous commit, it should always print due to lack of {} around the
second line in the if statement.  The message should likely say
something more like "There's no hardware responding at this IRQ.
Device not present (or disbaled)," but that is too long.  We generally
don't give elementary advise in device driver messages anyway.  Be
that as it may, the problem with it printing all the time should be
corrected.
2002-01-17 16:16:51 +00:00
Bruce A. Mah
ea9e3e8f9b Make sio device probe messages less misleading, for the case that
a port is either disabled or not responding.

PR:		33963
Submitted by:	Kevin Oberman <oberman@es.net>
MFC after:	2 weeks
2002-01-17 06:21:45 +00:00
Doug Ambrisko
45fe21a0a2 Forgot one part of the VLAN support for the dc(4) driver.
Pointed out by: Shin-ichi YOSHIMOTO <yosimoto@waishi.jp>
2002-01-16 21:34:11 +00:00
Doug Ambrisko
db40c1aef4 Add VLAN for the dc(4) driver (ie long frame). The patch is 2 parts.
One to notify the system that the MTU for VLAN can be 1500 so the vlan
will automatically be configured with a 1500 MTU the other is to ignore
the error case if the received frame is to long.

The frame size notification came from code in the SIS driver, and
the support for long frames derived from the NetBSD Tulip driver.

Tested on:	4 port D-Link adapter DFE-570TX 4 Intel 21143
		Netgear card with 82c169 PNIC 10/100BaseTX

Reviewed by:	ru (manpage), wpaul (not objected to), archie
Approved by:	imp
Obtained from:	NetBSD
2002-01-16 16:33:58 +00:00
Warner Losh
5d4be85d55 better namespsace of static functions 2002-01-15 20:41:39 +00:00
Warner Losh
2bef11b863 o Sync the device list with OLDCARD.
o Remove bogus flags that aren't used (if we need them in the future, we can
  add them back).
o Add support for the TI-1031.  This is the only YENTA compatible PCI-PCMCIA
  bridge that I'm aware of (all the others are PCIC on a PCI bus, which is
  different).
2002-01-15 20:21:43 +00:00
Warner Losh
7a852c22ce Make PCI_ALLOW_UNSUPPORTED_IO_RANGE an option until the ISA address
problem is fixed at the bridge level.  This is needed for some newer
laptops that have the cardbus bridge not on pci0.
2002-01-15 06:46:59 +00:00
Warner Losh
6015f06948 use bus_space(9) rather than the memory mapped register set. This is
the first step towrads merging pcic and pccbb for 16-bit cards.
2002-01-14 02:59:06 +00:00
Alfred Perlstein
a4db49537b Replace ffind_* with fget calls.
Make fget MPsafe.

Make fgetvp and fgetsock use the fget subsystem to reduce code bloat.

Push giant down in fpathconf().
2002-01-14 00:13:45 +00:00
Alfred Perlstein
9e209b124a Include sys/_lock.h and sys/_mutex.h to reduce namespace pollution.
Requested by: jhb
2002-01-13 21:37:49 +00:00
Alfred Perlstein
426da3bcfb SMP Lock struct file, filedesc and the global file list.
Seigo Tanimura (tanimura) posted the initial delta.

I've polished it quite a bit reducing the need for locking and
adapting it for KSE.

Locks:

1 mutex in each filedesc
   protects all the fields.
   protects "struct file" initialization, while a struct file
     is being changed from &badfileops -> &pipeops or something
     the filedesc should be locked.

1 mutex in each struct file
   protects the refcount fields.
   doesn't protect anything else.
   the flags used for garbage collection have been moved to
     f_gcflag which was the FILLER short, this doesn't need
     locking because the garbage collection is a single threaded
     container.
  could likely be made to use a pool mutex.

1 sx lock for the global filelist.

struct file *	fhold(struct file *fp);
        /* increments reference count on a file */

struct file *	fhold_locked(struct file *fp);
        /* like fhold but expects file to locked */

struct file *	ffind_hold(struct thread *, int fd);
        /* finds the struct file in thread, adds one reference and
                returns it unlocked */

struct file *	ffind_lock(struct thread *, int fd);
        /* ffind_hold, but returns file locked */

I still have to smp-safe the fget cruft, I'll get to that asap.
2002-01-13 11:58:06 +00:00
Matt Jacob
975284da32 Add missing move of relative offset for CTIO2 updates. 2002-01-11 23:48:25 +00:00
Archie Cobbs
4fc53c229d Fix reversed definitions for the bits that select half vs. full duplex.
Submitted by:	Darren Croke <djc@packetdesign.com>
2002-01-10 18:06:41 +00:00
Matthew N. Dodd
ced8202c20 Implement 2 small helper functions:
pci_find_bsf() - Find a device_t by bus/slot/function.
	pci_find_device() - Find a device_t by vendor/device ID.
2002-01-10 00:56:02 +00:00