commit: http://blackfin.uclinux.org/git/?p=linux-kernel;a=commitdiff;h=48389a69773f1a9edfdf7f1698c28a9432b3869b branch: http://blackfin.uclinux.org/git/?p=linux-kernel;a=shortlog;h=refs/heads/trunk
According to the definition of flag cs_change in spi.h, CS should keep active in last transfer of a message till the first transfer of next message if flag cs_change is set. This patch fix this bug in blackfin spi controller driver. Signed-off-by: Sonic Zhang <[email protected]> --- drivers/spi/spi_bfin5xx.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/spi/spi_bfin5xx.c b/drivers/spi/spi_bfin5xx.c index c4daddf..10cd485 100644 --- a/drivers/spi/spi_bfin5xx.c +++ b/drivers/spi/spi_bfin5xx.c @@ -870,7 +870,7 @@ static void bfin_spi_pump_transfers(unsigned long data) message->actual_length += drv_data->len_in_bytes; /* Move to next transfer of this msg */ message->state = bfin_spi_next_transfer(drv_data); - if (drv_data->cs_change) + if (drv_data->cs_change && message->state != DONE_STATE) bfin_spi_cs_deactive(drv_data, chip); }
_______________________________________________ Linux-kernel-commits mailing list [email protected] https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits
