linux/Documentation
Jean Delvare b5527a7766 i2c: Add SMBus alert support
SMBus alert support. The SMBus alert protocol allows several SMBus
slave devices to share a single interrupt pin on the SMBus master,
while still allowing the master to know which slave triggered the
interrupt.

This is based on preliminary work by David Brownell. The key
difference between David's implementation and mine is that his was
part of i2c-core, while mine is split into a separate, standalone
module named i2c-smbus. The i2c-smbus module is meant to include
support for all SMBus extensions to the I2C protocol in the future.

The benefit of this approach is a zero cost for I2C bus segments which
do not need SMBus alert support. Where David's implementation
increased the size of struct i2c_adapter by 7% (40 bytes on i386),
mine doesn't touch it. Where David's implementation added over 150
lines of code to i2c-core (+10%), mine doesn't touch it. The only
change that touches all the users of the i2c subsystem is a new
callback in struct i2c_driver (common to both implementations.) I seem
to remember Trent was worried about the footprint of David'd
implementation, hopefully mine addresses the issue.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Cc: Trent Piepho <tpiepho@freescale.com>
2010-03-02 12:23:42 +01:00
..
ABI Merge branch 'for-2.6.34' of git://git.kernel.dk/linux-2.6-block 2010-03-01 09:00:29 -08:00
accounting Documentation/: fix warnings from -Wmissing-prototypes in HOSTCFLAGS 2009-09-23 07:39:28 -07:00
acpi ACPI: support customizing ACPI control methods at runtime 2009-12-11 01:50:08 -05:00
aoe
arm ARM: 5930/1: Add PKMAP area description to memory.txt. 2010-02-15 21:40:33 +00:00
auxdisplay includecheck fix: Documentation, cfag12864b-example.c 2009-09-24 07:20:57 -07:00
blackfin Blackfin: add an example showing how to use the gptimers API 2009-12-15 00:15:04 -05:00
block Merge branch 'master' into for-2.6.34 2010-02-22 13:48:51 +01:00
blockdev The DRBD driver 2009-10-01 21:17:49 +02:00
cdrom debugfs: Fix terminology inconsistency of dir name to mount debugfs filesystem. 2009-06-15 21:30:28 -07:00
cgroups blkio: Documentation 2009-12-03 19:28:53 +01:00
connector connector: Provide the sender's credentials to the callback 2009-10-02 10:54:01 -07:00
console
cpu-freq [CPUFREQ] fix default value for ondemand governor 2010-01-13 10:55:15 -05:00
cpuidle
cris
crypto async_tx: add support for asynchronous RAID6 recovery operations 2009-08-29 19:09:27 -07:00
development-process docs: Encourage better changelogs in the development process document 2009-06-04 10:32:49 -06:00
device-mapper dm snapshot: add merge target 2009-12-10 23:52:30 +00:00
DocBook V4L/DVB: media-spec: Fix documentation mistakes regarding I/O streaming 2010-02-26 15:11:05 -03:00
driver-model Driver core: driver_attribute parameters can often be const* 2009-12-23 11:23:43 -08:00
dvb V4L/DVB: get_dvb_firmware: Fix typo, sort list of components 2010-02-26 15:10:56 -03:00
early-userspace
fault-injection fault injection: correct function names in documentation 2010-02-02 18:11:22 -08:00
fb viafb: documentation update 2009-12-16 07:20:05 -08:00
filesystems rcu: 1Q2010 update for RCU documentation 2010-01-16 10:25:22 +01:00
firmware_class driver core: fix documentation of request_firmware_nowait 2009-06-15 21:30:24 -07:00
frv
hwmon Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging 2010-01-11 09:45:55 -08:00
i2c i2c: Add SMBus alert support 2010-03-02 12:23:42 +01:00
i2o
ia64 Documentation/: fix warnings from -Wmissing-prototypes in HOSTCFLAGS 2009-09-23 07:39:28 -07:00
ide ide: preserve Host Protected Area by default (v2) 2009-06-07 13:52:52 +02:00
infiniband IB: Fix typo in ipoib.txt 2009-12-09 14:21:36 -08:00
input Merge branch 'next' into for-linus 2010-02-28 23:55:20 -08:00
ioctl docs: large update to ioctl-number.txt 2010-01-11 09:34:04 -08:00
isdn gigaset: documentation amendments 2009-12-08 20:30:41 -08:00
ja_JP block: rename CONFIG_LBD to CONFIG_LBDAF 2009-06-19 08:08:50 +02:00
kbuild kbuild: generate modules.builtin 2009-12-12 13:08:16 +01:00
kdump trivial: Miscellaneous documentation typo fixes 2009-06-12 18:01:47 +02:00
ko_KR
kvm KVM: x86: Extend KVM_SET_VCPU_EVENTS with selective updates 2009-12-27 13:36:33 -02:00
laptops thinkpad-acpi: update volume subdriver documentation 2009-12-26 22:37:58 -05:00
lguest lguest: remove unneeded zlib.h include in example launcher 2010-02-24 14:22:22 +10:30
m68k
make
mips ide: remove unused CONFIG_BLK_DEV_IDE_AU1XXX_SEQTS_PER_RQ 2009-01-14 19:19:03 +01:00
misc-devices ad525x_dpot: new driver for AD525x digital potentiometers 2009-12-15 08:53:25 -08:00
mn10300 trivial: Miscellaneous documentation typo fixes 2009-06-12 18:01:47 +02:00
mtd trivial: Miscellaneous documentation typo fixes 2009-06-12 18:01:47 +02:00
namespaces
netlabel
networking IPv6: better document max_addresses parameter 2010-02-23 01:25:00 -08:00
parisc
PCI Documentation: Rename Documentation/DMA-mapping.txt 2010-01-02 10:09:44 -08:00
pcmcia pcmcia: use ops_mutex for rsrc_{mgr,nonstatic} locking 2010-02-17 17:48:24 +01:00
power PM: Runtime PM documentation update 2009-12-22 20:43:40 +01:00
powerpc Merge commit 'gcl/next' into next 2010-02-19 14:38:23 +11:00
pps LinuxPPS: core support 2009-06-18 13:04:04 -07:00
prctl
RCU rcu: Use canonical URL for Mathieu's dissertation 2010-02-25 10:34:56 +01:00
s390 [S390] cio: introduce cio_settle 2010-02-26 22:37:29 +01:00
scheduler sched: Documentation/sched-rt-group: Fix style issues & bump version 2009-06-21 13:12:46 +02:00
scsi [SCSI] megaraid_sas: version and documentation update 2010-02-17 13:13:00 -06:00
serial tty: docs: serial/tty, add to ldisc methods 2009-12-11 15:18:05 -08:00
sh
sound Merge branch 'topic/hda' into for-linus 2010-03-01 12:38:54 +01:00
sparc
spi tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
sysctl doc: Add documentation for bootloader_{type,version} 2009-12-11 14:28:56 -08:00
telephony
thermal thermal: add sanity check for the passive attribute 2009-11-05 18:18:10 -05:00
timers fix URL in hpet.txt 2009-11-09 09:40:54 +01:00
trace Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-28 10:20:25 -08:00
uml
usb USB: power management documentation update 2009-12-23 11:34:09 -08:00
video4linux V4L/DVB: Documentation: gspca.txt: update known mr97310a cams 2010-02-26 15:11:09 -03:00
vm HWPOISON: Use correct name for MADV_HWPOISON in documentation 2009-12-16 12:20:00 +01:00
w1 ds2482: Discard obsolete detect method 2009-10-04 22:53:41 +02:00
watchdog Documentation/: fix warnings from -Wmissing-prototypes in HOSTCFLAGS 2009-09-23 07:39:28 -07:00
wimax
x86 x86, numa: Remove configurable node size support for numa emulation 2010-02-15 14:34:18 -08:00
zh_CN
00-INDEX Bluetooth: Add documentation for Marvell Bluetooth driver 2009-08-22 14:25:32 -07:00
applying-patches.txt
atomic_ops.txt Documentation/atomic_ops.txt: fix sample code 2009-06-16 19:47:52 -07:00
bad_memory.txt
basic_profiling.txt
binfmt_misc.txt
braille-console.txt trivial: Miscellaneous documentation typo fixes 2009-06-12 18:01:47 +02:00
bt8xxgpio.txt
btmrvl.txt Bluetooth: Add documentation for Marvell Bluetooth driver 2009-08-22 14:25:32 -07:00
BUG-HUNTING
cachetlb.txt Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-03-01 09:15:15 -08:00
Changes netfilter: xtables: document minimal required version 2009-12-14 14:52:10 +01:00
CodingStyle trivial: fix typo milisecond/millisecond for documentation and source comments. 2009-06-12 18:01:46 +02:00
cpu-hotplug.txt cpumask: don't recommend set_cpus_allowed hack in Documentation/cpu-hotplug.txt 2009-12-17 11:43:29 +10:30
cpu-load.txt
cputopology.txt Documentation: ABI: /sys/devices/system/cpu/cpu#/ topology files 2009-10-30 14:59:52 -07:00
credentials.txt
dcdbas.txt
debugging-modules.txt
debugging-via-ohci1394.txt ieee1394: update URLs in debugging-via-ohci1394.txt 2009-10-03 09:28:11 +02:00
dell_rbu.txt trivial: Documentation/dell_rbu.txt: fix typos 2009-06-12 18:01:50 +02:00
devices.txt lanana: assign a device name and numbering for MAX3100 2009-04-07 08:44:05 -07:00
DMA-API.txt trivial: Miscellaneous documentation typo fixes 2009-06-12 18:01:47 +02:00
DMA-attributes.txt
DMA-ISA-LPC.txt
dmaengine.txt
dontdiff Merge branch 'for-linus-1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-kconfig 2010-02-25 14:43:57 -08:00
dynamic-debug-howto.txt Dynamic debug: allow simple quoting of words 2009-03-24 16:38:27 -07:00
edac.txt fix typos/grammos in Documentation/edac.txt 2009-12-04 15:39:53 +01:00
eisa.txt
email-clients.txt
feature-removal-schedule.txt Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2010-03-01 10:38:09 -08:00
flexible-arrays.txt Update flex_arrays.txt 2009-10-15 07:25:20 -06:00
futex-requeue-pi.txt futex: add requeue-pi documentation 2009-05-09 07:12:50 +02:00
gcov.txt trivial: fix typo in CONFIG_DEBUG_FS in gcov doc 2009-09-21 15:14:56 +02:00
gpio.txt gpiolib: add support for changing value polarity in sysfs 2009-12-16 07:20:01 -08:00
highuid.txt
HOWTO
hw_random.txt
initrd.txt
intel_txt.txt x86, intel_txt: Intel TXT boot support 2009-07-21 11:49:06 -07:00
Intel-IOMMU.txt intel-iommu: Kill DMAR_BROKEN_GFX_WA option. 2009-09-19 09:37:23 -07:00
io_ordering.txt
io-mapping.txt
IO-mapping.txt Documentation: fix ioremap return type 2010-01-02 10:09:44 -08:00
iostats.txt
IPMI.txt
IRQ-affinity.txt
IRQ.txt
irqflags-tracing.txt
isapnp.txt
java.txt
kernel-doc-nano-HOWTO.txt documentation: update kernel-doc-nano-HOWTO information 2010-01-11 09:34:07 -08:00
kernel-docs.txt
kernel-parameters.txt Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-28 10:38:45 -08:00
keys-request-key.txt
keys.txt KEYS: Add a keyctl to install a process's session keyring on its parent [try #6] 2009-09-02 21:29:22 +10:00
kmemcheck.txt kmemcheck: update documentation 2009-07-01 22:36:22 +02:00
kmemleak.txt kmemleak: add clear command support 2009-09-08 16:36:08 +01:00
kobject.txt trivial: Miscellaneous documentation typo fixes 2009-06-12 18:01:47 +02:00
kprobes.txt debugfs: Fix terminology inconsistency of dir name to mount debugfs filesystem. 2009-06-15 21:30:28 -07:00
kref.txt kref: double kref_put() in my_data_handler() 2009-09-18 09:48:52 -07:00
ldm.txt
leds-class.txt led: document sysfs interface 2009-08-28 15:21:12 -04:00
leds-lp3944.txt leds: LED driver for National Semiconductor LP3944 Funlight Chip 2009-06-23 20:21:38 +01:00
local_ops.txt trivial: Miscellaneous documentation typo fixes 2009-06-12 18:01:47 +02:00
lockdep-design.txt lockdep: Fix typos in documentation 2009-08-07 12:03:46 +02:00
lockstat.txt lockstat: Add usage info to Documentation/lockstat.txt 2009-12-06 13:20:02 +01:00
logo.gif Revert "linux.conf.au 2009: Tuz" 2009-04-27 12:00:27 -07:00
logo.txt Revert "linux.conf.au 2009: Tuz" 2009-04-27 12:00:27 -07:00
magic-number.txt
Makefile
ManagementStyle
mca.txt
md.txt md: add 'recovery_start' per-device sysfs attribute 2009-12-14 12:58:57 +11:00
memory-barriers.txt sched: Document memory barriers implied by sleep/wake-up primitives 2009-04-29 14:15:55 +02:00
memory-hotplug.txt mm: add numa node symlink for memory section in sysfs 2009-12-15 08:53:17 -08:00
memory.txt Documentation/memory.txt: remove some very outdated recommendations 2009-09-22 07:17:26 -07:00
mono.txt
mutex-design.txt
nmi_watchdog.txt
nommu-mmap.txt nommu: fix malloc performance by adding uninitialized flag 2009-12-15 08:53:24 -08:00
numastat.txt mm: fix NUMA accounting in numastat.txt 2009-09-22 07:17:39 -07:00
oops-tracing.txt docs: Describe the 'C' taint flag in oops-tracing.txt 2009-11-09 09:40:56 +01:00
parport-lowlevel.txt
parport.txt
pi-futex.txt
pnp.txt
preempt-locking.txt
printk-formats.txt
prio_tree.txt
rbtree.txt trivial: rbtree.txt: fix rb_entry() parameters in sample code 2009-06-12 18:01:47 +02:00
rfkill.txt rfkill: export persistent attribute in sysfs 2009-06-19 11:50:18 -04:00
robust-futex-ABI.txt futex: documentation: fix inconsistent description of futex list_op_pending 2009-06-18 13:03:56 -07:00
robust-futexes.txt
rt-mutex-design.txt
rt-mutex.txt
rtc.txt rtc: add boot_timesource sysfs attribute 2009-09-23 07:39:46 -07:00
SAK.txt
SecurityBugs
SELinux.txt
serial-console.txt
sgi-ioc4.txt
sgi-visws.txt
slow-work.txt SLOW_WORK: Move slow_work's proc file to debugfs 2009-12-01 08:20:31 -08:00
SM501.txt trivial: Miscellaneous documentation typo fixes 2009-06-12 18:01:47 +02:00
Smack.txt smack: implement logging V3 2009-04-14 09:00:23 +10:00
sparse.txt Documentation: explain the difference between __bitwise and __bitwise__ 2009-04-11 08:18:11 +02:00
spinlocks.txt Documentation: rw_lock lessons learned 2009-12-14 09:46:56 -08:00
stable_api_nonsense.txt
stable_kernel_rules.txt Doc/stable rules: add new cherry-pick logic 2009-12-23 11:23:43 -08:00
SubmitChecklist doc: SubmitChecklist, add ioctls, remove OSDL reference 2009-12-16 07:20:06 -08:00
SubmittingDrivers
SubmittingPatches docs: update patch size in SubmittingPatches 2009-10-01 16:11:12 -07:00
svga.txt
sysfs-rules.txt Doc/sysfs-rules: Swap the order of the words so the sentence makes more sense 2009-05-08 19:22:20 -07:00
sysrq.txt sysrq, kdump: make sysrq-c consistent 2009-07-29 19:10:36 -07:00
tomoyo.txt tomoyo: add Documentation/tomoyo.txt 2009-04-14 09:14:58 +10:00
unaligned-memory-access.txt
unicode.txt
unshare.txt
VGA-softcursor.txt
vgaarbiter.txt vgaarbiter: fix a typo in the vgaarbiter Documentation 2009-12-16 11:28:58 -08:00
video-output.txt
volatile-considered-harmful.txt
voyager.txt
zorro.txt