mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-03 12:26:44 +07:00
libata: Add special ata_pio_need_iordy() handling for Compact Flash.
According to the Compact Flash specification r4.1, PIO modes 5 and 6 do not use iordy. Signed-off-by: David Daney <ddaney@caviumnetworks.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
parent
78a7ba47fb
commit
5c18c4d28b
@ -2001,6 +2001,10 @@ unsigned int ata_pio_need_iordy(const struct ata_device *adev)
|
|||||||
as the caller should know this */
|
as the caller should know this */
|
||||||
if (adev->link->ap->flags & ATA_FLAG_NO_IORDY)
|
if (adev->link->ap->flags & ATA_FLAG_NO_IORDY)
|
||||||
return 0;
|
return 0;
|
||||||
|
/* CF spec. r4.1 Table 22 says no iordy on PIO5 and PIO6. */
|
||||||
|
if (ata_id_is_cfa(adev->id)
|
||||||
|
&& (adev->pio_mode == XFER_PIO_5 || adev->pio_mode == XFER_PIO_6))
|
||||||
|
return 0;
|
||||||
/* PIO3 and higher it is mandatory */
|
/* PIO3 and higher it is mandatory */
|
||||||
if (adev->pio_mode > XFER_PIO_2)
|
if (adev->pio_mode > XFER_PIO_2)
|
||||||
return 1;
|
return 1;
|
||||||
|
Loading…
Reference in New Issue
Block a user