How and Where do I change Endianness in Cortex-A9?


I have Cortex A9 dual core CPU on my board. And some of my legacy code is based on Big Endian (during PowerPC era).

I want to change the mode to "Big Endian" at my OS layer level and run all my legacy code. When I checked the manual,

ARMv7-A manual, it looks the instruction SETEND <endian specifier> sets the corresponding Endian mode of the processor.

But, I am not sure WHERE to set this. Should I set at my boot loader code ? Does changing the Endian mode of the processor triggers

a reset of the processor?

I have the following set-up in my system.

Power-on-Reset---> Execution of Boot ROM code --> Execution of boot loader ---> OS Kernel --> Drivers and Applications

There are some preliminary level initialization routines flashed into Boot ROM which is completely a hidden black box from user point of view.

How can I change the Endianness to Big Endian and run my legacy code?

Any hints or insights will be much helpful


More questions in this forum