freebsd-skq/sys
ian 1eb0f3d2f0 Add support for tracking nested calls to iicbus_request/release_bus().
Usually it is sufficient to use iicbus_transfer_excl(), or one of the
higher-level convenience functions that use it, to reserve the bus for the
duration of each register access.  Occasionally it is important that a
series of accesses or read-modify-write operations must be done without any
other intervening access to the device, to prevent corrupting state.

Without support for nested request/release, slave device drivers would have
to stop using high-level convenience functions and resort to working with
arrays of iic_msg structs just for a few operations (often involving
one-time device setup or infrequent configuration changes).

The changes here appear large from a glance at the diff, but in fact they're
nearly trivial, and the large diff is because of changes in indentation and
the re-wrapping of comments caused by that.  One notable change is that
iicbus_release_bus() now ignores the IICBUS_CALLBACK(IIC_RELEASE_BUS) return
value.  The old error handling left the bus in a kind of limbo state where
it was still owned at the iicbus layer, but drivers rarely check the return
of the release call, and it's unclear what they would do to recover from an
error return anyway.  No existing low-level drivers return any kind of error
from IIC_RELEASE_BUS except one EINVAL for "you don't own the bus", to which
the right response is probably to carry on with the process of releasing the
reference to the bus anyway.
2017-07-26 21:06:26 +00:00
..
amd64 Add support for pmap_enter(..., psind=1) to the amd64 pmap. In other words, 2017-07-23 06:33:58 +00:00
arm Use the MD __size_t to avoid a dependency on/include of non-MD header files. 2017-07-25 17:39:06 +00:00
arm64 Pass the last exception trap frame to kdb_trap. This allows show registers 2017-07-26 17:39:10 +00:00
boot Merge ^/head r321239 through r321306. 2017-07-20 20:37:23 +00:00
bsm
cam This adds CAM pass(4) support for NVMe IO's. Applications indicate 2017-07-14 14:52:20 +00:00
cddl spa_import_rootpool should be able to handle an imported root pool 2017-07-25 13:17:06 +00:00
compat Upgrade to the latest sources generated from the CloudABI specification. 2017-07-26 06:57:15 +00:00
conf Allow -DNO_SKIP_DEPEND to override the _SKIP_DEPEND logic. 2017-07-25 16:46:12 +00:00
contrib Upgrade to the latest sources generated from the CloudABI specification. 2017-07-26 06:57:15 +00:00
crypto
ddb Include opt files in the kernel with "" instead of <>. 2017-07-10 05:08:01 +00:00
dev Add support for tracking nested calls to iicbus_request/release_bus(). 2017-07-26 21:06:26 +00:00
fs Mark pages after EOF as clean after pageout. 2017-07-26 20:07:05 +00:00
gdb
geom Add GEOM::descr attribute for symmetry with GEOM::ident. 2017-07-06 08:36:14 +00:00
gnu Update DTS files from Linux 4.12 2017-07-09 13:53:32 +00:00
i386 Fix handling of one more possible exception on return to usermode. 2017-07-08 11:07:39 +00:00
isa Protect access to the AT realtime clock with its own mutex. 2017-07-12 02:42:57 +00:00
kern Change the interactions of the interface functions with the "meta" and 2017-07-24 17:23:53 +00:00
kgssapi
libkern arm64: add ".arch armv8-a+crc" to allow use of crc instructions 2017-06-08 20:06:09 +00:00
mips [ar933x] make carambola2 work again! 2017-07-23 07:10:41 +00:00
modules qlnx: gcc build errors 2017-07-18 06:15:05 +00:00
net Don't hold the RM lock during lagg_proto_addport() to avoid an LOR. 2017-07-25 14:41:50 +00:00
net80211 net80211: do not allow to unload rate control module if it is still in use. 2017-07-23 22:38:00 +00:00
netgraph
netinet Revert r307901 - Inform CC modules about loss events. 2017-07-25 15:08:52 +00:00
netinet6 Use memset/memcpy instead of bzero/bcopy. 2017-07-19 14:28:58 +00:00
netipsec
netpfil Fix a couple of typos in a comment. 2017-07-21 03:04:55 +00:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed
opencrypto
powerpc Add cpufreq support for P1022 and MPC8536 2017-07-21 03:40:05 +00:00
riscv Clean up MD pollution of bus_dma.h: 2017-07-01 05:35:29 +00:00
rpc
security
sparc64 Clean up MD pollution of bus_dma.h: 2017-07-01 05:35:29 +00:00
sys Mark name_PCTRIE_LOOKUP_LE() generated function unused. 2017-07-26 06:42:01 +00:00
teken
tests
tools
ufs Improve publication of the newly allocated snapdata. 2017-07-21 18:42:35 +00:00
vm Mark pages after EOF as clean after pageout. 2017-07-26 20:07:05 +00:00
x86 __pcpu: gcc -Wredundant-decls 2017-07-21 17:11:36 +00:00
xdr
xen
Makefile