Commit Graph

6707 Commits

Author SHA1 Message Date
Warner Losh
9022e7256a Merge in most (hopefully all) of the devices that OpenBSD has that
NetBSD/FreeBSD doesn't have listed.
2001-11-16 06:58:47 +00:00
Robert Watson
101823b1a1 'error' is now unused, since its only purpose was to catch the
results of suser_td().
2001-11-15 19:42:08 +00:00
Robert Watson
474f15b863 Temporarily disable unloading, as it appears to be broken (read: causes
panics)
2001-11-15 19:41:14 +00:00
Robert Watson
ca7779ceca o Rely on /dev/snp* permissions, rather than using suser() in snpopen()
to prevent inappropriate use of the snoop device.  This means that,
  with appropriate chmod'ing, arbitrary users may make use of the snoop
  device.
2001-11-15 19:28:49 +00:00
Jeroen Ruigrok van der Werven
41425f4fac Remove clkrun_hack for ThinkPad 570.
PR:		28031
Submitted by:	Tan Koan-Sin <freedom@csie.nctu.edu.tw>
MFC after:	2 weeks
2001-11-15 18:51:08 +00:00
Mitsuru IWASAKI
964679ce58 Fix re-enabling ACPI on wakeup from hibernation. The problem was that
acpi_Disable() cleared all GPE events.
Some old ACPI implementaions still need current re-enabling code.
2001-11-15 15:12:08 +00:00
Mitsuru IWASAKI
e0157e3edc Two minor changes.
- Change _ACx sysctl oid from ten of _AC[0-9] to one _ACx.
 - Better error printing on _TMP evaluation.

Reviewed by:    msmith
2001-11-15 12:00:48 +00:00
Mitsuru IWASAKI
b8670bed9b Remove "S4B" from sleep_state_names and add "NONE" instead.
Now you can say;
 # sysctl hw.acpi.lid_switch_state=NONE
instead of specifying unsupported _Sx object in the system.

Actually, S4B is going to disappear in ACPICA and we already have
hw.acpi.s4bios to distinguish BIOS hibernation or OS hibernation.
2001-11-15 11:59:25 +00:00
Warner Losh
45c2a3ca28 MF NetBSD's if_ne_pcmcia.c rev 1.82's list of devices 2001-11-15 08:15:44 +00:00
Warner Losh
bca07edc83 More devices. Obtained from NetBSD. 2001-11-15 07:57:38 +00:00
Warner Losh
9de4df498c Migrate to PCMCIA_CARD() macros 2001-11-15 07:52:49 +00:00
Warner Losh
d93f2e2458 Sync to 1.18 of pccarddevs 2001-11-15 07:50:38 +00:00
Warner Losh
720725c93b Add vendor for NDC. 2001-11-15 07:50:09 +00:00
Warner Losh
b9efeffff0 Minor style problem I introduced recently 2001-11-15 06:44:43 +00:00
Warner Losh
34e4437eb0 Hoist the Card/Card2 macros that I invented for the wi driver into
pccard layer and rename them PCMCIA_CARD and PCMCIA_CARD2 respectively
(note, this is being done with an eye towards NetBSD integreation so
it is easier to keep lists of cards between us and them in sync).

Use this in the an and wi drivers.
2001-11-15 06:37:13 +00:00
Warner Losh
3a102d6984 Add PC4500 and 350 for newer cards in this line.
Obtained from: NetBSD's an driver (and FreeBSD's /etc/defaults/pccard.conf)
2001-11-15 06:26:24 +00:00
Warner Losh
a0945bbc7f Add NEWCARD support for aironet stuff.
PR:		24854
Submitted by:	"Sam Habash" <the+xp@llama.com>
(with the mtx fix by Jonathan Chen)
2001-11-15 06:18:06 +00:00
Warner Losh
5e9d03c8be Fix comments about 'current' state of hardware/software 2001-11-15 06:17:05 +00:00
John Baldwin
99efe4f0f8 Remove ifnet.if_mpsafe for now. If this is needed, it won't be needed
until much later when the network stack locking is farther along.

Approved by:	jlemon
2001-11-14 18:36:37 +00:00
Søren Schmidt
e29e633207 Add yet another VIA ATA100 southbridge. 2001-11-13 11:37:23 +00:00
Søren Schmidt
7afba84a9f Fix bogon, free() the right memory type. 2001-11-13 11:33:23 +00:00
Paul Saab
817805d9c9 Fix a signed bug in the crashdump code for systems with > 2GB of ram.
Reviewed by:	peter
2001-11-13 01:08:54 +00:00
Warner Losh
cfc78f73bd Sync to 1.17 of pccarddevs 2001-11-11 23:52:49 +00:00
Warner Losh
ac5e5bcb16 Add GENTEK as one of the bogus vendors we need to id cards from the cis 2001-11-11 23:52:28 +00:00
Warner Losh
81f645ca10 Add a bunch of wireless cards for NEWBUS from NetBSD's list. I'm
trying something new with the macros here and will likely try to get
them adopted by NetBSD as well as moving them to other drivers.  They
make the list more compact and easier to read, the price of rigid to a
schema for generating them (of course there are those that would argue
this isn't bad).

Obtained from: NetBSD's if_wi_pcmcia.c 1.9
2001-11-11 21:27:12 +00:00
Warner Losh
269b3a8211 s/PCCARD_/PCMCIA_/g in NEWCARD device tables to enable easier NetBSD sharing 2001-11-11 20:17:10 +00:00
Warner Losh
fdacad4e76 Sync to 1.16 pccarddevs to get new PCMCIA_ symbols 2001-11-11 20:15:47 +00:00
Warner Losh
e2a83ea7f8 Move from using PCCARD_ symbols gereated from this file to using PCMCIA_
symbols so that driver lists are easier to share and keep in sync.
2001-11-11 20:15:06 +00:00
Warner Losh
362114aa78 Sync to 1.15 pccarddevs 2001-11-11 19:37:28 +00:00
Warner Losh
50fa078ee5 MFNetBSD:
1.140	imp (that's me)		sort the file
	1.141	christos		Another cdrom
	1.142	mjl			Corega PCCB-11
	1.143	mjl			Corega PCC-TD
	1.144	ichiro			ELSA CF wavelan card XI-800
2001-11-11 19:36:44 +00:00
Gerard Roudier
2a8dc28258 MFC after: 0 days 2001-11-11 17:56:35 +00:00
Warner Losh
f966c94291 Move Intel 82092AA into the list of devices. It appears to be a one
off chip that was on one prototype board.  However, this appears to be
a design that many chipsets are compatible with its PPEC register set
(eg the Omega 82c094).  Through the kindness of the Red Hat developer
David Woodhouse, I now have this datasheet.

I may take the advise of one of the bsd-nomads (whose name
unfortunately escapes me at the moment) and split out all these 16-bit
I/O mapped PCI devices into a separate driver...
2001-11-11 17:45:55 +00:00
Warner Losh
e655dc959a Add Omega 82c094 PCI PCMCIA bridge. It is similar to the CL-PD6729 in
that it has one BAR that's mapped to 0x3e0 and is I/O only.  It does
not conform to the Yenta spec, like other PCI PCMICA bridges do (eg
the TI 1031, which is mostly a 1131 w/o 32bit card support).  It
appears that this chip may also need to not route PCI interrupts
as well.

This chip is used in the NEC Versa 2430CD (and it appears that
sometimes it works, while other times it doesn't) and others in the
2400 series.  While the NEC website claims Cardbus support, I can't figure
out how that is possible.

Submitted by: Ben Timby <ben@webexc.com>
2001-11-11 17:07:43 +00:00
Poul-Henning Kamp
dcee186b33 fix typo.
PR:		31898
Submitted by:	Michael Lyngbøl <lyngbol@bifrost.lyngbol.dk>
2001-11-11 11:20:09 +00:00
Jun Kuriyama
6183dc49fb Add support for Intel's i820/i840/i845/i850/i860 chipset.
Submitted by:	nork@cityfujisawa.ne.jp (Norikatsu Shigemura)
PR:		kern/31559, kern/31825
MFC after:	1 week
2001-11-08 16:03:23 +00:00
David E. O'Brien
fd471588f4 We need to operate on struct thread now, not struct proc.
Submitted by:	rwatson
2001-11-08 01:49:06 +00:00
Peter Wemm
da73fe05e1 Add AMD766 OHCI USB controller. Remove unused VENDORID lists. 2001-11-06 23:44:03 +00:00
Mitsuru IWASAKI
1611ea8727 Add S4BIOS sleep (BIOS hibernation) and DSDT overriding support.
- Add S4BIOS sleep implementation.  This will works well if MIB
   hw.acpi.s4bios is set (and of course BIOS supports it and hibernation
   is enabled correctly).
 - Add DSDT overriding support which is submitted by takawata originally.
   If loader tunable acpi_dsdt_load="YES" and DSDT file is set to
   acpi_dsdt_name (default DSDT file name is /boot/acpi_dsdt.aml),
   ACPI CA core loads DSDT from given file rather than BIOS memory block.
   DSDT file can be generated by iasl in ports/devel/acpicatools/.
 - Add new files so that we can add our proposed additional code to Intel
   ACPI CA into these files temporary.  They will be removed when
   similar code is added into ACPI CA officially.
2001-11-06 15:00:30 +00:00
Poul-Henning Kamp
05a0d06888 This file is a 2.2 vintage pre-CAM file of no current value. 2001-11-06 07:24:54 +00:00
Dag-Erling Smørgrav
f61769f009 More drive-by stylification, and some clarifications 2001-11-06 03:28:21 +00:00
Dag-Erling Smørgrav
1619a4903d More drive-by stylification 2001-11-06 02:40:09 +00:00
Dag-Erling Smørgrav
ff95e02306 Drive-by stylification + reintroduce set_border(). 2001-11-06 02:38:09 +00:00
Dag-Erling Smørgrav
b1511f4fb5 syscons' set_border() is now named sc_set_border(), so there is no longer
a naming conflict.
2001-11-06 02:36:26 +00:00
Robert Watson
28bcc53bf7 o dpt_control.c is not compiled into the system (commented out in
conf/files) and as a result appears to have been missed in the bulk
  KSE update of drivers.  This change replaces references to proc
  with thread.  It has not been compile-tested.
2001-11-05 21:02:26 +00:00
Matthew Dillon
7e76bb562e Implement IO_NOWDRAIN and B_NOWDRAIN - prevents the buffer cache from blocking
in wdrain during a write.  This flag needs to be used in devices whos
strategy routines turn-around and issue another high level I/O, such as
when MD turns around and issues a VOP_WRITE to vnode backing store, in order
to avoid deadlocking the dirty buffer draining code.

Remove a vprintf() warning from MD when the backing vnode is found to be
in-use.  The syncer of buf_daemon could be flushing the backing vnode at
the time of an MD operation so the warning is not correct.

MFC after:	1 week
2001-11-05 18:48:54 +00:00
Mitsuru IWASAKI
09e97d2f24 Remove unnecessary WAK_STS bit waiting code for S1 sleep.
It was duplicated with AcpiEnterSleepState() since acpica-unix-20010816.
2001-11-05 14:51:58 +00:00
Andrew Gallatin
16676bcded Force the RxBuf and TxBuf arrays to be aligned on 16-bit boundaries to
make the driver work on alpha

approved by: tanimura
2001-11-05 12:57:46 +00:00
Luigi Rizzo
7b109fa404 MFS: sync the ipfw/dummynet/bridge code with the one recently merged
into stable (mostly , but not only, formatting and comments changes).
2001-11-04 22:56:25 +00:00
Poul-Henning Kamp
dceb9e2e3f Don't call cdevsw_add().
XXX: this driver lacks a proper _clone method.
2001-11-04 15:55:17 +00:00
Poul-Henning Kamp
86af0d1529 devsw_add() and cdevsw_remove() are no longer needed. 2001-11-04 15:52:44 +00:00
Poul-Henning Kamp
90a13e1e9e Don't call cdevsw_{add,remove}(). 2001-11-04 11:55:19 +00:00
Poul-Henning Kamp
efd1585a7a Don't call cdevsw_add(). 2001-11-04 11:50:08 +00:00
Poul-Henning Kamp
0ac42ec512 Don't call cdevsw_add(). 2001-11-04 09:09:41 +00:00
Poul-Henning Kamp
8fb6b29956 Don't call cdevsw_add(). 2001-11-04 08:58:22 +00:00
Poul-Henning Kamp
d7297990fa Don't call cdevsw_add() 2001-11-04 08:54:15 +00:00
Poul-Henning Kamp
54056d2da9 Call to cdevsw_add() no longer needed. 2001-11-04 08:49:51 +00:00
Andrew Gallatin
cd4e23cead Introduce a boot environment variable (clock_compat_osf1) which can
be set to 1 to make FreeBSD and Tru64 coexist peacefully on a dual
boot system and not clobber each other's year in the TOY clock.
(Tru64 uses an offset 52 years higher than one would expect)

Obtained from: NetBSD
MFC After: 1 week
2001-11-03 17:22:50 +00:00
Poul-Henning Kamp
9d1efefd21 Add PCIC_TI4410
(patch probably from imp@, can't remember figuring this out myself.)
2001-11-03 16:45:31 +00:00
Seigo Tanimura
b9d9d8e74c Avoid crash of minor numbers between /dev/midistat and /dev/dspr*. 2001-11-03 12:47:19 +00:00
Noriaki Mitsunaga
c6a39821ec Remove PAO3 dependent part.
This will not affect either -current nor -stable.
2001-11-03 08:55:34 +00:00
Peter Wemm
84e5eebd09 No FreeBSD/vax here either. 2001-11-03 08:32:28 +00:00
Peter Wemm
aaa3add4ea Add Id for 82801CA (ICH3?). The ich driver seems to work fine on the
laptop that had it.
2001-11-03 05:07:59 +00:00
Peter Wemm
d5f6245f80 Add ICH3 (82801CA/CAM) and 460GX 2001-11-03 05:03:00 +00:00
Greg Lehey
c253329a84 allocrqg: Don't ever try to write to a NULL pointer.
Reported by:	Jeff Roberson <jeff@midstream.com>
2001-11-03 02:39:15 +00:00
Jonathan Lemon
d9cdd9607f Emit a warning if the mbuf or mbuf cluster allocation failed.
Requested by: Mike Barcroft
2001-11-02 05:10:40 +00:00
Mitsuru IWASAKI
3fa010222f Oops, deleted wrong BIF acquisition timeout invocation by mistake
in my previous commit.
acpi_cmbat_get_bif() from taskqueue calls acpi_cmbat_timeout() so it's
better for startup.
2001-11-01 22:20:41 +00:00
Luigi Rizzo
5c514284de Always compile in bridge hooks, or this code will not work (efficiently) with
the loadable bridge module.
2001-11-01 17:10:52 +00:00
Mitsuru IWASAKI
f9390180fe Some fix for the recent apm module changes.
- Now that apm loadable module can inform its existence to other kernel
   components  (e.g. i386/isa/clock.c:startrtclock()'s TCS hack).
 - Exchange priority of SI_SUB_CPU and SI_SUB_KLD for above purpose.
 - Add simple arbitration mechanism for APM vs. ACPI.  This prevents
   the kernel enables both of them.
 - Remove obsolete `#ifdef DEV_APM' related code.
 - Add abstracted interface for Powermanagement operations.  Public apm(4)
   functions, such as apm_suspend(), should be replaced new interfaces.
   Currently only power_pm_suspend (successor of apm_suspend) is implemented.

Reviewed by:	peter, arch@ and audit@
2001-11-01 16:34:07 +00:00
David E. O'Brien
2a200695e4 Add the TGA video driver. This is a great accomplishtment and will help
us a lot on older Alphas.
Andrew Gallatin, Thomas V. Crimi, and Peter Jeremy contributed to this
work along with the submitter.

Submitted by:	 Andrew M. Miklic <miklic@home.com>
2001-11-01 08:26:30 +00:00
Andrey A. Chernov
f21d113aa0 Use devclass_find_free_unit() in ata_pci_add_child() because no more
implicit auto-scanning up present in device_add_child(). Functionally it is
fully equivalent to old code.
2001-11-01 05:21:49 +00:00
Jeroen Ruigrok van der Werven
2a01978a07 Fix obvious bug where return from probe was botched.
People with HP PCLAN+ NICs can now happily use the card again

PR:		21087
Submitted by:	M. B. Buchanan <buchanan@orbitworld.net>
2001-10-31 19:43:33 +00:00
Scott Long
ed4927f5e8 Put a Band-Aid over the asr driver so that it hopefully won't cause
panics until the author comes up with a real fix.
2001-10-30 21:13:39 +00:00
Mitsuru IWASAKI
a296c021c2 Style(9) fix, mainly white spaces. 2001-10-30 15:51:52 +00:00
Mitsuru IWASAKI
9febbb4078 Some improvements of control method battery driver.
- Add a new MIB for battery info expire time in order to make it changeable.
   Battery info expire time can be specified by
   hw.acpi.battery.info_expire in sec.
 - Add own MALLOC type and fix some potential memory leakages.
 - Change some frequent printings to verbose printing.
 - Stop timeout during acpi_cmbat_get_bst() too.  This should reduce
   the races with BIF evaluation.
 - Remove acpi_cmbat_get_bif() invocation from acpi_cmbat_attach().
   This was redundant because this should be called from
   acpi_cmbat_timeout() now.
2001-10-30 14:24:26 +00:00
Mitsuru IWASAKI
2d64460768 Some small improvements of ACPI thermal driver.
- Give a guaranteed minimum cooling run time to avoid too frequent
   cooling system On/Off switching.  The minimum cooling run time can be
   specified by hw.acpi.thermal.min_runtime in sec.
 - Refine message printing (_AC-1 -> NONE).
 - Add verbose mode enable/disable capability by hw.acpi.verbose in bool.

Reviewed by:	acpi-jp@ folks
2001-10-29 18:09:43 +00:00
Matthew Dillon
f4481658ec cast dev_t to int in printf to fix warning. 2001-10-29 01:22:15 +00:00
Luigi Rizzo
935fe01014 Enable round-robin arbitration between transmit and receive unit
in the 21143, instead of giving priority to the receive unit.
This gives a 10-15% performance improvement in the forwarding rate
under heavy load.

Reviewed-by: Bill Paul
2001-10-27 00:59:17 +00:00
John Baldwin
282873e2c0 - Change the taskqueue locking to protect the necessary parts of a task
while it is on a queue with the queue lock and remove the per-task locks.
- Remove TASK_DESTROY now that it is no longer needed.
- Go back to inlining TASK_INIT now that it is short again.

Inspired by:	dfr
2001-10-26 18:46:48 +00:00
Mitsuru IWASAKI
f86214b6b8 Add APM compatibility feature to ACPI.
This emulates APM device node interface APIs (mainly ioctl) and
provides APM services for the applications.  The goal is to support
most of APM applications without any changes.
Implemented ioctls in this commit are:
 - APMIO_SUSPEND (mapped ACPI S3 as default but changable by sysctl)
 - APMIO_STANDBY (mapped ACPI S1 as default but changable by sysctl)
 - APMIO_GETINFO and APMIO_GETINFO_OLD
 - APMIO_GETPWSTATUS

With above, many APM applications which get batteries, ac-line
info. and transition the system into suspend/standby mode (such as
wmapm, xbatt) should work with ACPI enabled kernel (if ACPI works well :-)

Reviewed by:	arch@, audit@ and some guys
2001-10-26 17:43:05 +00:00
John Baldwin
1de1c550b1 Add locking to taskqueues. There is one mutex per task, one mutex per
queue, and a mutex to protect the global list of taskqueues.  The only
visible change is that a TASK_DESTROY() macro has been added to mirror
the TASK_INIT() macro to destroy a task before it is free'd.

Submitted by:	Andrew Reiter <awr@watson.org>
2001-10-26 06:32:21 +00:00
John Baldwin
76e7a78292 Use TASK_INIT to initialize taskqueue task instead of violating the
abstraction.

Submitted by:	Andrew Reiter <arr@watson.org>
2001-10-25 19:56:02 +00:00
Jonathan Lemon
208b417fd5 Aargh. I really shouldn't do late night commits. Remove a floating point
multiply, and replace it with a close equivalent.  1.488 =~ 1.5
2001-10-25 19:36:44 +00:00
Luigi Rizzo
617b3dd758 Defs for three (unused so far) bits in PCI command/status register
were off by one bit.
2001-10-25 17:43:26 +00:00
Jonathan Lemon
72a32a26aa Add support for loadable microcode which implements interrupt coalescing
and packet bundling.  Make the microcode settings controllable via sysctl
and loader tunables.

Submitted by: Marko Zec <zec@tel.fer.hr>
  (with some munging and dynamic sysctl support by me)

Also extend the workaround for Dynamic Standby mode to later '559 chips,
not just the ICH2 variants.
2001-10-25 05:32:01 +00:00
Jonathan Lemon
9a7a8c90d1 . Add structure elements for sysctl.
. Document default values for microcode
2001-10-25 05:27:25 +00:00
Jonathan Lemon
3ceb25205d . Add structure definition for microcode download.
Submitted by: Marko Zec <zec@tel.fer.hr>

  . Add some PCI chip revision entries.
  . Make size of txcb dependent on pointer size rather than arch #define
2001-10-25 05:25:58 +00:00
Jonathan Lemon
b4c45df0a7 Add Intel's loadable microcode to implement receive side bundling.
This is taken verbatim from the Intel's e100-1.6.22 release, with
the addition of their LICENSE file at the top.

Submitted by: Marko Zec <zec@tel.fer.hr>
2001-10-25 05:23:31 +00:00
Jonathan Lemon
ae4da68827 Add PCI_ENABLE_IO_MODES option, for BIOSen that neglect this.
Submitted by: Andrew R. Reiter arr@watson.org
2001-10-25 04:44:50 +00:00
John Baldwin
02185af5a9 Change the module name from 'snd_sonicvibes' to 'snd_vibes' as that is
the filename (thus the "old" module name) and the name used by
snd_driver.ko.
2001-10-24 21:44:07 +00:00
John Baldwin
579f17a038 Change module name from 'snd_als' to 'snd_als4000' to match name in
snd_driver.ko.
2001-10-24 21:42:06 +00:00
John Baldwin
0ff24d06f7 Change the module name from 'via' to 'snd_via82c686' to match the KLD
filename and in snd_driver.ko.
2001-10-24 21:38:08 +00:00
John Baldwin
ee1fbec1bf Change the module name from 'snd_cmipci' to 'snd_cmi' to match the
filename, module name in the loader, the dependency in snd_driver.ko, and
to be consistent with other sound drivers.
2001-10-24 21:35:31 +00:00
Jonathan Lemon
553b79aa63 cn_tab no longer exists, use cnadd() to add a console device. Note that
this may result in duplicate console output in some cases.
2001-10-24 18:30:05 +00:00
Dag-Erling Smørgrav
27c97f7660 Don't enable write cacheing on devices that don't support tagged queuing
unless hw.ata.wc is set.

Approved by:	sos
MFC after:	1 week
2001-10-24 18:24:09 +00:00
Cameron Grant
16a33022e7 fix SNDCTL_DSP_GETISPACE behaviour 2001-10-24 12:40:54 +00:00
Cameron Grant
8309fd9aef improve recording behaviour 2001-10-24 12:33:21 +00:00
Matt Jacob
fc16d270b7 Tra-La, another QLogic f/w funny- this time with the 2300.
If we get a completion status of RQCS_QUEUE_FULL, it means
that the internal queues are full. Other QLogic boards set
the QFULL SCSI status. But *nooooooooooo*, not the 2300.

MFC after:	1 day
2001-10-23 23:05:20 +00:00
Nick Hibma
9965784733 Regen. 2001-10-23 22:44:36 +00:00
Nick Hibma
2b97142db8 Add Olympus C-700 2001-10-23 22:44:03 +00:00
John Baldwin
e5e5b51f9f Allow hw.acpi.cpu.{economy,performance}_speed to be set from the loader
via tunables.
2001-10-23 22:37:36 +00:00
Jonathan Lemon
034cc6fe5a Add a siocnterm function for the CONS_DRIVER function vector. 2001-10-23 20:16:56 +00:00
Warner Losh
2ce87d3448 Break out the bus front ends into their own files. Rewrite
sio_pccard_detach to use new siodetach.  Add an extra arg to sioprobe
to tell driver to probe/not probe the device for IRQs.

This incorporates most of Bruce's review material.  I'm at a good
checkpoint, but there will be more to come based on bde's further
reviews.

Reviewed by: bde
2001-10-23 15:17:33 +00:00
Søren Schmidt
d5c047cf10 Add a bunch of new PCI ID's for Intel ATA chips. 2001-10-23 09:57:49 +00:00
Søren Schmidt
e32abc1a60 Add experimental support for the HighPoint HPT372 ATA133 controller.
Based on docs kindly provided by HighPoint which we thank for
the close cooperation with the FreeBSD project!.
2001-10-23 09:25:57 +00:00
Søren Schmidt
6a1f123c0c Add experimental support for the Promise ATA133 controller.
This might need additional code for hotswapping use, but first
I need to get my hands on actual hw...

Based on docs kindly provided by Promise Inc which we thank for
the close cooperation with the FreeBSD project!.
2001-10-23 08:01:47 +00:00
Mitsuru IWASAKI
c7a9768031 Reduce frequency of Battery info (_BIF) acquisition. This helps
avoiding EC read errors on some laptops.
 - Stop updating Battery info for all user requests
 - Update Battery info by notify events and resume method
 - Poll Battery info every one minute

Suggested by:	takawata
2001-10-22 18:01:37 +00:00
Mike Smith
096dcb5345 Fix reversed virtual/physical bus check, whoops!
Submitted by:	HIROSHI OOTA <oota@LSi.nec.co.jp>
2001-10-22 17:38:02 +00:00
Jonathan Lemon
21987f0645 Remove unused headers that were breaking LINT. 2001-10-22 16:35:15 +00:00
Warner Losh
565fcd9dbb These two used sioreg.h as well. This is mildly bogus, but it is harder
to fix right in a hurry.

This (almost) fixes LINT.

Submitted by:	bde
2001-10-22 15:59:49 +00:00
Warner Losh
d75c1b4a90 First commit after a repo copy of isa/sio* -> dev/sio:
Move sio from isa/sio.c to dev/sio/sio.c.  The next step is to break
out the front end attachments, improve support for these parts on
different busses, and maybe, if we're lucky, merging in pc98 support.
It will also be MI and live in conf/files rather than files.*.

Approved by: bde
Tested with: i386, pc98
2001-10-22 02:48:38 +00:00
Matt Jacob
d7ae92aeb3 Update to latest 12160 f/w.
MFC after:	1 week
2001-10-20 21:47:58 +00:00
John Baldwin
76e296aa31 - Make the sio_inited handling more properly MP safe.
- If we are booting with a serial console, then pass the MTX_QUIET flag to
  mtx_init of the sio lock as otherwise KTR_VERBOSE simply doesn't work.
2001-10-20 03:32:33 +00:00
Søren Schmidt
7ebc82d6ec Make an ATAPI CD device appear as /dev/acdN and the individual
tracks as /dev/acdNtY.

This solves the problems with having to deal with howmany and which
devices are open.

For hysterical reasons ONLY, make a link to both the acdNa & acdNc devices.
2001-10-19 13:34:48 +00:00
Jonathan Lemon
109362e442 Add a driver for the Intel PRO/1000 Gigabit Ethernet boards. 2001-10-19 02:17:32 +00:00
Matt Jacob
8b8e73049d Protect against deranged fabric nameservers that spit out 10000 identical
port numbers.

MFC after:	1 day
2001-10-18 17:26:52 +00:00
Søren Schmidt
db92bfc1b4 Fix bug introduced by the last commit, the caused some ATAPI
devices to fail to proberly initialize at boot..
2001-10-16 08:07:36 +00:00
Matt Jacob
ca8f579ceb Fix it so that it doesn't complain for compiles on alpha- that is, match
format string args to actual args.
2001-10-14 19:44:15 +00:00
Scott Long
73b9d66d9a Turn on the hardware volume buttons that are present on most laptops with
these chips.  There is a new hint, hint.pcm.N.hwvol_config, that can be set
to 1 or 0 to select which pins the buttons are connected to.  I'm open to
suggestions on where to document this.  Also bump the number of playback
channels up to 4.

MFC after:	3 days
2001-10-14 19:22:51 +00:00
Kazutaka YOKOTA
8166ba27bd Hack for the "out-of-sync" error.
- Count the number of this error.
- When the error is detected for the first time, the psm driver will
  throw few data bytes (up to entire packet size) and see if it can
  get back to sync.
- If the error still persists, the psm driver disable/enable the mouse
  and see if it works.
- If the error still persists and the count goes up to 20,
  the psm driver reset and reinitialize the mouse. The counter
  is reset to zero.
- It also discards an incomplete data packet when the interval
  between two consequtive bytes are longer than pre-defined timeout
  (2 seconds).  The last byte which arrived late will be regarded as
  the first byte of a new packet.  This is louie's idea.

You may see the following error logs during the above operations:

  "psmintr: delay too long; resetting byte count"
  "psmintr: out of sync (%04x != %04x)"
  "psmintr: discard a byte (%d)"
  "psmintr: re-enable the mouse"
  "psmintr: reset the mouse"

MFC after:	1 month
2001-10-13 10:28:02 +00:00
Greg Lehey
5de383bcbc attachobject: Return correct status after successfully attaching a
plex.

Indirectly found by:	Hendrik Scholz <hscholz@perikles.toppoint.de>
2001-10-13 07:22:12 +00:00
Poul-Henning Kamp
602150cc70 Set ulptusein = 0 so that the machine doesn't hang solid after a
printjob.

There is probably a better fix, but this at least makes USB printing
working again.
2001-10-12 11:05:58 +00:00
John Baldwin
bd78cece5d Change the kernel's ucred API as follows:
- crhold() returns a reference to the ucred whose refcount it bumps.
- crcopy() now simply copies the credentials from one credential to
  another and has no return value.
- a new crshared() primitive is added which returns true if a ucred's
  refcount is > 1 and false (0) otherwise.
2001-10-11 23:38:17 +00:00
Matt Jacob
5aa8fe17f8 Fix declaration disagreement. 2001-10-11 22:02:14 +00:00
John Baldwin
7106ca0d1a Add missing includes of sys/lock.h. 2001-10-11 17:52:20 +00:00
Orion Hodson
9b6a5708db use pcm_getbuffersize() 2001-10-10 17:56:35 +00:00
Scott Long
baadfb4c1e Update to using the pcm_getbuffersize() method.
Fix an off-by-one error in the saving of the dsp memory.
Up the play channels to 2.

MFC after:	3 days
2001-10-09 19:46:09 +00:00
John Baldwin
9935282d50 Use crhold() instead of crdup(). The md(4) driver doesn't modify the ucred
that it uses, so it merely needs to bump its refcount to make it immutable
rather than obtain its own copy.
2001-10-09 16:37:51 +00:00
Yoshihiro Takahashi
5ad8aff376 Added Logitec LHA-301 pnp id. 2001-10-09 15:30:19 +00:00
Jonathan Lemon
f3a48bd0ae The kernel doesn't have <stdio.h> or <string.h>. Remove these. 2001-10-09 04:05:58 +00:00
Cameron Grant
a791cfee44 use pcm_getbuffersize()
only creat a mic recording channel if the codec supports it
2001-10-08 06:10:39 +00:00
Cameron Grant
50388172c5 use pcm_getbuffersize()
use seperate dma tags for buffers and control info
2001-10-08 06:01:13 +00:00
Cameron Grant
39dbd126c7 use pcm_getbuffersize() 2001-10-08 05:59:54 +00:00
Cameron Grant
82ab7a3bc2 * register the correct number of channels
* include hw buffer size in sndstat info
2001-10-07 23:31:52 +00:00
Cameron Grant
a9d2ee22ac use mixer channel numbers, not channel masks- this should fix sb/sbpro mixer
problems.
2001-10-07 23:28:34 +00:00
Matt Jacob
1c3749836f Add some somewhat vague documentation for this driver and a list
of Hardware that might, in fact, work.
2001-10-07 18:26:47 +00:00
Doug Rabson
a067d21032 Make the interrupt routing a bit less chatty unless bootverbose is set. 2001-10-07 18:25:43 +00:00
Matt Jacob
71793c0dc4 Some patches from Doug for ia64 support- the principle one being the
appropriate cache flush that provides MEMORY_BARRIER in between handoffs
between host && RISC processor for the shared memory request/response
queues.

Submitted by:	dfr@nlsystems.com
2001-10-07 18:18:50 +00:00
Luigi Rizzo
06bd2f9c81 Make this compile again after the changes to make bridge kld'able 2001-10-07 00:18:48 +00:00
Matt Jacob
cd37f56f5a Misunderstanding documentation caused me to try and set 1Gbps/2Gps/Auto
connection speed for the 2300 in the wrong offset in the ICB. Oops.

Respect some QLogic errat wrt PCI errors on certain shared host/RISC registers.
2001-10-06 20:41:18 +00:00
Matt Jacob
3bd4033010 Whups- remember to zero the isr pointer arg. 2001-10-06 19:34:43 +00:00
Matt Jacob
db4fa023f8 Respect QLogic's errata- read BIU_ISR even on the 2300
to see if there's an interrupt (avoids PCI parity errors
which can occur on the 2312 if you access some registers
from the host at the same time the RISC on the 2312 is
C accessing them).

MFC after:	1 day
2001-10-06 19:19:24 +00:00
Doug Rabson
bb94354d67 Enable console. There are far too many 'ifdef __i386__' in this file. 2001-10-06 13:34:30 +00:00
Søren Schmidt
8975eded26 Update with latest ATA/ATAPI ver 6 rev 2 items. 2001-10-06 11:07:04 +00:00
Marcel Moolenaar
885f6ac360 Make this compile on ia64. 2001-10-06 09:27:43 +00:00
Peter Wemm
887f6fb8d4 Fix some 64-bit uncleanliness. 2001-10-06 04:09:26 +00:00
Peter Wemm
cd5178beb8 Fix some style bugs before fixing some real bugs. 2001-10-06 04:03:20 +00:00
Peter Wemm
555143d0df Fix a stack trashing bug when int != sizeof(pointer)
This fixes the ia64 boot!  We have scsi disks!
2001-10-06 03:49:38 +00:00
Doug Rabson
aa55386965 Re-route interrupts on ia64 so that we can get the I/O SAPIC interrupt
numbers (the BIOS leaves legacy PIC interrupt numbers in the intline
registers).
2001-10-05 10:33:42 +00:00
Warner Losh
239db728ab Regen. 2001-10-05 05:32:51 +00:00
Warner Losh
e9530498a7 MFNetBSD:
1.139: augustss; Add EigerLabs sound card.
	1.138: ichiro; Typo
	1.137: ichiro; GEMTEK CF-size WaveLAN card based on Prism2.5 eval
	1.136: ichiro; Symbol Spctrum24 LA4100 Series CF WaveLAN card
	1.135: pooka; Psion Gold Card
	1.134: christos; zonet zen (Henrik Berglund)
	1.133: christos; dlink-660+ (janberg@netbsd.org)
	1.132: itojun; 3Com 3CRWE62092A Wireless LAN
2001-10-05 05:32:27 +00:00
Mike Smith
43896e913a Update usage of AcpiEnableEvent to reflect a new argument.
Fix acpi_DeviceIsPresent to check for valid _STA data and to check
the "present" and "functioning" bits.

Use acpi_DeviceIsPresent in acpi_pcib rather than rolling our own
(also broken) version.
2001-10-04 23:21:09 +00:00
Søren Schmidt
c36c574aaa Update the promise raid structure with some of the info I've gathered
before I'm accused of "lending" it from somebody else.
2001-10-04 18:02:26 +00:00
Doug Rabson
b0ee13ad5a Add busspace hacks for ia64. 2001-10-04 08:33:16 +00:00
Doug Rabson
1983594568 Use return_PTR, not return_VALUE when returning pointers. 2001-10-04 08:32:18 +00:00
Doug Rabson
ed136da6f4 Check the compatible ID as well as the hardware ID in acpi_MatchHid. 2001-10-04 08:31:17 +00:00
Søren Schmidt
e55639dbdd Doh! committed from the wrong tree, this is the right "stuff"... 2001-10-03 11:36:25 +00:00
Søren Schmidt
7f6d63666d Proberly support the Promise TX2/4.
Programming info kindly provided by Daniela Engert <dani@ngrt.de>
2001-10-03 08:27:29 +00:00
Søren Schmidt
592fcea788 cosmetics in the bootverbose probe- 2001-10-03 08:25:37 +00:00
Søren Schmidt
9b7c4d4ea0 Hopefully fix the identify failed on ATAPI slaves on some notebooks. 2001-10-03 08:25:11 +00:00
Takanori Watanabe
c84f2b288e Add PnP ID 'IBM3781' for TP240 mouse. 2001-10-03 07:26:28 +00:00
Matt Jacob
79a79ad9b8 Note the 'common knowledge' assumption that each NIC's softc starts
with an ifnet structure (so device_get_softc will get one).

If memory allocation fails in mii_phy_probe, don't just march ahead into
a panic- return ENOMEM.

MFC after:	1 week
2001-10-01 22:57:57 +00:00
Søren Schmidt
7a845ac23c Change the way DAO/TAO mode is init'ed.
Fix a bogon introduced in the previous commit, that broke CDIOREADSUBCHANNEL.
2001-10-01 14:59:52 +00:00
Matt Jacob
53036e9289 Begin to implement target mode that for Fibre Channel has a private
per-command component that we *don't* try and pass thru CAM. CAM just
is too risky and too much of a pain- structures get copied, but not
all info of interest can be considered safely transported thru all
consumers (including user space) from the incoming ATIO to the outgoing
CTIO- it's just much safer to have a buddy structure, identified by the
command's tag which *does* make it thru safely.

Pay attention to link speed and report 200MB/s xfer speed for a
23XX card in 2GPs mode.

MFC after:	1 week
2001-10-01 03:48:42 +00:00
Matt Jacob
c507669af4 Implement a call to get the actual link data rate (if 23XX) so we can
set whether it's a 2Gps or 1Gps link.

MFC after:	1 week
2001-10-01 03:45:54 +00:00
Ian Dowse
9b04180c2c Add an option ED_NO_MIIBUS, which causes the `ed' driver to be
built without support for miibus PHYs. Most ed cards don't need
miibus support, so it's useful to be able to avoid the bloat of
all the mii devices for small fixed-purpose kernels.
2001-09-29 22:32:03 +00:00
Matt Jacob
83548830a7 When calling isp_reset, set the request/response in/out pointers all at
once so there isn't a window with the ones for the 23XX cards being wrong.

When being verbose, print out some more FC NVRAM values (like framesize).

MFC after:	1 week
2001-09-29 19:37:49 +00:00
Jonathan Lemon
b256187110 Do not call mii_polltick() immediately after mii_tick().
Poiinted out by: wpaul
2001-09-29 19:31:29 +00:00
Jonathan Lemon
cd62a9cb38 Do not call mii_pollstat() from within device tick routines; the status
information is updated by mii_tick().

Pointed out by: wpaul (a while back)
2001-09-29 19:28:31 +00:00
Jonathan Lemon
d9730b8b53 Cleanup pass for mii drivers.
. Make internal service routines static.
   . Use a consistent ordering of checks in MII_TICK.  Do the work in the
     mii_phy_tick() subroutine if appropriate.
   . Call mii_phy_update() to trigger the callbacks.
2001-09-29 19:18:52 +00:00
Jonathan Lemon
105cb0c6a9 Change the order that we print the media options during device probe to
match the other mii drivers.
2001-09-29 18:59:17 +00:00
Jonathan Lemon
babc535e85 Add field for last active status, as well as function prototypes. 2001-09-29 18:48:52 +00:00
Jonathan Lemon
eb3a764866 Add new device method miibus_linkchg, along with a service routine. 2001-09-29 18:40:06 +00:00
George C A Reid
8c65132c76 Add another pnpid for the AWE64
PR:		30909
Submitted by:	Kinji Itoh <kinji-i@gray.plala.or.jp>
MFC after:	7 days
2001-09-29 12:38:58 +00:00
Cameron Grant
11149a9ac8 release isa dma channels on unload. 2001-09-29 08:01:42 +00:00
Cameron Grant
374e1c5baa allow the hardware buffer size to be controlled with hints
release isa dma channels on unload (ad1816, ess, sb8)
2001-09-29 07:57:07 +00:00
Jonathan Lemon
750c427849 Add support for 28800 baud to sio.
PR: 30906
Submitted by: "Daniel O'Connor" <darius@chowder.dons.net.au>
2001-09-29 04:49:11 +00:00
Bill Paul
0189c944e2 Set the 'no pseudo header checksum' option for RX checksums, otherwise
we may botch UDP checksums on receive, which will break NFS.
2001-09-28 18:56:57 +00:00
Bill Paul
95d674824f Add device driver support for the Broadcom BCM570x family of gigabit
ethernet controllers. This adds support for the 3Com 3c996-T, the
SysKonnect SK-9D21 and SK-9D41, and the built-in gigE NICs on
Dell PowerEdge 2550 servers. The latter configuration hauls ass:
preliminary measurements show TCP speeds of over 900Mbps using
only normal size frames.

TCP/IP checksum offload, jumbo frames and VLAN tag insertion/stripping
are supported, as well as interrupt moderation.

Still need to fix autonegotiation support for 1000baseSX NICs, but
beyond that, driver is pretty solid.
2001-09-27 23:55:28 +00:00
Bill Paul
245dd946e3 Fix typo: BGGPHY -> BRGPHY in one of the #defines I added the other day. 2001-09-27 17:32:49 +00:00
Jonathan Lemon
3a163803b7 Gate low level console output on mtx_lock_spin(&sio_lock), if the
sio_lock has been initialized.  This prevents the low level console
output (kernel printf) from clobbering the sio settings if the system
happens to be in the middle of comstart().
2001-09-27 17:00:25 +00:00
Alfred Perlstein
e93d0738f5 This driver can talk to the Rio600 as well, make it happen.
Hardware (and patience) provided by: Andrew J Caines <A.J.Caines@halplant.com>
2001-09-27 06:01:20 +00:00
Robert Watson
8c7cc7234e o Modify syscons ioctl securelevel checks to use securelevel_gt() (oh look,
yet another API to do direct hardware I/O access.)

Obtained from:	TrustedBSD Project
2001-09-26 20:17:15 +00:00
Robert Watson
19f1565901 o Modify open() and close() for /dev/random to use securelevel_gt() instead
of direct securelevel variable checks.

Obtained from:	TrustedBSD Project
2001-09-26 20:15:42 +00:00
Robert Watson
8002488bd9 o Modify access control code for /dev/pci device to use securelevel_gt()
instead of direct securelevel variable test.

Obtained from:	TrustedBSD Project
2001-09-26 20:14:03 +00:00
Brooks Davis
9efaa0ae62 Add a standard hack in the spirit of PCI_ENABLE_IO_MODES to allow systems
with weird PCI-PCI bridge configurations to work.  Defining
PCI_ALLOW_UNSUPPORTED_IO_RANGE causes the sanity checks to pass even
with out of range values.

Reviewed by:	msmith
2001-09-26 01:11:33 +00:00
Søren Schmidt
72c2f499ce Add a fix for the VIA82C686B data corruption bug.
This fixed the problem on the 3 platforms I've been able to test on.

I'm still of the oppinion that the BIOS should take care of this,
however some board makers only apply this when they spot a
SBLive! soundcard, but the problem exists even without a SBLive!.

This fix should probably go somewhere else, but for now I'll
keep it here since we havn't got a central place to put
such things.
2001-09-25 17:10:39 +00:00
Kazutaka YOKOTA
d4b248f23e Yet another turn of workaround for psm/ACPI/PnP BIOS
problems currently experienced in -CURRENT.

This should fix the problem that the PS/2 mouse is detected
twice if the acpi module is not loaded on some systems.
2001-09-25 16:59:28 +00:00
Bill Paul
9aa35f2391 Add some definitions for the DSP programming registers in the BCM5400
and BCM5401 PHYs.
2001-09-25 16:41:56 +00:00
Brian Somers
9fd4693f8a Send a .4 second BREAK rather than a .25 second break so that
we're at least consistent with what tcsendbreak(3) is documented
to do.

MFC after: 2 weeks

Note, the MFC will be to sys/dev/dgb/dgm.c on the RELENG_4 branch
2001-09-23 20:03:40 +00:00
Kazutaka YOKOTA
275658afcc Reinitialize the keyboard after the ACPI resume event.
I am not sure if this is absolutely necessary on all systems.  Yet,
there certainly are motherboards and notebook systems which require
this, although there are other systems which just don't.  I hope we
shall know when to do this on which systems, as the development of our
ACPI subsystem progresses...  (I know we didn't need this for the APM
resume.)
2001-09-23 08:42:06 +00:00
Doug Rabson
8beffae7be Tweak so I can use a serial console on ia64. 2001-09-22 19:44:37 +00:00
Poul-Henning Kamp
bd61b8e81d Give the pps driver an additional 8 inputs if we can persuade the
ppc to go into EPP mode.  These 8 inputs are timestamped in polled
loop so their resolution will be nanoseconds but their granularity
will only be 1/hz.
2001-09-22 16:34:59 +00:00
John Baldwin
ed01445d8f Use the passed in thread to selrecord() instead of curthread. 2001-09-21 22:46:54 +00:00
Maxim Sobolev
78f45204d9 Introduce new syscons(4) kernel options:
- SC_CUT_SPACES2TABS - when copying text into the cut buffer convert leading
  spaces into the tabs;
- SC_CUT_SEPCHARS="XYZ" - treat supplied characters as possible words
  separators when the driver searches for words boundaries when doing cut
  operation.

Also unify cut code a bit to decrease amount of duplicated code. This fixes
line cut mode, so that it is no longer pads line with useless spaces.

Approved by:	ru
2001-09-21 20:41:24 +00:00
Søren Schmidt
f601b4eb7c Overhaul to minimize stack usage, in some places >2K was used
on the stack *blush*...
2001-09-20 15:25:36 +00:00
Coleman Kane
57110f7604 Add probe line for the AMD 761 northbridge chip. At least it detects now,
seems to set up memory spaces correctly. This change actually did work for
me using -STABLE, XFree86 4.0.3 ~ some snapshot of DRI awhile back. I sent
mail to dfr to no avail, perhaps someone else would like to test it with
DRI.

Anyway, people have been nagging me about this change for awhile, so here's
the commit.
2001-09-20 05:13:12 +00:00
Bill Paul
8ce3678a09 Handle the RX FIFO overflow condition with the rxeof handler instead
of the rxeoc handler for now. The rxeoc handler will reset the link,
and the NatSemi chip's RX FIFO will overflow on a 32-bit bus once you
start hitting it with 500Mbps or more of traffic.

Also increase the size of the RX ring to 128 descriptors (was 64).
2001-09-19 21:39:26 +00:00
Nick Hibma
dc9c72345c Regen. 2001-09-18 22:30:02 +00:00
Nick Hibma
55c883cea3 Update the header of the file with a comment on how to regenerate
the usbdevs* file correctly.

Suggested by:	phantom
2001-09-18 22:27:41 +00:00
Jonathan Lemon
ed63a3c7ee Have the driver announce its rxcsum capabilities. 2001-09-18 20:19:28 +00:00