Commit Graph

2597 Commits

Author SHA1 Message Date
Kazutaka YOKOTA
2b9e6c7549 Fix PS/2 MouseMan+ protocol. We have been looking at a wrong place
for the sign bit for roller movement!
1999-06-03 12:42:10 +00:00
Jonathan Lemon
2171c52a81 Unifdef VM86
Reviewed by:	silence on on -current
1999-06-01 18:17:50 +00:00
Nick Hibma
509a03961f USB stopped working as of the recent cdevsw cleanup. This fixes that. 1999-06-01 07:22:01 +00:00
Nick Hibma
20f81fcbbc Remove the stub driver. It's useless. 1999-06-01 07:18:53 +00:00
Nick Hibma
a0557cd697 usbd_get_request_status now only returns the value if the associated
pointer is passed.
1999-06-01 06:39:03 +00:00
Nick Hibma
114278b089 1) Remove the definition of usb_cdc_generic_descriptor_t. It is
equivalent to usb_descriptor_t

2) Rename USB_CDC_CM_CM_OVER_DATA to USB_CDC_CM_OVER_DATA
1999-05-31 22:35:55 +00:00
Roger Hardiman
153eb46fb6 On the new Meteor cards, the Philips SAA 7116 is connected to the PCI bus
via an IBM PCI-PCI bridge (82351 or 82352 or 82353)

The driver must identify if it is on a secondary PCI bus, which is
created via the IBM PCI-PCI bridge. If it is, then it must initialise
the IBM PCI-PCI bridge correctly.

To do this, the following new functions are added.
Because they use the pcici_t tag, they are considered 2.2 compatibility APIs
  pcici_t * pci_get_parent_from_tag(pcici_t tag);
  int       pci_get_bus_from_tag(pcici_t tag);

(The _from_tag suffix is used to prevent clashes with similarly named
 newbus PCI API functions)

Submitted by: Anton Berezin <tobez@plab.ku.dk>
Reviewed by:  Doug Rabson <dfr@nlsystems.com>
Reworked by:  Me (roger)
1999-05-31 22:13:37 +00:00
Doug Rabson
a97c75b7ea * Change include file locations.
* Fix some misunderstandings about the return value of resource_int_value().
* Make it build on alpha (doesn't work yet...)
1999-05-31 18:39:17 +00:00
Poul-Henning Kamp
2447bec829 Simplify cdevsw registration.
The cdevsw_add() function now finds the major number(s) in the
struct cdevsw passed to it.  cdevsw_add_generic() is no longer
needed, cdevsw_add() does the same thing.

cdevsw_add() will print an message if the d_maj field looks bogus.

Remove nblkdev and nchrdev variables.  Most places they were used
bogusly.  Instead check a dev_t for validity by seeing if devsw()
or bdevsw() returns NULL.

Move bdevsw() and devsw() functions to kern/kern_conf.c

Bump __FreeBSD_version to 400006

This commit removes:
        72 bogus makedev() calls
        26 bogus SYSINIT functions

if_xe.c bogusly accessed cdevsw[], author/maintainer please fix.

I4b and vinum not changed.  Patches emailed to authors.  LINT
probably broken until they catch up.
1999-05-31 11:29:30 +00:00
Poul-Henning Kamp
3faff79c9e The PPSAPI group defines the polarity in draft 3, we guessed it wrong. 1999-05-31 06:57:31 +00:00
Nick Hibma
6e3802969a Enable attachment of multiple drivers to a single device. 1999-05-30 18:49:17 +00:00
Nick Hibma
2eaf666111 Notify CAM of the removed device on detach. 1999-05-30 18:46:04 +00:00
Poul-Henning Kamp
4e2f199e0c This commit should be a extensive NO-OP:
Reformat and initialize correctly all "struct cdevsw".

        Initialize the d_maj and d_bmaj fields.

        The d_reset field was not removed, although it is never used.

I used a program to do most of this, so all the files now use the
same consistent format.  Please keep it that way.

Vinum and i4b not modified, patches emailed to respective authors.
1999-05-30 16:53:49 +00:00
Poul-Henning Kamp
7a1c7bc99f Don't bogusly define a d_reset_t function. 1999-05-30 14:55:24 +00:00
Nick Hibma
8c701b4eef 1) Add URL for printer class specification
2) Change name of UE_IN to UE_DIR
3) Enable printing of the Printer Id string
4) Clean up debugging output while we are at it.
1999-05-30 13:03:00 +00:00
Nick Hibma
12788196b1 - When aborting an interrupt pipe, just wait for 1ms for the completion
of the current interrupt trasaction.
- Do not schedule the next interrupt transaction if the pipe is being
aborted or the last round of the interrupt transaction ended with error.

Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
1999-05-30 12:49:39 +00:00
Nick Hibma
c9efdb87e8 When the mouse is being disconnected, do the followings:
- Call ums_disable() to abort the pipe.
- Do not wake up processes which has been waiting or polling for mouse
  data.  It won't be available anymore.

Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
1999-05-30 12:48:49 +00:00
Doug Rabson
46e1f231cd Simplistic pnp support. Needs more ids to be added. 1999-05-30 11:14:39 +00:00
Doug Rabson
f7f2df54bb No support for pnp yet. 1999-05-30 11:12:30 +00:00
Doug Rabson
d384956496 No support for pnp devices yet. 1999-05-30 11:10:10 +00:00
Doug Rabson
bcbb365b6b In pci_alloc_resource() only check start and end to see if its a default. 1999-05-30 10:54:31 +00:00
Bruce Evans
4011dfccd2 Don't call disable_intr() when interrupts are already disabled, since
disable_intr() does non-recursive locking in the SMP case.  This should
fix cy-driver-related panics when SMP is configured.

Broken in:	rev.1.73 (3.1 and -current)
1999-05-28 13:23:21 +00:00
Doug Rabson
0476a4d4ff Allow a sio port with its flags set to DEBUGGER+LLCONSOLE to be used for
gdb. This allows the sio probe for that port to be disabled which stops
it from confusing the debugger.
1999-05-28 09:37:11 +00:00
Roger Hardiman
229cf3c335 Add support for ASound Gold card using the ALS120
chipset (a vibra 16x clone)
Identified automatically by its PnP ID

Approved by: Luigi
1999-05-27 06:12:40 +00:00
Andrew Gallatin
0f884d6cef Forgotten in previous commit:
Allow chipset drivers to specify the direct-mapped DMA window's mask in
preparation for tsunami support.  Previous chipsets' direct-mapped DMA
mask was always 1024*1024*1024.  The Tsunami chipset needs it to be
2*1024*1024*1024

Reviewed by:	Doug Rabson <dfr@nlsystems.com>
1999-05-26 23:05:23 +00:00
Andrew Gallatin
50b8d1cce4 Allow chipset drivers to specify the direct-mapped DMA window's mask in
preparation for tsunami support.  Previous chipsets' direct-mapped DMA
mask was always 1024*1024*1024.  The Tsunami chipset needs it to be
2*1024*1024*1024

These changes should not affect the i386 port

Reviewed by:	Doug Rabson <dfr@nlsystems.com>
1999-05-26 23:01:57 +00:00
Justin T. Gibbs
51064aaaf8 Ignore subvendor and subdevice ids for all ai7880 parts. These chips
only support 'mirroring' the vendor and device ids, so we don't
lose any information.  Certain revisions of the aic7880 will not
perform the mirroring so to match all possiblities would double
the number of table entries.  This change also allows us to match
things like the 2944B which I missed in the original table.
1999-05-26 16:59:17 +00:00
Justin T. Gibbs
b53bae294f Turn the 'dump eeprom' flag into a real option. 1999-05-25 20:15:41 +00:00
Justin T. Gibbs
378d6d7395 The 1542 cards do not allow adapter commands to be queued while mailbox
commands are outstanding.  You'd think they'd just clear the IDLE bit,
but alas, no.  Delay until all pending mailbox commands have completed
in aha_cmd to work around this.

Report sync rates correctly on Fast Adaptec cards.  Clones may still be
reported incorrectly since there is no documenation on how they report
extended sync values.

Clean up some unused fields in the aha softc.
1999-05-25 20:15:20 +00:00
Justin T. Gibbs
f40c8d7155 All cards using aic789X chips use the new eeprom format.
Corrects bogus negotiation values on aic7890 based controllers.

PR: 11872
1999-05-25 20:12:32 +00:00
Roger Hardiman
8fa3a2e7ed Rename 849 to 849A (the correct name for the IC) 1999-05-25 12:44:40 +00:00
Roger Hardiman
ec3a598be7 Add support for the Bt878/Bt879's Intel 430 FX and
SIS/VIA/ OPTi chipset PCI bus workarounds.

These make the Bt878/879 chips stabler on certain
older and non-intel motherboards.

Use options BKTR_430_FX_MODE
or  options BKTR_SIS_VIA_MODE
to enable these modes.

Also rename 849 to 849A
1999-05-25 12:43:40 +00:00
Bill Paul
497760a16a Fix bug that can cause transmit corruption. There are actually two 'rings'
in the transmit code: the TX descriptor ring, and a 'shadow' ring of mbuf
pointers, one for each TX descriptor. When transmitting a packet that
consists of several fragments in an mbuf chain, we link each fragment
to a descriptor in the TX ring, but we only save a pointer to the mbuf
chain. This pointer is saved in the shadow ring entry which corresponds
to the first fragment in the packet. Later, ti_txeof() can release the
whole chain with a single m_freem() call. (We need the second ring to
keep track of the virtual addresses of the mbuf chains.)

The problem with this is that the Tigon isn't actually through with the
mbuf chain until it reaches the last fragment (which has the TI_BDFLAG_END
bit set), however the current scheme releases the mbuf chain as soon as
the first fragment is consumed. This is wrong, since the mbufs can then
be yanked out from under the Tigon and modified before the other fragments
can be transmitted.

The fix is to make a one line change to ti_encap() so that it saves the
mbuf chain pointer in the shadow ring entry that corresponds to the last
fragment in TX ring instead of the first. This prevents the mbufs from
being released until the last fragment is transmitted.

Painstakingly diagnosed and fixed by: Robert Picco <picco@mail.wevinc.com>
Brought to my attention by: dg
1999-05-24 14:56:55 +00:00
Peter Wemm
578de0426e Fix a [start,end] vs [start,count] botch that corrupted the resource
manager and prevented IOPort allocation beyond the first EISA slot from
working.  subr_rman.c should have trapped this on the way into the system
rather than tripping over the wreckage.

Head banged into wall repeatedly by:  "Matthew N. Dodd" <winter@jurai.net>
1999-05-24 03:08:46 +00:00
Roger Hardiman
ab27fe4452 Added rgb_vbi_prog() to capture VBI data and video at the
same time. To capture VBI data, /dev/vbi must be opened
before starting video capture.
A partly on code from Hiroki Mori <mori@infocity.co.jp>
1999-05-23 21:40:51 +00:00
Justin T. Gibbs
3caf668db7 Don't reference our SCB until we have validated that the firmware has
returned an SCB that is in range.
1999-05-23 18:55:58 +00:00
Justin T. Gibbs
cf7d3071b9 Poll for interrupts in bt_cmd in case they are masked. A completing
mailbox command will block the completion of an immediate command,
so we must service them for our command to succeed.

PR: 11799
1999-05-23 18:54:34 +00:00
Justin T. Gibbs
ebada55cce aic7xxx.c:
Honor the 'bus reset at startup' option now that the XPT properly
	handles transfer negotiation in this scenario.

	Honor the sync rate settings on Ultra2 controllers.  We would
	always negotiate at the fastest speed.  Oops.

aic7xxx.h:
	Whitespace.

aic7xxx.seq:
	Fix a minor nit that would cause the controller to miss the update
	of the negotiation required bitmask causing the negotiation to
	be delayed by a command.
1999-05-22 22:04:11 +00:00
Justin T. Gibbs
1723e869c1 First cut at a driver for the amd53c974 PCI SCSI host adapter. This
driver lacks error recovery and still needs more testing, but it's
about time I got it under revision control.

Submitted by:	 Tekram Inc.
Bus Space/DMA and cleanup: gibbs
1999-05-22 21:50:40 +00:00
Bill Paul
33b3ee3898 - Fix up some comments in if_wi.c (no code changes)
- Mention that the 6Mbps turbo adapters are supported in HARDWARE.TXT
  and RELNOTES.TXT and the wi.4 man page
- Mention turbo adapters in the wicontrol.8 man page and provide a
  complete table of available transmit speed settings
1999-05-22 16:12:54 +00:00
Doug Rabson
6f50cfb43a Use the resource apis to manipulate resources. 1999-05-22 15:47:34 +00:00
Doug Rabson
f78030e22d Don't use BUS_WRITE_IVAR to manipulate resources. 1999-05-22 15:45:47 +00:00
Semen Ustimenko
a1684b9830 Move arpcom structure be the first in softc structure. Needed
for ether_ioctl.

PR:   pending/11754
1999-05-22 06:10:14 +00:00
Bruce Evans
1979249db2 Restored rev.1.76 which was clobbered by rev.1.77. 1999-05-22 04:34:59 +00:00
Nick Hibma
f26c33d249 usbdi.h:
Implement priorities.
GENERIC, LINT, files:
        Remove remarks about ordering of device names.
GENERIC, LINT:
        Sort the devices alphabetically in LINT and GENERIC.
1999-05-20 20:02:37 +00:00
Nick Hibma
91ea20f498 Add comment about split in driver 1999-05-20 19:52:04 +00:00
Andrew Gallatin
aa6de8e012 Add support for multiple PCI "hoses" used on various alpha platforms.
The specific intent of this commit is to pave the way for importing
Compaq XP1000 support.  These changes should not affect the i386 port.

Reviewed by: Doug Rabson <dfr@nlsystems.com>
(actually, he walked me through most of it & deserves more than reviewd-by
credit )
1999-05-20 15:33:33 +00:00
Kazutaka YOKOTA
d3c87b8512 - Include isa/isareg.h rather than i386/isa/isa.h for i386.
- Remove unused (thus, commented out) section of code.
1999-05-20 09:49:33 +00:00
Kazutaka YOKOTA
aee1b285f1 Include sys/isa/isareg.h rather than i386/isa/isa.h for i386. 1999-05-20 09:48:13 +00:00
Søren Schmidt
dc82ab74e3 Eigth update to the new ATA/ATAPI driver:
Fixed problems:

    LS120/ZIP drives still currupted data.
	Reworked once again, buffered I/O is just ignoring any sizehints
	it is given :(
	Now the atapifd driver splits up requests for devices that has
	limitted transfer size.

    ISA only configs fails on boot with interrupt timeouts.
	The new-bus integration introduced a bug where the softc ptr
	was lost during the probe.

Some minor cleanups and rearrangements as well.

As usual USE AT YOUR OWN RISK!!, this is still pre alpha level code.
Especially the DMA support can hose your disk real bad if anything
goes wrong, again you have been warned :)
Notebook owners should be carefull that their machines dont suspend
as this might cause trouble...

But please tell me how it works for you!

Enjoy!
1999-05-20 09:12:06 +00:00