From: Philipp Meier <pme.neratec@gmx.ch>
To: ecos-discuss@ecos.sourceware.org
Subject: Re: [ECOS] ecos-3.0 current stm32 bug?
Date: Thu, 25 Aug 2011 12:52:00 -0000 [thread overview]
Message-ID: <4E564562.2010209@gmx.ch> (raw)
In-Reply-To: <4E56409E.8080605@calivar.com>
On 08/25/2011 02:31 PM, Nick Garnett wrote:
> On 25/08/11 13:13, Philipp Meier wrote:
>
>> With the bootloader built under Windows/Cygwin, basepri (mon reg
>> basepri) is 0x00 when my application's hal_reset_vsr function is reached.
>> When I build the bootloader (using the same ecos-library version/code
>> and the same bootloader source code) under Linux, then basepri is 0x10
>> when my application's hal_reset_vsr function is reached.
>>
>> Why this difference between Cygwin and Linux?
> In theory BASEPRI should have been set to 0x10 by both bootloaders by
> the time the application starts running. That the Windows-built
> bootloader has not done that is unexpected. It looks like the actual bug
> is in the Windows build. The Linux build is doing what I would expect.
> So it looks like you have been fortunate not to trip over this issue
> earlier.
>
> The comparison of the executables that I mentioned earlier should help.
> It looks like only the bootloaders may need comparing.
>
>
Thank's a lot. This is exactly the case!
There has been a bug in HAL_DISABLE_INTERRUPTS (hal_intr.h) - corrected
with "changeset: 3009:9ba76199bff2" (Mercurial): Bugzilla 1001154
This bug "helped" as so that our bootloader was working until now.
I validated this by "re-implementing" the disable interrupt bug on my
Linux box (just have to change the hal_intr.h file in the ecos library)
- and with this faulty version my application starts up as with the
cygwin built bootloader.
On my Windows/Cygwin box I manually corrected this bug in the ecos
source code (at that moment I could not change to ecos-current) - but
for my bootloader I did not re-build the ecos library. And therefore my
Windows/Cygwin built bootloader still has the HAL_DISABLE_INTERRUPTS bug
which makes our code to run.
Thank you all for your good ideas - I now know where I have to change my
implementation.
Regards
Philipp
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
next prev parent reply other threads:[~2011-08-25 12:52 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-24 10:34 Philipp Meier
2011-08-24 11:35 ` Sergei Gavrikov
2011-08-24 14:11 ` Philipp Meier
2011-08-24 14:26 ` Christophe Coutand
2011-08-24 14:58 ` Philipp Meier
2011-08-24 16:44 ` Christophe Coutand
2011-08-25 8:49 ` Philipp Meier
2011-08-25 9:37 ` Christophe Coutand
2011-08-25 10:01 ` Philipp Meier
2011-08-25 10:38 ` Nick Garnett
2011-08-25 11:25 ` Philipp Meier
2011-08-25 12:12 ` Nick Garnett
2011-08-25 12:13 ` Philipp Meier
2011-08-25 12:31 ` Nick Garnett
2011-08-25 12:52 ` Philipp Meier [this message]
2011-08-25 13:46 ` Nick Garnett
2011-08-24 18:54 ` Sergei Gavrikov
2011-08-25 8:54 ` Philipp Meier
2011-08-25 9:07 ` Philipp Meier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E564562.2010209@gmx.ch \
--to=pme.neratec@gmx.ch \
--cc=ecos-discuss@ecos.sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).