Tool/software: TI-RTOS
I'm using idkAm5728 board and ti-rtos.
I'd like to know what I should do to declare memory block on specific address.
This memory block will be used as shared data memory.
The main application and host by pci-e will access this memory block.
https://e2e.ti.com/support/processors/f/791/t/737102
I've got answer how to declare memory block in SBL.
But, I need more information how to declare memory block in TI RTOS project.
So, This is what I need and what I know.
============ Information and what I know =============
#1. My application is based in TI-RTOS ccs project.
#2. I use idkAM5728 board.
#3. I see I have linker.cmd in project/debug/configPkg/linker.cmd
#4. I see I have app.cfg in project and there is 'Memory section configuration' in app.cfg
i.e Program.sectMap["BOARD_IO_DELAY_DATA"] = "OCMC_RAM1";
i.e MMU configure
=========== Questions and what I need ===============
Q1. Should I declare the memory block in linker.cmd only? or both linker.cmd and app.cfg?
Q2. I'd like to declare memory block on 0x0x88000000 with 0x1000000 length. So, What should I add or edit in linker.cmd or app.cfg?
Q3. The windows pc will access this memory by pci-e(edma). So, I think I should disable cache for this memory block. Then, what should I do to disable it? or is there better way?
Q4. It looks like I have to do/config something with MMU in app.cfg for specific memory block. What should I do about MMU for this memory block?
Because I saw app.cfg in some example has this line :: Mmu.setSecondLevelDescMeta(0xXXX, 0xXXX, attrs);
Q5. I think 'spin lock' function can protect the memory when my app and host try to access at same time. Is it right? and how to enable this function for my memory block?
I'm a very newbie about am5728 and TI-RTOS....please help me guys...
And sorry for my terrible english...Thanks