Commit Graph

3254 Commits

Author SHA1 Message Date
Nick Hibma
6c20390aa7 Make the event creation work
- Create the /dev/usb event queue device node.
- Add usbread to the cdevsw.
- Also hide the many minor() behind a USBUNIT macro.
1999-11-19 13:13:28 +00:00
Julian Elischer
2045179917 fix braino.. line misplaced. 1999-11-19 09:19:44 +00:00
Søren Schmidt
bb8f8c633e Loose ad_sleep, its of no use anymore. 1999-11-19 08:21:15 +00:00
Roger Hardiman
39d409c9e1 Rename es1370.c to es137x.c and merge in the patches to support
ES1371 and ES1373 PCI Audio Sound Chips.
The 1371 and 1373 can be found on newer CreativeLabs/Ensoniq
sound cards such as the SoundBlaster PCI 16,64 and 128.

Submitted by:	Russell Cattelan <cattelan@thebarn.com>
Obtained from:	Parts obtained from linux, but rewritten by Russell
1999-11-19 07:29:10 +00:00
Julian Elischer
6822ccd6e7 protect some more operations with splimp() under Netgraph. 1999-11-19 05:37:37 +00:00
Nick Hibma
5630d3135e Add usbdevs and friends. 1999-11-18 18:02:44 +00:00
Yoshihiro Takahashi
663631a5eb Set port_used and mem_used to the resource size instead of 1.
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
1999-11-18 14:18:19 +00:00
Nick Hibma
3d45ad67b2 Change the clist reservation from 0 to buffer size.
Submitted by:  mmoeller@infolibria.com
1999-11-18 12:50:48 +00:00
Nick Hibma
c907e117dd Missed a name change. 1999-11-18 12:45:09 +00:00
Peter Wemm
592b1c00b5 Argh, don't turn the IIR test on unless it's a pccard. These tests mess
up the subsequent probes.
1999-11-18 10:29:06 +00:00
Alfred Perlstein
1c01270e7a remove PCATCH from a tsleep that isn't checked for (avoid infinite loop).
this needs to be revisited.
1999-11-18 08:57:03 +00:00
Peter Wemm
4e250a4b87 Fix some -Wunused warnings 1999-11-18 08:43:58 +00:00
Peter Wemm
4a6eb2cc6c Fix a warning. 1999-11-18 08:39:02 +00:00
Peter Wemm
609d21b734 Fix some warnings. 1999-11-18 08:32:02 +00:00
Warner Losh
6698366077 Sync to latest cardbusdevs file 1999-11-18 07:22:59 +00:00
Peter Wemm
1447114333 Merge some typo fixes from dev/sio/sio.c (siostop -> comstop)
Remove EXTRA_SIO/NSIOTOT and make it fully dynamic (from dev/sio/sio.c)
Make sio work for pccard here - pccardd doesn't activate interrupts
until after prove has succeeded.
Mark the initial reset of likely sio ports as broken as it depended on
config supplying a list of locations to probe, devices are now proved
standalone.
Optimize a bit of COM_NOAST4() logic.
Use bus_get_resource_start() etc rather than using isa-centric calls.
Reactivate the IIR_TXRDYBUG test, I've got a card here with it.
Try to be a bit smarter about activating interrupts (ie: don't panic
if polled)
Fix some style bugs that have crept in over time (there are still more).
1999-11-18 07:22:41 +00:00
Warner Losh
c6793aa821 Raw import of newconfig cardbus code. This is effectively an import,
so the code doesn't compile.  I added $FreeBSD$ headers.
1999-11-18 07:21:51 +00:00
Peter Wemm
e92f63a277 Remove cdevsw_add() - the make_dev() calls are already there.
Don't '#if NSNP > 0' around the thing as it's silly and not required.
config(8) only causes it to be compiled if NSNP is > 0 by definition.
1999-11-18 06:39:47 +00:00
Peter Wemm
71718a6a22 Convert smb to use make_dev() rather than cdevsw_add(). This stops the
annoying 'smb is usurping smb's cdevsw' type messages.  (Yes, there are
other ways to fix cdevsw_add(), but that is a doomed api)
1999-11-18 05:44:56 +00:00
Peter Wemm
38703ed315 Convert iic to use make_dev() rather than cdevsw_add(). This stops the
annoying 'iic is usurping iic's cdevsw' type messages.  (Yes, there are
other ways to fix cdevsw_add(), but that is a doomed api)
1999-11-18 05:43:32 +00:00
Peter Wemm
8de0675c61 Tidy up a few loose ends in the fifo setup code.
Don't use NFDC as an arbitary limit, it is not required and goes against
using PnP fdc devices (eg: when PNPBIOS is turned on, the motherboard
devices (sio, fdc, etc etc) are detected via PnP, not config(8).)
1999-11-18 05:15:09 +00:00
Warner Losh
e1a0be5f8c o Remove #if XXX from around the probe code.
o Rewrite probe code to work in the newbus world.
o Add preliminary pnp support.  I have no clue what the pnp ids for
  the older ISA machines/cards.  I don't have any of these cards/machines
  so I'll have to rely on the user community to give me help.
o Minor code reformatting.

Attach hasn't been touched, and there may be some config issues that
we need to deal with as well.  These will follow in time.
1999-11-17 23:54:39 +00:00
Nick Hibma
3241be7550 Synchronisation with NetBSD as of 1999/11/16:
Cleaning up the code:
- Declare many functions static
- Change variable names to make them more self explanatory
- Change usbd_request_handle -> usbd_xfer_handle
- Syntactical changes
- Remove some unused code
- Other KNF changes

Interrupt context handling
- Change delay to usbd_delay_ms were possible (takes polling mode into
  account)
- Change detection mechanism for interrupt context

Add support for pre-allocation DMA-able memory by device driver

Add preliminary support for isochronous to the UHCI driver (not for OHCI
yet).

usb.c, uhci.c, ohci.c
- Initial attempt at detachable USB host controllers
- Handle the use_polling flag with a lttle more care and only set it if
we are cold booting.

usb.c, uhci.c ohci.c, usbdi.c usbdi_util.c usb_subr.c
- Make sure an aborted pipe is marked as not running.
- Start queued request in the right order.
- Insert some more DIAGNOSTIC sanity checks.
- Remove (almost) unused definitions USBD_XFER_OUT and USBD_XFER_IN.

usb.c, usb_subr.c
- Add an event mechanism so that a userland process can watch devices
  come and go.

ohci.c
- Handle the case when a USB transfer is so long that it crosses two
  page (4K) boundaries.  OHCI cannot do that with a single TD so we make
  a chain.

ulpt.c
- Use a bigger buffer when transferring data.
- Pre-allocate the DMA buffer.  This makes the driver slightly more
  efficient.
- Comment out the GET_DEVICE_ID code, because for some unknown reason it
  causes printing to fail sometimes.

usb.h
- Add a macro to extract the isoc type.
- Add a macro to check whether the routine has been entered after splusb
  and if not, complain.

usbdi.c
- Fix a glitch in dequeueing and aborting requests on interrupt pipes.
- Add a flag in the request to determine if the data copying is done by
  the driver or the usbdi layer.
1999-11-17 22:33:51 +00:00
Cameron Grant
98d83734f4 this is a full fix for writes not aligned to the sample size selected.
should be a no-op in most cases.
1999-11-15 23:57:33 +00:00
Cameron Grant
0513a1a1cb set default ogain to 50 since some sb cards produce no sound at 0 1999-11-15 23:22:52 +00:00
Peter Wemm
0ff3bc32a8 Fix a typo in the DRIVER_MODULE() declaration which caused a collision
with the real mss module.
1999-11-15 17:03:30 +00:00
Peter Wemm
6e96409f68 Remove duplicate entry for ADS7180 - it's meant to be handled by the
forked-off ad1816 driver.
1999-11-15 17:02:32 +00:00
Doug Rabson
890970b27b Remove some printfs and make it slightly more paranoid about accepting
that an ess1888 is present.
1999-11-15 08:18:24 +00:00
Doug Rabson
62c631ed7f * Ignore the wierd fakechan workarounds for simplex in dsp_ioctl().
Without this, ioctl commands for setting formats and speeds were
  essentially ignored for simplex devices until the application actually
  performed a read or write.
* Make sure that both channels are set in the SB mixer code and provide a
  mixer table specifically for the ess18xx which supports the extended
  accuracy available on this part.
* Fix a stupid bug in ess_format() which ignored the passed-in format and
  changed the hardware based on the value which was set last time. This
  meant that the hardware setting was often not set correctly at all.
* Add a custom identify driver for the ESS1888 which automagically detects
  and adds the device in a pseudo-PnP way. This driver also emits the magic
  sequence which enables the sound hardware after a hard reset, allowing
  it to work correctly for the sound hardware of a PWS 433au (and probably
  all other PWS class alpha machines).

With these changes, I was able to play back simple sounds on my 433au. I
have not tested recording or any other formats other than 8bit ulaw and
16bit stereo.
1999-11-13 18:31:31 +00:00
Roger Hardiman
753d64dfbb Update to driver 2.05
Make tuner on French SECAM Hauppauge cards work
Submitted by:	Cyrille Lefevre <clefevre@citeweb.net>

Fix clipping bugs ready for Xv support in XFree86 4.0
Submitted by:	Thomas Mueller <tmueller@thmu.de>

Fix the 'feature' where /dev/vbi needed to be opened before /dev/bktr
when using Teletext with Alevt and FXTV.

Requested by:	Randall Hopper
1999-11-13 14:54:00 +00:00
Nick Hibma
2c15f8aa97 Add many new devicelabels
Rename a few (I wish companies would stop buying each other)

Add a quirk entry for hubs that say they are self powered but are
in fact bus powered (usage in uhub follows shortly).
1999-11-12 23:31:03 +00:00
Nick Hibma
0e46cd3e22 Fix the computation of the status of the transfers. It never saw a STALLED
condition for Short transfers.

Change the scheduling to Depth first. We now transfer as many TD's as
possible from QH before moving to the next queue (Breadth first). It should
still be verified that this does not lead to starvation in a busy system
(in the case were transfers are added to the beginning of the control
or bulk queues).
1999-11-11 22:32:55 +00:00
Nick Hibma
babd82dfa2 Avoid the usurping message 1999-11-11 17:36:33 +00:00
Doug Rabson
427ccf0071 Add code to support ISA PnP. 1999-11-11 08:48:40 +00:00
Søren Schmidt
5c7e184349 Dont listen to disks that say they can only do 0 sector transfers. 1999-11-10 19:37:00 +00:00
Søren Schmidt
6e82e8be6d Make the atapi device return sensible errno's back to userland.
Dont panic if a nonexistant device is opened.
1999-11-10 07:13:51 +00:00
Kazutaka YOKOTA
cc5c7f76de Correctly record the mouse position in the current VTY. 1999-11-09 12:35:36 +00:00
Nick Hibma
0b0f3f6c3d The Qtronix keyboard has a built in PS/2 port for a mouse.
It however posts a bogus button up event once in a while. Whenever
we receive dx=dy=dz=buttons=0 we postpone adding it to the queue for
50msecs with a timeout. If in the meantime something else is posted
the event is ignored.

This avoids the problem Nik Sayer reported. He noticed that X windows
would drop and pick up a window once in a while.

Thanks, Nik, for supplying me with the keyboard to fix the problem!
1999-11-08 23:58:33 +00:00
Nick Hibma
25ead8013f Add QTronix keyboard with PS/2 mouse connector 1999-11-08 23:50:00 +00:00
Nick Hibma
396f1f268d remove superfluous header include
Submitted-By:	phk
1999-11-08 23:47:34 +00:00
Søren Schmidt
838b8e23b9 Unbreak ATAPI on the Aladdin chipset, only DMA access worked.
Try to use a 32bit mask on the IO addresses, this fixes the alpha
and hopefully doesn't break on any i386 machines.

Try to enable both read & write cache on disks, they should be as
default, but better be sure..
1999-11-08 21:36:00 +00:00
Nick Hibma
031911c604 Remove superfluous header file includes
Remove definition of initialiser.

Some clean up.
1999-11-08 21:12:25 +00:00
Nick Hibma
24b4921ad1 Remove superfluous header file includes.
Pushed-By:	phk
1999-11-08 21:06:21 +00:00
Kazutaka YOKOTA
51ebcb230e - Added a new kernel configuration option: SC_TWOBUTTON_MOUSE.
The new option will make the right mouse button the `paste' button.
  Useful for two button mice.

Submitted by: morganw@engr.sc.edu (Wes Morgan)
1999-11-08 10:04:29 +00:00
Kazutaka YOKOTA
73027df75c - Removed SC_VIDEO_DEBUG. It is broken and useless now. 1999-11-08 09:57:16 +00:00
Peter Wemm
80855566e2 Use cdevsw_add() explicitly and DRIVER_MODULE(). 1999-11-08 07:57:03 +00:00
Peter Wemm
91bbda5f1f Call id_drvinit() from attach, not probe as the OS hasn't necessarily
decided which driver to use until attach.  Use DRIVER_MODULE().
1999-11-08 07:56:10 +00:00
Poul-Henning Kamp
44d1184e81 Rename remove_dev() to destroy_dev().
Nagged about by:        msmith
1999-11-08 07:44:01 +00:00
Peter Wemm
c6b92dec5e Use (temporarily) cdevsw_add() so we can change from DEV_DRIVER_MODULE()
to DRIVER_MODULE().
1999-11-08 07:37:15 +00:00
Peter Wemm
475ad603bb Use cdevsw_add() (temporarily) to avoid DEV_DRIVER_MODULE(), since the
make_dev()'s that are there are not enough.
1999-11-08 07:32:06 +00:00