Lines Matching refs:curr_recv_count
272 static inline bool cdns_is_hold_quirk(int hold_quirk, int curr_recv_count) in cdns_is_hold_quirk() argument
274 return hold_quirk && (curr_recv_count == CDNS_I2C_FIFO_DEPTH + 1); in cdns_is_hold_quirk()
282 int curr_recv_count; in cdns_i2c_read_data() local
289 curr_recv_count = recv_count; in cdns_i2c_read_data()
299 curr_recv_count = CDNS_I2C_TRANSFER_SIZE; in cdns_i2c_read_data()
300 writel(curr_recv_count, ®s->transfer_size); in cdns_i2c_read_data()
308 updatetx = recv_count > curr_recv_count; in cdns_i2c_read_data()
321 curr_recv_count--; in cdns_i2c_read_data()
323 if (cdns_is_hold_quirk(hold_quirk, curr_recv_count)) in cdns_i2c_read_data()
327 if (cdns_is_hold_quirk(hold_quirk, curr_recv_count)) { in cdns_i2c_read_data()
330 (curr_recv_count - CDNS_I2C_FIFO_DEPTH)) in cdns_i2c_read_data()
340 curr_recv_count = CDNS_I2C_TRANSFER_SIZE + in cdns_i2c_read_data()
345 curr_recv_count = recv_count; in cdns_i2c_read_data()
347 } else if (recv_count && !hold_quirk && !curr_recv_count) { in cdns_i2c_read_data()
352 curr_recv_count = CDNS_I2C_TRANSFER_SIZE; in cdns_i2c_read_data()
355 curr_recv_count = recv_count; in cdns_i2c_read_data()