diff options
-rw-r--r-- | drivers/i2c/busses/i2c-eg20t.c | 26 |
1 files changed, 4 insertions, 22 deletions
diff --git a/drivers/i2c/busses/i2c-eg20t.c b/drivers/i2c/busses/i2c-eg20t.c index 0f3752967c4b..ff15ae90aaf5 100644 --- a/drivers/i2c/busses/i2c-eg20t.c +++ b/drivers/i2c/busses/i2c-eg20t.c | |||
@@ -312,24 +312,6 @@ static void pch_i2c_start(struct i2c_algo_pch_data *adap) | |||
312 | } | 312 | } |
313 | 313 | ||
314 | /** | 314 | /** |
315 | * pch_i2c_getack() - to confirm ACK/NACK | ||
316 | * @adap: Pointer to struct i2c_algo_pch_data. | ||
317 | */ | ||
318 | static s32 pch_i2c_getack(struct i2c_algo_pch_data *adap) | ||
319 | { | ||
320 | u32 reg_val; | ||
321 | void __iomem *p = adap->pch_base_address; | ||
322 | reg_val = ioread32(p + PCH_I2CSR) & PCH_GETACK; | ||
323 | |||
324 | if (reg_val != 0) { | ||
325 | pch_err(adap, "return%d\n", -EPROTO); | ||
326 | return -EPROTO; | ||
327 | } | ||
328 | |||
329 | return 0; | ||
330 | } | ||
331 | |||
332 | /** | ||
333 | * pch_i2c_stop() - generate stop condition in normal mode. | 315 | * pch_i2c_stop() - generate stop condition in normal mode. |
334 | * @adap: Pointer to struct i2c_algo_pch_data. | 316 | * @adap: Pointer to struct i2c_algo_pch_data. |
335 | */ | 317 | */ |
@@ -344,6 +326,7 @@ static void pch_i2c_stop(struct i2c_algo_pch_data *adap) | |||
344 | static int pch_i2c_wait_for_check_xfer(struct i2c_algo_pch_data *adap) | 326 | static int pch_i2c_wait_for_check_xfer(struct i2c_algo_pch_data *adap) |
345 | { | 327 | { |
346 | long ret; | 328 | long ret; |
329 | void __iomem *p = adap->pch_base_address; | ||
347 | 330 | ||
348 | ret = wait_event_timeout(pch_event, | 331 | ret = wait_event_timeout(pch_event, |
349 | (adap->pch_event_flag != 0), msecs_to_jiffies(1000)); | 332 | (adap->pch_event_flag != 0), msecs_to_jiffies(1000)); |
@@ -366,10 +349,9 @@ static int pch_i2c_wait_for_check_xfer(struct i2c_algo_pch_data *adap) | |||
366 | 349 | ||
367 | adap->pch_event_flag = 0; | 350 | adap->pch_event_flag = 0; |
368 | 351 | ||
369 | if (pch_i2c_getack(adap)) { | 352 | if (ioread32(p + PCH_I2CSR) & PCH_GETACK) { |
370 | pch_dbg(adap, "Receive NACK for slave address" | 353 | pch_dbg(adap, "Receive NACK for slave address setting\n"); |
371 | "setting\n"); | 354 | return -ENXIO; |
372 | return -EIO; | ||
373 | } | 355 | } |
374 | 356 | ||
375 | return 0; | 357 | return 0; |