1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-24 11:29:10 +00:00
freebsd/sys/dev
Marcel Moolenaar ca83142fc3 Make the Z8530 more reliable as low-level console by making use of the
fact that access to RR0 does not need a prior write to the register
index because the index always reverts to 0 after the indexed register
has been accessed.

Typically when a RR or WR is to accessed, one programs the index (which
is a write to the control register), followed by a read or write to the
actual indexed register (a read pr write to the same control register).
When this non-atomic sequence is interrupted after having written the
index and low-level console I/O is done in that situation, the write to
program the index will actually write to the indexed register and nuke
state. This almost always yields a wedge.

By not programming the index register and instead just reading from RR0,
the worst case scenario is non-fatal. For if we don't actually read from
RR0 but some other register we get an invalid status, which may lead us
to conclude that the transit data register is empty when it's not or that
the receive data register contains data when it doesn't. Hence, we may
lose an output character or get a sporadic input character, but given
the situation this is a non-issue.

Full serialization is not possible due to the fact that this code needs
to work from DDB and before mutex initialization has happened.

In collaboration with: kris@, marius@
Tested by: kris@
MFC after: 1 day
X-MFC: 5.4-RELEASE candidate
2005-04-27 21:57:51 +00:00
..
aac purge dead code 2005-03-26 23:37:54 +00:00
acpi_support Fix a small locking error. 2005-04-04 10:21:20 +00:00
acpica Add the tunable "debug.acpi.max_threads" to allow users to set the 2005-04-21 06:13:48 +00:00
adlink Instead of a rather useless generation number, use a sample number to 2005-03-19 12:55:46 +00:00
advansys Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 19:24:22 +00:00
agp Add nForce3-250. 2005-04-08 18:04:39 +00:00
aha
ahb
aic Remove ifdef PC98. 2005-04-13 13:02:58 +00:00
aic7xxx remove useless ptr check; cur_column can never be null 2005-03-31 05:00:31 +00:00
amd Use BUS_PROBE_DEFAULT 2005-03-06 06:55:11 +00:00
amr handle potential null ptr 2005-03-31 04:58:10 +00:00
an check copyin/copyout return values 2005-03-28 17:52:12 +00:00
ar Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 19:06:12 +00:00
arcmsr arcmsr_make_timespec, and arcmsr_getcmos_time appear to be unused, and 2005-04-01 07:15:52 +00:00
arl
asr Make life easier on those trying to use the asr utilities by automatically 2005-04-01 22:12:53 +00:00
ata Fix a bug introduced in r1.89 thats caused leak of requests, and possibly 2005-04-26 06:42:33 +00:00
ath honor new IEEE80211_KEY_GROUP key flag 2005-04-12 17:56:43 +00:00
atkbdc Backout previous diffs - this functionality is already provided by the 2005-04-07 23:59:37 +00:00
auxio
awi reclaim mbuf chain when ieee80211_crypto_encap fails 2005-03-08 17:01:03 +00:00
bfe Releasing TX/RX descriptor dmamaps during device detachment instead of 2005-03-17 13:59:30 +00:00
bge Fix the order of the lowaddr,highaddr arguments in the parent tag. This 2005-04-24 02:45:27 +00:00
bktr Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 19:06:12 +00:00
buslogic
cardbus Use STAILQ in preference to SLIST for the resources. Insert new resources 2005-03-18 05:19:50 +00:00
ciss Provide a way to soft reset a proxy controller such as an MSA20 or 2005-04-19 06:11:16 +00:00
cm
cnw
cp Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
cpufreq Only activate ICH speedstep if we're going to use it. No bugs were observed 2005-03-20 01:25:21 +00:00
cs
ct
ctau Use dynamic major number allocation. 2005-02-27 22:16:58 +00:00
cx netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
cy Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
dc Fix newer Xircom CBE2-100 cards that were reporting 2005-04-18 03:31:29 +00:00
dcons
de Return BUS_PROBE_DEFAULT instead of 0. 2005-02-24 21:32:56 +00:00
dec
digi Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
dpt Remove unnecessary dpt_free(). 2005-04-13 05:03:14 +00:00
drm Fix a panic on X startup for drivers that don't init maps themselves by storing 2005-04-24 19:03:32 +00:00
ed Remove ifdef PC98. 2005-04-13 13:02:58 +00:00
eisa Now that the Adaptec 2842 has its own probe routine, no need to have 2005-03-17 17:36:07 +00:00
em Run em_local_timer() once per second instead of running it once per 2 seconds. 2005-04-05 07:06:47 +00:00
en Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
ep Make it clear that the statement following the conditional is a NOP. 2005-04-13 06:42:43 +00:00
esp Apply a torniquet to the problem of the drive unexpectedly disconnecting 2005-04-25 22:11:43 +00:00
ex
exca
fatm Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
fb check copyin return values when loading pallete 2005-03-26 18:01:35 +00:00
fdc If we fail a sanity check for the resources just allocated, make sure 2005-03-15 08:02:47 +00:00
fe Perliminary support for Fujitsu SCSI LAN combo card. At least for the 2005-02-20 19:40:29 +00:00
firewire Explicitly hold a reference to the cdev we have just cloned. This 2005-03-31 12:19:44 +00:00
fxp Be more conservative when enabling extended features. There are fxp(4) 2005-04-22 13:05:53 +00:00
gem Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
gfb
harp
hatm Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
hfa Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
hifn Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
hme Release the IRQ resource on detach. This fixes repeatedly loading and 2005-04-05 17:51:56 +00:00
hptmv check copyin return value (and while we're at it copyout too) 2005-03-31 05:15:27 +00:00
hwpmc Include <sys/pmc.h> instead of <machine/pmc_mdep.h>. The MI header 2005-04-20 20:26:39 +00:00
ic Since we are quite unlikely to ever face another platform which 2005-02-06 13:46:39 +00:00
ichsmb Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:17:35 +00:00
ichwd
ida Test for NULL before use. 2005-04-13 17:39:43 +00:00
idt Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:17:35 +00:00
ie
ieee488 Don't leak mutex on open failure. 2005-04-04 17:37:35 +00:00
if_ndis Throw the switch on the new driver generation/loading mechanism. From 2005-04-24 20:21:22 +00:00
iicbus
iir Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:17:35 +00:00
io
ips Remove an extra mutex unlock in the morpheus interrupt handler. 2005-04-26 13:38:29 +00:00
ipw Initial import of ipw, iwi, ral and ural drivers: 2005-04-18 18:47:38 +00:00
isp Prefer <sys/cdefs.h>'s __printflike() macro to the recently added 2005-03-07 15:29:11 +00:00
ispfw
iwi Initial import of ipw, iwi, ral and ural drivers: 2005-04-18 18:47:38 +00:00
ixgb Add locking and enable INTR_MPSAFE. Eliminate spl calls. 2005-04-05 05:05:29 +00:00
joy
kbd Backout previous diffs - this functionality is already provided by the 2005-04-07 23:59:37 +00:00
led Add placeholder mutex argument to new_unrhdr(). 2005-03-07 11:05:47 +00:00
lge Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:17:35 +00:00
lnc Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:17:35 +00:00
mc146818
mca
mcd netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
md Request a CPU private mapping from sf_buf_alloc(). If the swap-backed 2005-02-13 21:51:50 +00:00
mem
mii On second though, print the OUI, model and revision. This is the same 2005-02-16 05:56:39 +00:00
mk48txx
mlx plug resource leak 2005-03-31 21:58:53 +00:00
mly Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:10:49 +00:00
mpt Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:10:49 +00:00
mse Minor style(9) changes 2005-04-08 05:22:58 +00:00
my Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:10:49 +00:00
ncv
nge fix null ptr deref when nge_newbuf is called with an existing mbuf 2005-03-28 17:49:03 +00:00
nmdm Explicitly hold a reference to the cdev we have just cloned. This 2005-03-31 12:19:44 +00:00
nsp
null Use dynamic major number allocation. 2005-02-27 22:01:09 +00:00
nve I missed a s/nv/nve/. 2005-04-26 16:07:50 +00:00
ofw Merge revision 1.5 from NetBSD: Fix a typo in a comment. 2005-02-12 19:12:17 +00:00
owi
patm Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:10:49 +00:00
pbio Skip PNP probes. If there are isapnp or pnpbios instances of this driver, 2005-02-11 03:56:13 +00:00
pccard Initial import of ipw, iwi, ral and ural drivers: 2005-04-18 18:47:38 +00:00
pccbb Since cbb implements the pcib_ interface, it must also implement the 2005-04-13 16:35:15 +00:00
pcf
pci Call pci_print_verbose() before pci_add_resources() so that the order of 2005-04-14 17:52:55 +00:00
pdq Offer unhandled IOCTLS to fddi_ioctl(). 2005-03-24 01:58:20 +00:00
ppbus In ppsintr, we needed ppsdev to get to the softc and nothing else. 2005-04-14 15:56:10 +00:00
ppc don't use C keyword register as CPP macro argument name 2005-04-12 23:32:26 +00:00
pst Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:10:49 +00:00
puc Sort Oxford Semi entires. Add entry for OXCB950, a PCI/CardBus 2005-04-22 07:49:35 +00:00
ral Initial import of ipw, iwi, ral and ural drivers: 2005-04-18 18:47:38 +00:00
random Revert to the more correct array size, and correct a KASSERT to 2005-03-29 11:08:45 +00:00
ray Make a bunch of malloc types static. 2005-02-10 12:02:37 +00:00
rc
re Unbreak build with POLLING. I should really listen and test with NOTES 2005-03-13 01:54:41 +00:00
rndtest
rp - Use pci_get_device() and pci_get_vendor() when we only want one part 2005-03-25 03:10:51 +00:00
sab
safe Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
sbni
sbsh Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
scd netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
sf Fix style(9) issues with __P removal. 2005-02-24 22:33:05 +00:00
si Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
sio Oops, revert a commit that snuck in with the earlier critical section 2005-04-05 18:06:28 +00:00
sk Deal with failed malloc calls[1]. 2005-04-25 10:18:24 +00:00
smbus
sn
snc Only send packet to bpf if we are committed to send it. Previously it was 2005-02-21 17:30:10 +00:00
snp Explicitly hold a reference to the cdev we have just cloned. This 2005-03-31 12:19:44 +00:00
sound Add code from Kazuhito HONDA that allows the user to see 2005-04-27 17:16:27 +00:00
speaker
sr Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
stg Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
streams Use kern_open() directly rather than a stackgap detour via open(). 2005-02-07 18:22:20 +00:00
sx Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
sym eliminate double free when sym_cam_attach fails 2005-03-26 18:17:58 +00:00
syscons No need to ifdef this pc98. 2005-04-04 05:28:19 +00:00
tdfx Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
tga Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
ti If resource allocation fails, we could wind up freeing the cdev without it 2005-03-31 17:16:40 +00:00
trm Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
twa The latest release of the FreeBSD driver (twa) for 2005-04-12 22:07:11 +00:00
twe Use correct flags for bus_dma_tag_create(). 2005-03-06 20:57:54 +00:00
tx Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
txp Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
uart Make the Z8530 more reliable as low-level console by making use of the 2005-04-27 21:57:51 +00:00
ubsec Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
usb Initial import of ipw, iwi, ral and ural drivers: 2005-04-18 18:47:38 +00:00
utopia Split the chip-specific code from the generic Utopia code. This simplifies 2005-02-24 16:56:36 +00:00
vge Remove the extra EEPROM reload step I added before. vge_reset() 2005-04-25 23:26:20 +00:00
vkbd Explicitly hold a reference to the cdev we have just cloned. This 2005-03-31 12:19:44 +00:00
vr Fix style(9) issues with __P removal. 2005-02-24 22:33:05 +00:00
vx Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
watchdog
wds
wi Invert conditional and use continue to reduce nesting. 2005-04-13 03:36:24 +00:00
wl
xe
zs The zs(4) driver is superseded by uart(4) and broken in -CURRENT. Remove 2005-02-27 15:23:58 +00:00