Arm Community
Site
Search
User
Site
Search
User
Support forums
Arm Development Studio forum
ARM1176 boot code issue
Jump...
Cancel
Locked
Locked
Replies
3 replies
Subscribers
118 subscribers
Views
3221 views
Users
0 members are here
Options
Share
More actions
Cancel
Related
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion
ARM1176 boot code issue
sathishpkumar sathishpkumar
over 12 years ago
Note: This was originally posted on 5th June 2009 at
http://forums.arm.com
Hi
I got an issue while writing the ARM1176 bootcode.
I used DCI 0xE1600071 instruction to switch from secure priviliged mode to monitor mode.
After ARM executed this instruction , tarmac.log file is not updated i.e., ARM is not switching to monitor mode but r14_mon and spsr_mon is updated
please let me know what could be the issue
Thanks,
Sathish
Parents
Peter Harris
over 12 years ago
Note: This was originally posted on 9th June 2009 at
http://forums.arm.com
> one more question.. why we need to program the stack of the monitor mode before executing SMI??
Just like most of the other exception modes in ARM, monitor has a local stack pointer stored in r13_mon. If you monitor code does anything with r13 then you need to make sure that it is initialized to a sensible location before using it. You could structure the SMI handler to initialize it to something sensible - so this will depend on how you have structured your monitor-mode code.
When you say "in my case ARM is not executing any instruction after this" what behavior are you seeing in the core - it shouldn't just "not work", I would expect to be seeing an exception of some kind occurring.
Cancel
Vote up
0
Vote down
Cancel
Reply
Peter Harris
over 12 years ago
Note: This was originally posted on 9th June 2009 at
http://forums.arm.com
> one more question.. why we need to program the stack of the monitor mode before executing SMI??
Just like most of the other exception modes in ARM, monitor has a local stack pointer stored in r13_mon. If you monitor code does anything with r13 then you need to make sure that it is initialized to a sensible location before using it. You could structure the SMI handler to initialize it to something sensible - so this will depend on how you have structured your monitor-mode code.
When you say "in my case ARM is not executing any instruction after this" what behavior are you seeing in the core - it shouldn't just "not work", I would expect to be seeing an exception of some kind occurring.
Cancel
Vote up
0
Vote down
Cancel
Children
No data