Bartlomiej Zolnierkiewicz wrote:
[PATCH] icside: fix ->speedproc to return on unsupported modes (take 3)
* All other implementations of ->speedproc return zero on success and non-zero on failure. Currently it doesn't matter for icside host driver and isn't a bug per se since:
- ide_set_xfer_rate() return value is ignored by all IDE core users
- icside doesn't (yet!) use ide_tune_dma() in icside_dma_check()
but sooner or later we will need to fix anyway - so lets do it now.
* icside_set_speed() happily accepts unsupported transfer modes which results in drive->drive_data being set to the maximum value (480) and drive->current_speed being set to the unsupported transfer mode.
Fix it.
v2: * The initial version of the patch was broken because it didn't take into the account (the different from usual) return values of icside_set_speed() (Noticed by Russell).
v3: * Remove no longer needed initialization/checking of cycle_time (Noticed by Sergei).
* No need to set drive->drive_data if DMA is not going to be used (Noticed by Sergei).
* Remove incorrect setting of drive->current_speed (Noticed by Sergei).
* Move ide_config_drive_speed() at the end of icside_set_speed().
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
Acked-by: Sergei Shtylyov <sshtylyov@xxxxxxxxxxxxx> MBR, Sergei - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html