My T_4.1's are in the mailbox ... got them and distracted ... have some chores first
@mjs513 - Paul p#470 made a note about 'more than 8MB' ::
2: To use more than 8 megabytes, you'll need to write FLEXSPI2_FLSHA2CR0 with a larger number.
> (afaik) That allowed the two PSRAM usage to be contiguous 16 MB.
RE: the PSRAM log error p#498 and data found corruption:
No joy from cache flush that should be right?
arm_dcache_flush_delete((void *)&dbuff0[saveidx], sizeof(datrec)); // write cache to memory
and
arm_dcache_flush_delete((void *)&dbuff1[saveidx], sizeof(datrec)); // write cache to memory
Summary - two PSRAM buffers in use. They are written from intervalTimer( _isr )
The one buffer "0" starting at 70050000 is found holding data intended for buffer "1" at 70090010
BUFF at 70050000
skipped 0 4595, 91901, 70090010, 1 kk==16385 ????
**: if that buffer boundary is not hit, or the _isr() speed is dropped - the data does not trigger as corrupted.
**: the buffer size was made { while still hitting that 'boundary problem' } so one would fit in RAM1 and the other in RAM2 - and that works.
@KurtE: Can you aim a display DMA buffer at
Each buffer is size of 294080 bytes ( 0x47cc0 ).
First (with trouble) starts at :: struct datrec *dbuff0 = (datrec *)0x70050000;
I just moved the 2nd to just above that :: struct datrec *dbuff1 = (datrec *)0x7005A000;
This puts 2nd buff just above 1st buff. The problem recurs in First buffer now at new address where 2nd buff data appears:
After dbuff1[] write with no errors, This shows first buffer dbuff0[] got filled. Then it was marked for write and at offset 2560 the initial writes to 2nd buffer dbuff1[]
Code:
>>>1>>> 1 FULL D @ 18380 &dbuff>700A1CC0
BUFF at 7005A000
DONE 18379 >> 1838, 36759, 700A1CB0, 1 <<<<<<
1] 918.84 mSec fill [lp#3979718] Written dbuff1 to data file. tmilli = 919 took 10.60 mSec
>>>0>>> 0 FULL D @ 18380 &dbuff>[B]70097CC0[/B]
BUFF at 70050000
skipped 6 2757, 55140, [B]7005A000[/B], 1 kk==[B]2560[/B] ????
skipped 0 2757, 55141, 7005A010, 1 kk==2561 ????
skipped 2 1968, 39353, 7005A210, 0 kk==2593 ????
DONE 18379 >> 2757, 55139, 70097CB0, 0 <<<<<<
0] 919.13 mSec fill [lp#5] Written dbuff0 to data file. tmilli = 1838 took 10.73 mSec