[ECOS] eCosCentric Cortex-M port contribution
Tue Nov 4 18:30:00 GMT 2008
Nick Garnett wrote:
> The eCosCentric Cortex-M port has now been checked in to the
> The following packages have been added:
> ecos.db and NEWS have also been updated.
> See the various ChangeLogs for details.
This is good news. Already checked out and tried on my evalboard. Seems
to run, expect some small issues. I have had a look at you're approach
to context switching and interrupt handling. It's quite nicely done,
although you don't use NVIC exception handling for normal context
switches during thread execution, which is something I absolutely tried
to do (and had lots of trouble with :). Also, your port does not have a
unified SavedRegisters structure, which mine had. But it's nice that so
much is written in plain C, my port has rather more assembler code.
Another difference is your GPIO framework for the STM32. As it seems
your framework does not support "chanining" multiple pins on the same
pin for configuration, which mine offered. In contrast your framework
offers the possibility to store the configuration directly in the pin
definition, which is a nice thing I guess. I might add support for
chaining multiple pins, if there is nothing against it?
My port also featured some more "helper macros". This included things
like enable/disable/reset peripheral clocks, setup FSMC controllers etc.
which obviously improve code readability. Is there interest to get such
macros in the main repo?
Also I had done some more register definitions which I can add. I also
have a working wallclock driver for the STM32, which I will port to your
port :) Will it be included or do you already have such a driver in the
Many thanks for the contribution!
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
More information about the Ecos-discuss