Alan Cox wrote:
I believe this version meets all Sergei's objections
Correct the logic for when we issue a set features for transfer mode
- If the device has IORDY and the controller has IORDY - set the mode
- If the device has IORDY and the controller does not - turn IORDY off
- If neither
I believe this version meets all Sergei's objections
Correct the logic for when we issue a set features for transfer mode
- If the device has IORDY and the controller has IORDY - set the mode
- If the device has IORDY and the controller does not - turn IORDY off
- If neither has IORDY do nothing
Alan wrote:
For further review
Turn on the IORDY handling logic.
If a controller doesnt support IORDY don't try and use it
If a device doesn't support IORDY don't try and use it
Otherwise use it whenever possible.
Always use IORDY for PIO3 and higher (it's mandatory)
Send the correct
For further review
Turn on the IORDY handling logic.
If a controller doesnt support IORDY don't try and use it
If a device doesn't support IORDY don't try and use it
Otherwise use it whenever possible.
Always use IORDY for PIO3 and higher (it's mandatory)
Send the correct set_features command
Alan wrote:
For further review
Turn on the IORDY handling logic.
If a controller doesnt support IORDY don't try and use it
If a device doesn't support IORDY don't try and use it
Looks like we shouldn't change it default PIO mode at all in this case.
See below why...
Otherwise
Hello, I wrote:
@@ -3466,8 +3529,18 @@
tf.command = ATA_CMD_SET_FEATURES;
tf.feature = SETFEATURES_XFER;
tf.flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE;
+
+/* Older CFA may not support this command */
+if (ata_id_is_cfa(dev-id))
+tf.flags |= ATA_TFLAG_QUIET;