I'm starting to use DMA, and I'm porting an application from Kinetis MK66 to NXP RT1020, and from STM32 to RT1020.
As I still did not know how the DMA works, to copy memory data to GPIO ports, I routed a couple of boards without taking into account the order of the ports.
To read data by DMA using SPI, I see no problems. The problem, I think it comes when I'm going to use DMA memory to peripherals (seven GPIO ports).
From what I read, it seemed to me that I understand that the addresses of the ports to which I am going to copy from memory using the DMA, should have consecutive addresses, could not use ports that do not have consecutive addresses.
Is this so, or can it be fixed by software, if I have not routed the ports with consecutives addresses ?
On one of the boards, I can fix it easily, soldering some cables, to the ports that I do not use, and for the other ports I would make a small board that reorders them, to connect them all to an IDC connector of 2x16, to which they connect to LED panels HUB75 of my application.
With the other board, I have it more complicated, because it is the evaluation board of the RT1020, and on this board there are very few accessible ports. Only the ports just for my application, but of all these, once discarded those using the SPI that I need also, I would not have any group of 7 consecutive ports. I would only have 5 consecutive ports, and the other 2 I would have to wire them, desoldering a pair of very small resistors (0402 or 0201), to weld there 2 wires.
Is any software solution possible, to be able to use 7 non-contiguous ports in their addresses, to use DMA memory to peripheral?
Greetings.