summaryrefslogtreecommitdiff
path: root/include/linux/i2c-mux.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/i2c-mux.h')
-rw-r--r--include/linux/i2c-mux.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/i2c-mux.h b/include/linux/i2c-mux.h
index 98ef73b7c8fd..43c40680d8c5 100644
--- a/include/linux/i2c-mux.h
+++ b/include/linux/i2c-mux.h
@@ -14,6 +14,7 @@
#ifdef __KERNEL__
#include <linux/bitops.h>
+#include <linux/workqueue.h>
struct i2c_mux_core {
struct i2c_adapter *parent;
@@ -27,6 +28,9 @@ struct i2c_mux_core {
int (*select)(struct i2c_mux_core *, u32 chan_id);
int (*deselect)(struct i2c_mux_core *, u32 chan_id);
+ struct mutex hold_lock; /* mutex for channel holding */
+ struct delayed_work unhold_work;
+
int num_adapters;
int max_adapters;
struct i2c_adapter *adapter[];