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:
Родитель
f258b44e22
Коммит
0f57e168aa
|
@ -1266,8 +1266,16 @@ static void pch_spi_process_messages(struct work_struct *pwork)
|
|||
char *save_rx_buf = data->cur_trans->rx_buf;
|
||||
for (i = 0; i < cnt; i ++) {
|
||||
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;
|
||||
}
|
||||
pch_spi_copy_rx_data_for_dma(data, bpw);
|
||||
}
|
||||
data->cur_trans->rx_buf = save_rx_buf;
|
||||
|
|
Загрузка…
Ссылка в новой задаче