@@ -138,8 +138,10 @@ static int zl6100_write_byte(struct i2c_client *client, int page, u8 value)
138
138
}
139
139
140
140
static const struct i2c_device_id zl6100_id [] = {
141
+ {"bmr450" , zl2005 },
141
142
{"bmr451" , zl2005 },
142
143
{"bmr462" , zl2008 },
144
+ {"bmr463" , zl2008 },
143
145
{"bmr464" , zl2008 },
144
146
{"zl2004" , zl2004 },
145
147
{"zl2005" , zl2005 },
@@ -197,26 +199,23 @@ static int zl6100_probe(struct i2c_client *client,
197
199
data -> id = mid -> driver_data ;
198
200
199
201
/*
200
- * ZL2008, ZL2105, and ZL6100 are known to require a wait time
201
- * between I2C accesses. ZL2004, ZL2005, and ZL6105 are known to be
202
- * safe. Other chips have not yet been tested.
202
+ * ZL2005, ZL2008, ZL2105, and ZL6100 are known to require a wait time
203
+ * between I2C accesses. ZL2004 and ZL6105 are known to be safe.
204
+ * Other chips have not yet been tested.
203
205
*
204
206
* Only clear the wait time for chips known to be safe. The wait time
205
207
* can be cleared later for additional chips if tests show that it
206
208
* is not needed (in other words, better be safe than sorry).
207
209
*/
208
- if (data -> id == zl2004 || data -> id == zl2005 || data -> id == zl6105 )
210
+ if (data -> id == zl2004 || data -> id == zl6105 )
209
211
delay = 0 ;
210
212
211
213
/*
212
214
* Since there was a direct I2C device access above, wait before
213
215
* accessing the chip again.
214
- * Set the timestamp, wait, then set it again. This should provide
215
- * enough buffer time to be safe.
216
216
*/
217
217
data -> access = ktime_get ();
218
218
zl6100_wait (data );
219
- data -> access = ktime_get ();
220
219
221
220
info = & data -> info ;
222
221
@@ -234,7 +233,6 @@ static int zl6100_probe(struct i2c_client *client,
234
233
235
234
data -> access = ktime_get ();
236
235
zl6100_wait (data );
237
- data -> access = ktime_get ();
238
236
239
237
info -> read_word_data = zl6100_read_word_data ;
240
238
info -> read_byte_data = zl6100_read_byte_data ;
0 commit comments