Hello everyone,
First of all, thank you for taking a second to look at this problem. I have a huge feeling that I am just missing something simple. Any help in pointing me in the right direction would be greatly appreciated.
I am building some Starterware code for the starter-kit. I believe the processor on board is an AM3359 processor. I have imported the following library projects : drivers, platform, system, and utils. I have built these libraries with TI v5.1.9 compiler. I have also imported gpioLEDBlink project. I have made a few modifications in this project to initialize the MMU and CACHE among a few other things. This project, that creates an binary to be loaded, has also been compiled with TI v5.1.9 . All projects use the AM3358.cmd to build their library/binary as appropriate. I have no errors or warnings.
I want to also add that I had this code working. I recently have been making the change over to the BBB board. Somewhere along the line, i believe I changed a setting.
The problem that I am seeing is that when my code steps into MMUInit, and soon afterwards CP15TlbInvalidate(), the code jumps into an assembly file. I've followed the assembly instruction and see that it ultimately loops at pc: 0x20080 : EAFFFFFE B PC,0X20080. As you can see, the flow of the code get's to the point that it branches to itself and stays there for eternity. I'm thinking that the coprocessor, aka the System Control Coprocessor (what ever that is), tried to write to invalid location and put itself there.
As I have mentioned, I have had this code working and I believe it could be a simple compilation issue. I forgot to mention that I am compiling the .out binary with the rtsv7A8_A_le_eabi.lib runtime support library.
Any guidance would be greatly appreciated. Thank you in advance.