8401 Commits

Author SHA1 Message Date
jhb
feb5060448 Warning fixes for sizeof(int) != sizeof(void *). 2002-11-07 17:25:33 +00:00
jhb
89f9d57a60 - Make 'irq' intptr_t instead of uintptr_t so it handles a value of -1
properly.
- Add a cast to quiet a printf warning.
2002-11-07 17:20:58 +00:00
iedowse
92eb830a35 Properly fix the occassional random crash issue that revision 1.142
just limited to the DEVICE_POLLING case. This removes the FXP_RFA_RNRMARK
hack, and replaces it with a softc flag that is used to record when
the handling of a no-resource condition was deferred due to running
out of DEVICE_POLLING cycles. This was tested on -stable, but the
code is essentially the same as in -current. It should only affect
the case where DEVICE_POLLING is defined.

The details of the mechanism behind the crashes are still uncertain
but the most likely cause seems to be some kind of hardware confusion
when the no-resource recovery code is accidentally invoked while
the receiver is still active. This could have happened if the
hardware left the 0x4000 bit of the RFA status word set. The comments
in the commit log for revision 1.142 stating that the driver could
clash with the hardware writing to this status word were not correct.

Tested by:	Guy Helmer <ghelmer@palisadesys.com>
2002-11-07 16:04:07 +00:00
simokawa
2d6271e925 - Fix printf warnings on 64bit plathome.
- Disable fw_vmaccess() because it's not used and unuseful 64bit plathome.
2002-11-07 02:13:40 +00:00
jhb
22de9969b0 Adjust some casts to quiet warnings.
Reviewed by:	mdodd
2002-11-06 22:58:55 +00:00
jhb
323d135eb0 Use long long to print out a bus_addr_t again. 2002-11-06 22:42:45 +00:00
jhb
50f4905075 Cast a bus_addr_t to a long long to make printf happy. 2002-11-06 22:40:01 +00:00
joe
7a3b87e1c5 Packed structures are defined differently in older gcc's, like the one
currently in -stable.  Put the exception into usb.h instead of having it
hard coded in the sound code.
2002-11-06 21:37:21 +00:00
jhb
5203196b0a Use bus_addr_t instead of u_int32_t in functions to convert between
physical and virtual addresses.
2002-11-06 21:19:17 +00:00
jhb
534622e551 Use the explicit value 0xffffffff instead of assuming that is what ~0UL
equals.

Approved by:	imp
2002-11-06 20:40:29 +00:00
jhb
5f80d8bbe2 Add some band-aid casts to quiet warnings. This driver still assumes
that sizeof(int) == sizeof(void *) == 4.  However, it also seems that the
hardware assumes this.
2002-11-06 20:34:38 +00:00
jhb
a956a28e35 More int != pointer stuff. 2002-11-06 20:16:39 +00:00
jhb
fd412ae82b Repeat after me: sizeof(int) != sizeof(void *). 2002-11-06 20:04:41 +00:00
jhb
59eda164d2 Use some long long casts to quiet warnings in debug printf's on alpha. 2002-11-06 19:52:13 +00:00
jhb
6c4cc56664 Use a bandaid to fix a warning. However, this driver is very, very far
from being MI in any fashion.  It currently "assumes" that it can get
a kernel virtual address for a phyiscal address by adding KERNBASE to the
physical address.  It also tries to read values out of a the PC BIOS on
all archs.  It also uses "manual" inb() and outb()'s to talk to the mcclock
device which just happens to be at that location on both i386 and alpha.
This driver should likely be i386-only.
2002-11-06 19:42:59 +00:00
jhb
292fe1c0a4 Fix warning where sizeof(size_t) != sizeof(int). 2002-11-06 18:55:24 +00:00
simokawa
131fe3293a Add support for DEVICE_POLLING.
PR: kern/44772
Submitted by: Takashi Oono <takashi@yha.att.ne.jp>
MFC after: 1 week
2002-11-06 15:50:32 +00:00
simokawa
e6dea8f633 Minor clean up on cdb handling. 2002-11-06 15:34:52 +00:00
joe
e47c241892 There's no need for a locally defined usb_proc_t when we've got
usb_proc_ptr that does the same thing.
2002-11-06 14:29:27 +00:00
mdodd
a349f5fa5c Whitespace, style fixes. 2002-11-06 08:08:55 +00:00
simokawa
58b83e0c52 - Let the PCI code try to route interrupt in -current
- Print warning in -stable.
2002-11-06 04:07:05 +00:00
mdodd
700f038d71 Remove undefined variable.
Somehow this didn't make it in the last commits.
2002-11-05 10:56:14 +00:00
mdodd
da2dfb243f Style/whitespace changes. 2002-11-05 10:12:03 +00:00
mdodd
313e62ce9c Fix for GEOM.
Tested on:	 i386
2002-11-05 09:50:15 +00:00
mdodd
a7a5118115 - Convert to newbus, bus_space etc.
- Move to MI space.

Tested on:	 i386
2002-11-05 09:37:32 +00:00
simokawa
0c6061a847 Sony CXD3222 OHCI i.LINK chips needs more DELAY before starting SCLK
when no devices are connected.
2002-11-05 02:42:28 +00:00
cognet
2b19845e44 Call pcm_chn_destroy() in pcm_killchan() so that channel mutexes are destroyed and struct pcm_channel freed.
Reviewed by:	cg
MFC after:	3 days
2002-11-04 19:12:02 +00:00
imp
c3a4aaf573 Detach the pccard bus children when we eject a 16-bit card, not the
32-bit ones.  This was introduced in the last commit.
2002-11-04 03:01:56 +00:00
iwasaki
d978848622 Add status initialization code for acpi_cmbat and acpi_acad,
acpi_cmbat_init_battery() and acpi_cmbat_init_acline() respectively.
Call acpi_cmbat_init_battery() from acpi_cmbat_resume() too just in
case.
This is a workaround for embedded controller operations which is
unstable for about a minute (typically 30 or 40 sec.) at boot time.
2002-11-03 10:49:24 +00:00
imp
fd4399a908 MFp4:
o Always release the resources on device detach.
o Attach resources the same with driver added as we do we do in the insert
  case (maybe this should be a routine).
o signal the wakeup of the thread on resume instead of trying to force an
  interrupt.
o Minor debug hacks.
o use 0xffffffff instead of -1 for uint32_t items.
o Don't complain when we're asked to detach no cards.  This is normal.
o Eliminate the now worthless second parameter to card_detach_card.
o minor style(9)isms

Some of these patches may be from: iwasaki-san, jhb, iadowse
2002-11-02 23:00:28 +00:00
mdodd
3dfe105e7a Merge PC98 changes. 2002-11-02 04:18:10 +00:00
iedowse
ab4014bff8 Specify the correct protocol for the Olympus C-1 camera. It appears
that this entry was accidentally given the wrong protocol in revision
1.61.

PR:		kern/42417
Submitted by:	"Moriki, Toshiomi" <toshiomi@whi.m-net.ne.jp>
2002-11-01 01:13:20 +00:00
iwasaki
e85ea23a6d Don't examine ACPI_STA_ENABLE bit of device's_STA object on initial
state.  Instead, use ACPI_STA_PRESENT and ACPI_STA_FUNCTIONAL for it.
In some ACPI BIOS implementations, boot disabled devices don't have
ACPI_STA_ENABLE bit in _STA object.
Also it is not fatal if getting current IRQ of boot disabled devices
is failed in initial state.

And minor fixes.
2002-10-31 20:43:02 +00:00
iwasaki
400e1f5e97 Interpret new loader tunable "hw.acpi.verbose" to turn
verbose mode on at boot time.
2002-10-31 20:23:41 +00:00
iwasaki
c16ad03604 Invoke 3 ACPI task threads as default if option ACPI_MAX_THREADS is
not defined.
To make previous default behavior (ACPI_MAX_THREADS undefined), define
option ACPI_MAX_THREADS as 0.
2002-10-31 17:58:39 +00:00
emoore
b461de566a Incorrect typecast. 2002-10-31 14:10:00 +00:00
peter
7037f5c5b1 Add tunable "hw.eisa_slots" to allow overriding the default number
of slots (10).
2002-10-31 00:45:49 +00:00
emoore
179f0b4ddc amr.c,
amr_cam.c,
amrreg.h,
amrvar.h:
- added support for 12/16 byte cdb's, effecting CAM branch only ( non-disk support )

amrreg.h:
- increased number of scatter gather elements from 16 to 26.

amr_pci.c:
- amr_pci_free(), incorrect bus tag meant for 'amr_mailbox_dmat' was being freed

all:
- copyright change requested by scottl

Reviewed by:	ps,scottl
MFC after:	1 week
2002-10-30 22:00:11 +00:00
iedowse
d7097cadfd Save and restore the interrupt Edge/Level Control Registers (ELCR)
across system suspends on the Intel 82371AB PCI-ISA bridge. On a
Sony Vaio C1XD that I have, these registers are not set correctly
after an ACPI resume. The result is that after resuming, a shared
IRQ is left in edge-triggered mode so the interrupt can later become
jammed in a state where the line remains asserted, but the handler
is never called.

Reviewed by:	jhb
2002-10-30 19:55:06 +00:00
iedowse
94318a914f Revision 1.136 introduced two features that may cause undefined
behaviour of the hardware: a possibly reserved bit of the receive
descriptor (RFA) `status' field is borrowed to record no-resource
(RNR) events, and the same status field is read and written to at
a time that may clash with the hardware updating this field.

There is no hardware documentation available to determine if these
things are safe to do; the second issue almost certainly isn't, and
the first is only safe if there is documentation saying that this
bit is free to be used by the driver. The PR referenced below
provides extremely convincing evidence that the changes cause random
crashes on some (unusual) hardware.

Since these features are only required by the DEVICE_POLLING case,
this commit makes their use conditional on that option. It does not
change the DEVICE_POLLING case, but at least people with the rare
hardware on which this code causes problems can now avoid the crashes
by not enabling DEVICE_POLLING.

PR:		kern/42260
Reviewed by:	luigi
Problem revision found by: Pawel Malachowski <pawmal@unia.3lo.lublin.pl>
Tested by:	Pawel Malachowski <pawmal@unia.3lo.lublin.pl>
MFC after:	1 week
2002-10-30 19:08:56 +00:00
iedowse
792310e769 Check for errors and zero-length transfers in the ulpt_input() input
pipe callback function, and just return if these cases are detected.
Without these checks, the ulpt driver may cause an infinite loop
of failing USB transfers that can hang the whole machine. This makes
printing work for me on a HP DJ950C printer.
2002-10-30 01:18:58 +00:00
jhb
13f1045bf9 Add a missing newline to the end of a device_printf().
Reported by:	Michael G. Petry <petry@NetMasters.Com>
2002-10-29 19:08:55 +00:00
semenu
51ffa1e8b1 Remove unnecessary <sys/malloc.h> include.
Submitted by:	marius@alchemy.franken.de
MFC after:	1 week
2002-10-29 00:20:47 +00:00
scottl
7895420367 Reduce namespace pollution to userland.
Spotted-by:	bde
2002-10-28 17:08:07 +00:00
mdodd
9c8acae4f7 Handle hints for the atspeaker device.
Document same.
2002-10-28 02:00:09 +00:00
mux
0ef4b48b32 Fix a bunch of warnings on 64 bit platforms in the
CISS_DEBUG case by appropriately using %z and %j.
2002-10-27 12:27:04 +00:00
mux
a6b93b4e90 Fix a warning when CISS_DEBUG is defined. 2002-10-27 12:05:11 +00:00
mux
d2ac0d86f6 Add a missing destroy_dev(). 2002-10-26 18:09:30 +00:00
tmm
d0b6b7a6ad Call bpf_mtap() on outgoing packets. 2002-10-26 12:32:07 +00:00
sam
3859ed1230 o m_adj rx buffer so IP header is 32-bit aligned
o replace EPIC_MGETCLUSER with m_getcl

MFC after:	1 week
2002-10-25 22:06:03 +00:00