Hi,When I can program flash successfully, I test the UBOOT.bin coming from the CD, the uart1 can not print the message. So i debug the uboot code with CodeWarrior ,I can run the code with single step ,and find two places may have some problems. One is involved with instruction "isync" or "sync", for example.
0xfe003374: 4c00012c isync
0xfe003378: 3c600000 lis r3 ,0
0xfe00338c: 3ca00002 lis r5, 0
the sentence "lis r3,0" is escaped ,the debugger run to the next one. I find all the sentence behind "isync" can not run. Does it right?
the other possible wrong is when the debugger run to function "lock_ram_in_cache",the program counter is out of control.
thanks for any suggestion.
Solved! Go to Solution.
The message usually shows trying to access memory while there is no response, maybe that address is invalid. You could check the TLB, LAW setting for this error happened area.
The isync itself should not cause an issue, as per my understanding. What is happening in previous instruction, before this isync?
Also, in your previous topic, you mentioned about some problems in your DDR hardware which you fixed already. What exactly was done to fix this? If there are any changes in DDR settings, than I do not think UBOOT.bin, coming on CD, will work on your hardware without any modifications, you have to rebuild it to accomodate new DDR settings.
hello.
thanks for your suggestion. The DDR ram is same with the MPC8306 SOM, the last problem i fixed is only the weak solder. Now I am sure that the code run normally before calling the function "lock_ram_in_cache" by lighting led method. The single step debug also run out at this function sentence "mfspr r0,HID0",and CCS log show the message "cannot start SAP transaction". I don't know what it exactly mean.
The message usually shows trying to access memory while there is no response, maybe that address is invalid. You could check the TLB, LAW setting for this error happened area.