Hi Nico,

> IMHO the steps are:
> - compiler option for the CPU type. IIRC the differences between the
> current devices (in respect to the instruction set) are the HW multiplier
> and memory space.

One thing this does it force a re-compile the msp430-gcc whenever TI bring out 
a new device with different memory etc. What about specifing the processor 
group? eg from the t-msp430 file

dir  | build option |  core  |  hwmul
# -------+--------------+--------+--------
#  msp1  |   430x110    |  430*  |    - 
#  msp2  |   430x147    |  430*  |  16x16
#  msp3  |   430x2232   |   430  |    -
#  msp4  |   430x233    |   430  |  16x16
#  msp5  |   430x2416   |  430X  |    -
#  msp6  |   430x2616   |  430X  |  16x16
#  msp7  |   430x4783   |   430  |  32x32
#  msp8  |   430x47166  |  430X**|  32x32

The section starts can also be specified to the compiler, to be passed to the 
linker with the -mtext=, -mdata= compiler options.

> - Remove the startup code from the C library and create a dedicated
> startup.S for every device to keep things simple for starters. I guess this
> could be automated.

I don't see where to do this within the existing tool chain, Maybe only 
msp430-libc?

Also I don't see the need, all devices are initialized the same (if you have 
re-locatable code), 

> - Have the user specify the proper ld file to the linker.

The watchdog is enabled by PUC to timeout in SMCLK/32768, so could interrupt 
the BSS clear or DATA section copy, this should be made clear by the doco. 

Where in the current code is the WDT disabled?

Can we force all the device specific configuration into the msp430-libc, which 
is quite simple to re-compile?



      Enjoy a safer web experience. Upgrade to the new Internet Explorer 8 
optimised for Yahoo!7. Get it now.

Reply via email to