summaryrefslogtreecommitdiffstats
path: root/firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c
AgeCommit message (Collapse)AuthorFilesLines
2020-08-25jz4760: SD driver enhancements:Solomon Peachy1-41/+90
* Check to see if clock is [not] running prior to [en|dis]abling it * Stop clock _prior_ to resetting controller * Stop clock after transaction is completed, not before initiating it * Use controller's low power mode (disables clocks when idle) * Fix, and enable, interrupt-driven DMA transfers * Fixes for full interrupt-driven operation (WIP, still broken) Change-Id: I723ffa6450fc85f97898c8a8b3e538ae31c4858e
2020-08-25jz4760: Give each SD interface its own DMA channel, semaphore, and mutexSolomon Peachy1-87/+164
* Allows both SD interfaces to have requests in flight simultaneously * Fixed a deadlock in the hotswap code * Ensure TX DMA is idle before initiating a request (bug due to a typo) Change-Id: I988fa29df5f8e41fc6bbdcc517db89842003b34d
2020-08-07jz4760: Support dynamic reclocking!Solomon Peachy1-4/+12
default/low speed is 192 MHz, Max is 576 Downclock PCLK/MCLK/etc to 96MHz to save a bit of juice Honestly the high speed could be dialed down to, eg 384 as this thing is so bloody fast.. Change-Id: Ie65597c74290f1603e65f69dae8e75b59c8ba0b4
2019-07-29XduooX3: Uncomment code that prevented hotswap from working.Solomon Peachy1-2/+2
Change-Id: I5efec00e60aacf05166407ad43b9d63340e18967
2019-06-02jz7460: Disable IRQ-driven DMA transfers.Solomon Peachy1-1/+1
This greatly increases the stability of SD card write operations. (I suspect the underlying problem is not IRQ operation itself, instead being exacerbated by it..) Change-Id: Ia00f0656abd4b3cb0b1b5fc9db7c1b6a02847956
2018-09-20jz4760: Enhancements and fixes to SD driver.Solomon Peachy1-279/+239
* Fully Interrupt-driven, with proper task yielding * Much more robust error handling * Eliminate duplicate code * Pile of bugfixes (Much of this adapted from Igor Poretsky's tree) Change-Id: I46006412323cba2088b70094635d62a241be1d7e
2018-09-20jz7640: SD driver improvements:Solomon Peachy1-27/+25
* Better multidrive support * Common slot1/slot2 handling code Change-Id: Id0aed90cbba4246fdc71b42e03f016f8060d258a
2018-09-20jz74x0: MSC clock needs to be divided from PLL clock.Solomon Peachy1-1/+4
Change-Id: I0cf2f0d55e0859f896afef289e833935d7c5a599
2018-09-20jz4760: Greatly enhance debug code and silence some compilation warnings.Solomon Peachy1-2/+3
Change-Id: I1746d67c818ad099edea83e6242ffd5c79be0000
2018-07-28Add cleaned-up xDuoo X3 supportSolomon Peachy1-0/+1487
Cleaned up, rebased, and forward-ported from the xvortex fork. (original credit to vsoftster@gmail.com) Change-Id: Ibcc023a0271ea81e901450a88317708c2683236d Signed-off-by: Solomon Peachy <pizza@shaftnet.org>