freebsd-nq/sys
Jason A. Harmening 0afebee290 Fix numerous issues in iic(4) and iicbus(4):
--Allow multiple open iic fds by storing addressing state in cdevpriv
--Fix, as much as possible, the baked-in race conditions in the iic
ioctl interface by requesting bus ownership on I2CSTART, releasing it on
I2CSTOP/I2CRSTCARD, and requiring bus ownership by the current cdevpriv
to use the I/O ioctls
--Reduce internal iic buffer size and remove 1K read/write limit by
iteratively calling iicbus_read/iicbus_write
--Eliminate dynamic allocation in I2CWRITE/I2CREAD
--Move handling of I2CRDWR to separate function and improve error handling
--Add new I2CSADDR ioctl to store address in current cdevpriv so that
I2CSTART is not needed for read(2)/write(2) to work
--Redesign iicbus_request_bus() and iicbus_release_bus():
    --iicbus_request_bus() no longer falls through if the bus is already
owned by the requesting device.  Multiple threads on the same device may
want exclusive access.  Also, iicbus_release_bus() was never
device-recursive anyway.
    --Previously, if IICBUS_CALLBACK failed in iicbus_release_bus(), but
the following iicbus_poll() call succeeded, IICBUS_CALLBACK would not be
issued again
    --Do not hold iicbus mtx during IICBUS_CALLBACK call.  There are
several drivers that may sleep in IICBUS_CALLBACK, if IIC_WAIT is passed.
    --Do not loop in iicbus_request_bus if IICBUS_CALLBACK returns
EWOULDBLOCK; instead pass that to the caller so that it can retry if so
desired.

Differential Revision:	https://reviews.freebsd.org/D2140
Reviewed by:	imp, jhb, loos
Approved by:	kib (mentor)
2015-04-21 11:50:31 +00:00
..
amd64 Remove duplicate definitions of MWAIT_CX hints. Identical defines in 2015-04-20 08:25:55 +00:00
arm Build and install the DTB for all the supported AllWinner SoCs. 2015-04-20 22:12:19 +00:00
arm64 Use the address of fsu_intr_fault, not the first two instructions in it as 2015-04-17 12:58:09 +00:00
boot Add "GELI Passphrase:" prompt to boot loader. 2015-04-16 20:53:15 +00:00
bsm
cam scsi_parse_transportid_rdma(): fix mismatch in memoty access size. 2015-04-20 21:44:55 +00:00
cddl Remove vfs.zfs.snapshot_list_prefetch, the corresponding code was 2015-04-17 21:21:11 +00:00
compat Add back fdrop() missed in r281726. 2015-04-19 07:35:18 +00:00
conf Make IFMEDIA_DEBUG a kernel option. 2015-04-21 10:35:23 +00:00
contrib Move ALTQ from contrib to net/altq. The ALTQ code is for many years 2015-04-16 20:22:40 +00:00
crypto In the version of gcc in the FreeBSD tree, this modification was made to 2015-04-16 17:42:52 +00:00
ddb
dev Fix numerous issues in iic(4) and iicbus(4): 2015-04-21 11:50:31 +00:00
fs Prevent a double free. 2015-04-20 16:40:13 +00:00
gdb
geom g_uncompress_taste: prevent a double free. 2015-04-20 16:31:27 +00:00
gnu The GNU Amlogic DTS files have some errors (e.g. bad register 2015-04-11 08:17:39 +00:00
i386 Remove duplicate definitions of MWAIT_CX hints. Identical defines in 2015-04-20 08:25:55 +00:00
isa
kern Rewrite physio() to not allocate pbufs for unmapped I/O. 2015-04-21 10:55:53 +00:00
kgssapi
libkern Implement asprintf in libkern 2015-03-01 00:22:16 +00:00
mips Start enabling the available GPIO pins on the Carambola 2. 2015-04-12 00:02:32 +00:00
modules Build and install the DTB for all the supported AllWinner SoCs. 2015-04-20 22:12:19 +00:00
net Make IFMEDIA_DEBUG a kernel option. 2015-04-21 10:35:23 +00:00
net80211 iwn, wlan: fix typos 2015-04-10 20:55:17 +00:00
netgraph Forgot to add default event mask definition. 2015-04-18 06:16:33 +00:00
netinet Provide functions to determine presence of a given address 2015-04-17 11:57:06 +00:00
netinet6 Fix r281649: don't call in6_clearscope() twice. 2015-04-17 15:26:08 +00:00
netipsec Change ipsec_address() and ipsec_logsastr() functions to take two 2015-04-18 16:58:33 +00:00
netnatm
netpfil Move ALTQ from contrib to net/altq. The ALTQ code is for many years 2015-04-16 20:22:40 +00:00
netsmb
nfs Avoid closing unallocated socket in case socreate fails. 2015-02-28 20:30:29 +00:00
nfsclient Remove some oldnfs remnants. 2015-04-18 16:08:06 +00:00
nfsserver Use M_SIZE() instead of hand-crafted (and mostly correct) NFSMSIZ() macro 2015-01-07 17:22:56 +00:00
nlm
ofed fd: remove filedesc argument from fdclose 2015-04-11 15:40:28 +00:00
opencrypto add the define to properly guard this header.. 2015-04-07 09:00:03 +00:00
pc98 Fix kernel build ${MACHINE} path 2015-04-16 22:34:10 +00:00
powerpc Implement hwpmc(4) for Freescale e500 core. 2015-04-18 21:39:17 +00:00
rpc Remove hard limits on number of accepting NFS connections. 2015-04-07 10:25:27 +00:00
security cred: add proc_set_cred helper 2015-03-16 00:10:03 +00:00
sparc64 Add support for the uart classes to set their default register shift value. 2015-04-11 17:16:23 +00:00
sys Fix the build. Commit the last part of e500 PMC. 2015-04-19 00:33:21 +00:00
teken
tools
ufs File systems that do not use the buffer cache (such as ZFS) must 2015-04-15 20:16:31 +00:00
vm Eliminate an unused variable. 2015-04-20 16:48:21 +00:00
x86 Refine the workaround for Intel HSD131 [1] added in r269052: 2015-04-19 20:15:57 +00:00
xdr
xen Use SYSCTL_OUT_STR() to return strings. 2015-03-14 21:40:24 +00:00
Makefile