Commits (5)
-
Robert Sprowson authored
Some mechanical drives don't reply until spin up after COMRESET. Give them 50% longer to complete. Solves a missing Seagate ST250DM000 drive issue at power on as init was too fast. Version 0.04. Tagged as 'SATADriver-0_04'
404dada8 -
Robert Sprowson authored
Read the sector size from ATA Identify, so that the capacity reported is right when the sector size != 512B. Increase the COMRESET recovery time a bit more to account for long spin up mechanical drives - the timeout's only used if a drive is present, so is harmless on fast (eg. SSD) drives which recover well before the timeout. Tested on Titanium with an assortment of manufacturer drives, capacities, and sector sizes. Version 0.05. Tagged as 'SATADriver-0_05'
efedfdce -
Robert Sprowson authored
For those controllers relying on the retry loop to get the top level port to detect, the change in SATADriver 0.05 made the retries take 25s. Roll back the COMRESET_RECOVERY_TIME to 50cs like it was in revision 1.1.1.1 of op.c. Then, pull out the subsequent PM rescan code into a function, and wrap it in a retry loop so the net result is the same as SATADriver 0.05 achieved. However, it is possible to escape the loop early with this arrangement, rather than just idling. Version 0.06. Tagged as 'SATADriver-0_06'
eaf81c83 -
Jeffrey Lee authored
Detail: Makefile - Add OSMEM19 option to control whether OS_Memory 0 or OS_Memory 19 is used. Defaults to OS_Memory 0, since OS_Memory 19 is currently only available on the SMP kernel branch. c/op, c/osmem0, h/dmaprep - Move OS_Memory 0 related code out into its own file, creating the dmaprep interface to abstract over whether OS_Memory 0 or OS_Memory 19 is in use c/osmem19, cmhg/SATADriverHdr - Code for performing DMA prep using OS_Memory 19 h/globals - Adjust what variables ahciop_t stores, depending on DMA prep approach being used Admin: Tested on IGEPv5 OS_Memory 19 version (for use with SMP kernel/module) can be enabled via components file, e.g. '-options OSMEM19=TRUE' Version 0.07. Tagged as 'SATADriver-0_07'
ebbdfd26 -
Robert Sprowson authored
Static analysis highlighted a do/while as a potential error https://www.riscosopen.org/forum/forums/4/topics/9503#posts-72623 in SDIODriver, and by pattern matching the same code appears in SATADriver. Clarify the original intent with some braces. Retagged as SATADriver-0_07; binary unchanged.
131a63c1
Showing
This diff is collapsed.
c/osmem0
0 → 100644
c/osmem19
0 → 100644
h/dmaprep
0 → 100644