i2c: smbus: add SMBus Host Notify support
authorBenjamin Tissoires <benjamin.tissoires@redhat.com>
Thu, 9 Jun 2016 14:53:48 +0000 (16:53 +0200)
committerWolfram Sang <wsa@the-dreams.de>
Fri, 17 Jun 2016 11:24:05 +0000 (13:24 +0200)
commite456cd37bc28abe47dc65189df916ac0510ac1d4
tree28f3dc9cdf024c2ee088002cb00ec526b87a4e34
parentb4f210541fc319bd643ad9a4fdbfe2ce31be6cfc
i2c: smbus: add SMBus Host Notify support

SMBus Host Notify allows a slave device to act as a master on a bus to
notify the host of an interrupt. On Intel chipsets, the functionality
is directly implemented in the firmware. We just need to export a
function to call .alert() on the proper device driver.

i2c_handle_smbus_host_notify() behaves like i2c_handle_smbus_alert().
When called, it schedules a task that will be able to sleep to go through
the list of devices attached to the adapter.

The current implementation allows one Host Notification to be scheduled
while an other is running.

Tested-by: Andrew Duggan <aduggan@synaptics.com>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Documentation/i2c/smbus-protocol
drivers/i2c/i2c-smbus.c
include/linux/i2c-smbus.h
include/linux/i2c.h
include/uapi/linux/i2c.h