EOS M / 100D users:
Yet
another new 240 MHz preset to test:
-It works better at high temps using my Sandisk 170 MB/s and 100D, it
didn't drop to 21 MB/s after 5 minuets of recording

-SDR104 patch which required to enable high OC for some cards now works with the newest 240 MHz preset, and it's stable
I am expecting that 170 MB/s SD card which didn't work previously using the
original new 240 MHz preset to work with the
newest 240 MHz on EOS M / 100D (hopefully)
Download:
newest_sd_uhs_SDR104_patch.zip-
Side effect I noticed (at least using my card and 100D):
● It happens after SD controller/card become
too hot (I mean it) write speed performance will drop from 90 MB/s to 72 MB/s in benchmarks (Play mode), or from ~80 MB/s to ~62 MB/s for RAW video recording.
● After a camera restart SD card will restore full write speed (90 MB/s in Play mode, ~80 MB/s in RAW video recording) and you should be able to record more minuets until it drop again to 72 MB/s in Play mode or 62 MB/s while RAW video recording.
● I am not 100% sure if the drop happens because of high temps, I will need to make more tests and a test inside the fridge (at cool temps). Will do that later.
Note: use any of new 240 MHz presets at your own risk, I am not responsible for any type of damage!
For me I will be using it until bad things happen.
-
The Method:
I have used an overclocked 240 MHz preset which could be achieved by keeping 0xC0400600 = 0x3 and by reducing 0xC0400610 to 0x1 with other registers adjustments, full preset:
static uint32_t uhs_regs[] = { 0xC0400600, 0xC0400604,/*C0400608, C040060C*/0xC0400610, 0xC0400614, 0xC0400618, 0xC0400624, 0xC0400628, 0xC040061C, 0xC0400620 }; /* register addresses */
static uint32_t sdr_240MHz2[] = { 0x3, 0x3, 0x1, 0x1D000001, 0x0, 0x100, 0x100, 0x100, 0x1 }; /* Works better on 100D, also SDR104 is stable with this preset (for Write operations) */
I am using 240MHz2 preset only for write operations (WriteClock) beside keeping 192 MHz for reads.
static void WriteClock(uint32_t* regs, uint32_t* stack, uint32_t pc)
{
memcpy(uhs_vals, sdr_240MHz2, sizeof(uhs_vals));
}
Removed this part of code for EOS M / 100D too:
/* SDR104 patch casues instability for 240 MHz preset */
if (sd_overclock <= 2)
SDR104 patch will be applied for all overclocking presets.
Source code is included in zip file.
Feedback please!