tags:

views:

201

answers:

1

Hi all, im know little about MCU and embedded systems. a year ago we made contract with a company to designe special porpuse mp4 device based on sigmatel STMP 3650 kit, now we have all the source code for the firmware (code, resource around 1G).

my questions is: can we use this code to run on other stmp 3xxx famliy based devices ( with accaptable modification of course ) ? what about other ARM9 based devices ?

thanks in advace.

+3  A: 

ARM9 defines the processor core (but even then there are variants; yours being ARM962EJ-S), but most on-chip peripherals and support hardware including clocks, PLLs, and interrupt controller are vendor specific, you you would have to port your hardware initialisation and device driver code, and make sure that you choose a device with a comparable peripherals set to the ones your current code uses.

Moreover if the code is written in C or C++ rather than assembler, much of it may be prtable to other architectures, particularly if the application layer and hardware abstraction layer are well defined.

Another issue may be whether your existing implementation relies on any particular OS or RTOS; you may need to select a device that supports the same OS in order to reduce the porting effort.

Finally, a non-programming point, but just to keep you out of trouble; you need to be sure that you own the rights to the code you intend to reuse, and that the original client has no claim on it.

Clifford
hi Clifford, thanks for your answer, now i understand things . most of our code is written in C++. now im dicsuccing with an IC solution company to see possibilty of porting this code base to another ARM9 based board . yes,we own the rights to use the code, that is what'v paid for :)
avar