freebsd-dev/sys
Marcel Moolenaar eced428604 Fix hangs caused by z8530_bus_ipend() returning UART_IPEND_TXIDLE
not as a pending interrupt status, but as a matter of status quo.
Consequently, when there's no data to be transmitted the condition
is not cleared and uart_intr() is stuck in an infinite loop trying
to clear the UART_IPEND_TXIDLE status.
The z8530_bus_ipend() function is changed to return idle only once
after having sent any data.

The root cause for this problem is that we cannot use the interrupt
status bits of the SCC itself. The register that holds the interrupt
status can only be accessed by channel A and holds the status for
both channels. Using the interrupt status register would complicate
the driver because we need to synchronize access to the SCC between
the channels.

Elementary testing: marius
2004-05-04 06:58:10 +00:00
..
alpha Add option GEOM_GPT. This brings the ability to have a large number of 2004-05-02 20:40:19 +00:00
amd64 Add option GEOM_GPT. This brings the ability to have a large number of 2004-05-02 20:40:19 +00:00
arm
boot Convert block comments into C-style that is understood by cpp(1). 2004-04-29 18:58:38 +00:00
cam Quirk for Neuros USB audio device. 2004-05-02 19:24:23 +00:00
coda
compat Small timer cleanups: 2004-04-30 20:51:55 +00:00
conf Remove new options and my prevention of system freeze when the sio probe 2004-05-03 22:35:28 +00:00
contrib Commit three imported bugfixes from OpenBSD 3.4-stable: 2004-05-02 20:47:24 +00:00
crypto
ddb
dev Fix hangs caused by z8530_bus_ipend() returning UART_IPEND_TXIDLE 2004-05-04 06:58:10 +00:00
fs
geom Turn off debugging by default. 2004-05-03 21:11:54 +00:00
gnu
i4b
i386 Increase BUS_SPACE_IAT_MAXSIZE to 33 for the ed driver. 2004-05-04 06:38:13 +00:00
ia64 Floating-point faults and exceptions can happen in the kernel too. 2004-05-03 04:13:31 +00:00
isa - The i8254 uses IRQ 0, not IRQ 8. Correct i8254_intsrc to reference the 2004-04-27 20:03:26 +00:00
isofs/cd9660
kern Add /* !MAC */ to final #endif. 2004-05-03 22:54:46 +00:00
libkern
modules Connect geom_gate.ko to the build. 2004-05-03 21:12:29 +00:00
net Add route.h to pick up the rt_ifmsg() declaration. 2004-05-04 02:39:41 +00:00
net80211
netatalk This commit does two things: 2004-04-25 09:24:52 +00:00
netatm
netgraph Fix a memory leak in ng_get_string_token. A dynamically-allocated 2004-04-29 01:37:11 +00:00
netinet Switch to using the inpcb MAC label instead of socket MAC label when 2004-05-04 02:11:47 +00:00
netinet6 fix the change of interface in nd6_storelladdr for multicast 2004-04-26 20:31:46 +00:00
netipsec use correct address for SADB_EXT_ADDRESS_DST in key_do_allocsa_policy 2004-05-03 05:15:53 +00:00
netipx
netkey
netnatm
netncp
netsmb
nfs
nfs4client
nfsclient
nfsserver
opencrypto
pc98 Oops, switch to using the moved cy driver for pc98 too (remove pointers 2004-05-03 16:03:41 +00:00
pccard
pci Remove old cy driver files. They have been repo-copied to sys/dev/cy and 2004-05-02 05:38:49 +00:00
posix4
powerpc Add option GEOM_GPT. This brings the ability to have a large number of 2004-05-02 20:40:19 +00:00
rpc
security If the mbuf pointer passed to mac_mbuf_to_label() is NULL, or the tag 2004-05-03 23:37:48 +00:00
sparc64 Add option GEOM_GPT. This brings the ability to have a large number of 2004-05-02 20:40:19 +00:00
sys Rename m_claim_next_hop() to m_claim_next(), as suggested by Max Laier. 2004-05-02 15:10:17 +00:00
tools
ufs Revert previous change to this file because it breaks some 2004-04-29 15:10:42 +00:00
vm
Makefile