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

Boot ROM Code for ARM Cortex A9 MP Core SoC

Note: This was originally posted on 5th August 2011 at http://forums.arm.com

Hi,

I am working on ARM Cortex A9 MP Core SoC. As a part of software development, I need to understand how booting takes place in case ARM Cortex A9 considering the reset vector. I wanted to know more about the Boot ROM code which could be part of SoC. Can I get details / documentation / reference code about the Boot ROM code for ARM Cortex A9? Also I would like to know what are the steps involved in general booting sequence right from the RESET/Power ON till it loads the kernel.

Thanks & Regards,
TK
Parents
  • Note: This was originally posted on 6th August 2011 at http://forums.arm.com

    The ARM Programmer guide has some notes on booting a bare-metal system (i.e. Code to be run immediately after the core comes out of reset and without the use of an operating system)

    To re-iterate;


    When the processor has been reset, it will commence execution at the location of the reset vector
    within the exception vector table (at either address 0 or 0xFFFF0000). The reset handler code
    will need to do some, or all of the following:
    "¢ In a multi-processor system, put non-primary processors to sleep
    "¢ Initialize exception vectors
    "¢ Initialize the memory system, including the MMU
    "¢ Initialize processor mode stacks and registers
    "¢ Initialize variables required by C
    "¢ Initialize any critical I/O devices
    "¢ Perform any necessary initialization of NEON/VFP
    "¢ Enable interrupts
    "¢ Change processor mode and/or state
    "¢ Handle any set-up required for the Secure world
    "¢ Call the main() application

    - Vaibhav
Reply
  • Note: This was originally posted on 6th August 2011 at http://forums.arm.com

    The ARM Programmer guide has some notes on booting a bare-metal system (i.e. Code to be run immediately after the core comes out of reset and without the use of an operating system)

    To re-iterate;


    When the processor has been reset, it will commence execution at the location of the reset vector
    within the exception vector table (at either address 0 or 0xFFFF0000). The reset handler code
    will need to do some, or all of the following:
    "¢ In a multi-processor system, put non-primary processors to sleep
    "¢ Initialize exception vectors
    "¢ Initialize the memory system, including the MMU
    "¢ Initialize processor mode stacks and registers
    "¢ Initialize variables required by C
    "¢ Initialize any critical I/O devices
    "¢ Perform any necessary initialization of NEON/VFP
    "¢ Enable interrupts
    "¢ Change processor mode and/or state
    "¢ Handle any set-up required for the Secure world
    "¢ Call the main() application

    - Vaibhav
Children
No data