1
0
Fork 0
forked from len0rd/rockbox
foxbox/firmware/target
Solomon Peachy 563da70139 ipod6g: Reworking the bespoke ATA driver
ipod6g was configured with SECTOR_SIZE of 4096, but this ATA driver
unconditionally translated these to 512B operations on the actual
storage device.

Rockbox's storage layer already has robust support for "logical sectors
larger than physical storage sectors" through use of
MAX_LOG_SECTOR_SIZE.  So switch to that mechanism, allowing the ipod6g
ATA driver to be simplified.

If we want to support drives with physical sector sizes > 512B, then
we need to port the MAX_PHYS_SECTOR_SIZE logic from the primary ATA driver.

Additional changes:

 * Simplify MWDMA/UDMA selection logic
 * Report CE-ATA mode in debug menu
 * Use LBA48 commands only if drive is over 128GiB.
 * Drop default sleep/poweroff time from 20s to 7s (matching main ATA driver)

Finally, the bulk of the changes are the first phase of a badly needed
style cleanup that made reading this driver a lot harder than it should
be. I intend to split this into a separate patch.

Change-Id: I2feca9fd319c8d6cfb3c2610208970428d2fa947
2024-10-17 20:30:37 -04:00
..
arm ipod6g: Reworking the bespoke ATA driver 2024-10-17 20:30:37 -04:00
coldfire coldfire: Silence a warning generated by GCC >= 9 2024-10-12 13:54:22 -04:00
hosted sdl: Remove SDL_RENDERER_ACCELERATED flag 2024-10-11 22:57:37 -04:00
mips erosqnative: Give erosqnative_v3 its own target ID and modelname 2024-09-08 12:29:03 -04:00