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

Cortex-A9 AMP

Note: This was originally posted on 8th January 2012 at http://forums.arm.com

Hi,

I am currently examining amp for embedded devices.

Is it possible to boot two operating systems on an Cortex-A9 in amp mode?

The p2020 power processor is capable of amp and there is an  implementation in u-boot that makes it possible to boot two os in amp  mode. Is there a similar implementation for the Cortex-A9? And if  not, is it possible and what steps are necessary to implement amp with  the Cortex-A9 cpu using u-boot or a different boot loader?

 

Any information would be helpful.

Best regards

Clemens

Parents
  • Note: This was originally posted on 10th January 2012 at http://forums.arm.com

    Hi,
    I still have some questions/comments:

    I can't comment on Linux, usually at the point the OS starts my job is done.

    Do you have any hands-on experience with preparations for a multi-os boot on Cortex-A9 cpus, or do you know someone who does?

    On the MMU side, each core has its own independent MMU.  So having different mappings shouldn't be a problem.

    Do you have any idea where I can find documentation that describes how the MMUs work and where and how they are placed on a Cortex A-9 MP? Until now I can only find Information about the MMU in a single core Cortex.

    My main concern are the things both OSes must share, that is the IC and the SCU.

    In the Cortex-A9 MPCore Technical Reference Manual I found the SMPnAMP Signal which switches between SMP or AMP for each Processor. I think I read that this signal  turns off the SCU if it is set to AMP? I guess this is so, because  it would not make sense to have the SCU running in AMP mode, because with AMP no cache coherency is needed between the two processors?

    Concerning the IC, I was thinking about programming it before starting the OS and to disable the components on the board that are not needed for the specific OS and enabling them on the other OS, so that only interrupts occur to a OS that also has the corresponding hardware enabled.
    Is this approach realistic or am I misunderstanding the way an IC is used?

    I am very thankful that you take the time to answer my questions. You are a big help!

    Regards
    Clemens
Reply
  • Note: This was originally posted on 10th January 2012 at http://forums.arm.com

    Hi,
    I still have some questions/comments:

    I can't comment on Linux, usually at the point the OS starts my job is done.

    Do you have any hands-on experience with preparations for a multi-os boot on Cortex-A9 cpus, or do you know someone who does?

    On the MMU side, each core has its own independent MMU.  So having different mappings shouldn't be a problem.

    Do you have any idea where I can find documentation that describes how the MMUs work and where and how they are placed on a Cortex A-9 MP? Until now I can only find Information about the MMU in a single core Cortex.

    My main concern are the things both OSes must share, that is the IC and the SCU.

    In the Cortex-A9 MPCore Technical Reference Manual I found the SMPnAMP Signal which switches between SMP or AMP for each Processor. I think I read that this signal  turns off the SCU if it is set to AMP? I guess this is so, because  it would not make sense to have the SCU running in AMP mode, because with AMP no cache coherency is needed between the two processors?

    Concerning the IC, I was thinking about programming it before starting the OS and to disable the components on the board that are not needed for the specific OS and enabling them on the other OS, so that only interrupts occur to a OS that also has the corresponding hardware enabled.
    Is this approach realistic or am I misunderstanding the way an IC is used?

    I am very thankful that you take the time to answer my questions. You are a big help!

    Regards
    Clemens
Children
No data