From: Reimar Döffinger Date: Tue, 12 Oct 2021 06:27:49 +0000 (+0200) Subject: pata_radisys: fix checking of DMA state X-Git-Tag: v6.1-rc5~2766^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1af5f7af2484004e71d384d8b88c221fc62cd6b5;p=platform%2Fkernel%2Flinux-starfive.git pata_radisys: fix checking of DMA state Checking if DMA is enabled should be done via the ata_dma_enabled helper function, since the init state 0xff indicates disabled. Change based on code review, not tested due to lack of hardware. Signed-off-by: Reimar Döffinger Signed-off-by: Damien Le Moal --- diff --git a/drivers/ata/pata_radisys.c b/drivers/ata/pata_radisys.c index 8fde4a8..3aca8fe 100644 --- a/drivers/ata/pata_radisys.c +++ b/drivers/ata/pata_radisys.c @@ -172,8 +172,8 @@ static unsigned int radisys_qc_issue(struct ata_queued_cmd *qc) if (adev != ap->private_data) { /* UDMA timing is not shared */ - if (adev->dma_mode < XFER_UDMA_0) { - if (adev->dma_mode) + if (adev->dma_mode < XFER_UDMA_0 || !ata_dma_enabled(adev)) { + if (ata_dma_enabled(adev)) radisys_set_dmamode(ap, adev); else if (adev->pio_mode) radisys_set_piomode(ap, adev);