forked from Minki/linux
spi-topcliff-pch: add recovery processing in case wait-event timeout
Currently, pch_spi_start_transfer failure is not anticipated. This patch adds the processing. Signed-off-by: Tomoya MORINAGA <tomoya.rohm@gmail.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
This commit is contained in:
parent
f258b44e22
commit
0f57e168aa
@ -1266,8 +1266,16 @@ static void pch_spi_process_messages(struct work_struct *pwork)
|
|||||||
char *save_rx_buf = data->cur_trans->rx_buf;
|
char *save_rx_buf = data->cur_trans->rx_buf;
|
||||||
for (i = 0; i < cnt; i ++) {
|
for (i = 0; i < cnt; i ++) {
|
||||||
pch_spi_handle_dma(data, &bpw);
|
pch_spi_handle_dma(data, &bpw);
|
||||||
if (!pch_spi_start_transfer(data))
|
if (!pch_spi_start_transfer(data)) {
|
||||||
|
data->transfer_complete = true;
|
||||||
|
data->current_msg->status = -EIO;
|
||||||
|
data->current_msg->complete
|
||||||
|
(data->current_msg->context);
|
||||||
|
data->bcurrent_msg_processing = false;
|
||||||
|
data->current_msg = NULL;
|
||||||
|
data->cur_trans = NULL;
|
||||||
goto out;
|
goto out;
|
||||||
|
}
|
||||||
pch_spi_copy_rx_data_for_dma(data, bpw);
|
pch_spi_copy_rx_data_for_dma(data, bpw);
|
||||||
}
|
}
|
||||||
data->cur_trans->rx_buf = save_rx_buf;
|
data->cur_trans->rx_buf = save_rx_buf;
|
||||||
|
Loading…
Reference in New Issue
Block a user