Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3bbb835d4c53faf0bca62f0e39835926bef40b1f
Commit:     3bbb835d4c53faf0bca62f0e39835926bef40b1f
Parent:     cee37ae4071740cb190d1ac4ddb7aa77484aa7b3
Author:     David Brownell <[EMAIL PROTECTED]>
AuthorDate: Sat Oct 13 23:56:29 2007 +0200
Committer:  Jean Delvare <[EMAIL PROTECTED]>
CommitDate: Sat Oct 13 23:56:29 2007 +0200

    i2c: New-style devices can support driver model wakeup flags
    
    We need to be able to flag I2C devices, such as RTCs, which can issue wake
    events (usually through IRQ lines).  This adds an i2c_board_info.flags bit,
    and uses it to initialize the i2c device node.  (And shrinks a few lines
    that were overly long.)
    
    Signed-off-by: David Brownell <[EMAIL PROTECTED]>
    Signed-off-by: Jean Delvare <[EMAIL PROTECTED]>
---
 drivers/i2c/i2c-core.c |    4 +++-
 include/linux/i2c.h    |    7 ++++---
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c
index 910a62d..06b4b9e 100644
--- a/drivers/i2c/i2c-core.c
+++ b/drivers/i2c/i2c-core.c
@@ -226,7 +226,9 @@ i2c_new_device(struct i2c_adapter *adap, struct 
i2c_board_info const *info)
        client->adapter = adap;
 
        client->dev.platform_data = info->platform_data;
-       client->flags = info->flags;
+       device_init_wakeup(&client->dev, info->flags & I2C_CLIENT_WAKE);
+
+       client->flags = info->flags & ~I2C_CLIENT_WAKE;
        client->addr = info->addr;
        client->irq = info->irq;
 
diff --git a/include/linux/i2c.h b/include/linux/i2c.h
index 2a32f2f..e4793fe 100644
--- a/include/linux/i2c.h
+++ b/include/linux/i2c.h
@@ -342,9 +342,10 @@ static inline void i2c_set_adapdata (struct i2c_adapter 
*dev, void *data)
 }
 
 /*flags for the client struct: */
-#define I2C_CLIENT_PEC  0x04                   /* Use Packet Error Checking */
-#define I2C_CLIENT_TEN 0x10                    /* we have a ten bit chip 
address       */
-                                               /* Must equal I2C_M_TEN below */
+#define I2C_CLIENT_PEC 0x04            /* Use Packet Error Checking */
+#define I2C_CLIENT_TEN 0x10            /* we have a ten bit chip address */
+                                       /* Must equal I2C_M_TEN below */
+#define I2C_CLIENT_WAKE        0x80            /* for board_info; true iff can 
wake */
 
 /* i2c adapter classes (bitmask) */
 #define I2C_CLASS_HWMON                (1<<0)  /* lm_sensors, ... */
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to