-
Martin Dalecki authored
Synchronize with 2.5.25. Incorporate IDE-94, as well as 95, 96, 97 and 98-pre as announced by Bartek and unfortunately still not included in 2.5.25, which makes admittedly things still fall appart: Missing changelog for 98-pre by Bartlomiej Zolnierkiewicz (BTW. Handling Unicode should be essential at least to make proper crediting of many many peoples possible!) follows here: - add missing channel->lock unlocking/locking and fix some comments in ide_timer_expiry() - allow PCI drivers to disable autodma in ->init_dma() (bug introduced in IDE 97, affects sl82c105.c only) noticed by Russell King - alim15x3.c, if revision is <= 0x20 disable autodma - remove unneeded checks (drive.dn > 3) from pdc202xx.c and sis5513.c - use block layer wrappers And my additions follow: - Fix TCQ code. Patch based on work by Alexander Atanasov. - Use the FreeBSD derived request handler return values: ATA_OP_FINISHED ATA_OP_CONTINUES ATA_OP_RELEASED ATA_OP_READY /* for status ready reporting during poll */ - PMAC compilation fix by Paul Mackerras. - Simplify the ata_status_poll function significantly. - Fix logic used to prevent drive IRQ assertion from drive on channels sharing our interrupt. NOTE: We will move it later to the time where a request is really finished soon. - Don't use ata_busy_poll() use ata_status_poll() instead. This increases code unification. NOTE: We should maybe invent some way to prevent the error recovery path to be taken at all. In esp to prevent ata_error from trying to reissue commands.
2dbd1502