diff options
Diffstat (limited to 'drivers/rtc/rtc-isl1208.c')
| -rw-r--r-- | drivers/rtc/rtc-isl1208.c | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/drivers/rtc/rtc-isl1208.c b/drivers/rtc/rtc-isl1208.c index dd2aeee6c66a..26c81f233606 100644 --- a/drivers/rtc/rtc-isl1208.c +++ b/drivers/rtc/rtc-isl1208.c | |||
| @@ -68,9 +68,17 @@ isl1208_i2c_read_regs(struct i2c_client *client, u8 reg, u8 buf[], | |||
| 68 | { | 68 | { |
| 69 | u8 reg_addr[1] = { reg }; | 69 | u8 reg_addr[1] = { reg }; |
| 70 | struct i2c_msg msgs[2] = { | 70 | struct i2c_msg msgs[2] = { |
| 71 | {client->addr, 0, sizeof(reg_addr), reg_addr} | 71 | { |
| 72 | , | 72 | .addr = client->addr, |
| 73 | {client->addr, I2C_M_RD, len, buf} | 73 | .len = sizeof(reg_addr), |
| 74 | .buf = reg_addr | ||
| 75 | }, | ||
| 76 | { | ||
| 77 | .addr = client->addr, | ||
| 78 | .flags = I2C_M_RD, | ||
| 79 | .len = len, | ||
| 80 | .buf = buf | ||
| 81 | } | ||
| 74 | }; | 82 | }; |
| 75 | int ret; | 83 | int ret; |
| 76 | 84 | ||
| @@ -90,7 +98,11 @@ isl1208_i2c_set_regs(struct i2c_client *client, u8 reg, u8 const buf[], | |||
| 90 | { | 98 | { |
| 91 | u8 i2c_buf[ISL1208_REG_USR2 + 2]; | 99 | u8 i2c_buf[ISL1208_REG_USR2 + 2]; |
| 92 | struct i2c_msg msgs[1] = { | 100 | struct i2c_msg msgs[1] = { |
| 93 | {client->addr, 0, len + 1, i2c_buf} | 101 | { |
| 102 | .addr = client->addr, | ||
| 103 | .len = len + 1, | ||
| 104 | .buf = i2c_buf | ||
| 105 | } | ||
| 94 | }; | 106 | }; |
| 95 | int ret; | 107 | int ret; |
| 96 | 108 | ||
| @@ -697,6 +709,7 @@ isl1208_remove(struct i2c_client *client) | |||
| 697 | 709 | ||
| 698 | static const struct i2c_device_id isl1208_id[] = { | 710 | static const struct i2c_device_id isl1208_id[] = { |
| 699 | { "isl1208", 0 }, | 711 | { "isl1208", 0 }, |
| 712 | { "isl1218", 0 }, | ||
| 700 | { } | 713 | { } |
| 701 | }; | 714 | }; |
| 702 | MODULE_DEVICE_TABLE(i2c, isl1208_id); | 715 | MODULE_DEVICE_TABLE(i2c, isl1208_id); |
