public inbox for ecos-bugs@sourceware.org
help / color / mirror / Atom feed
From: bugzilla-daemon@bugs.ecos.sourceware.org
To: ecos-bugs@ecos.sourceware.org
Subject: [Bug 1001572] Separate FIQ and IRQ management
Date: Tue, 24 Apr 2012 09:53:00 -0000	[thread overview]
Message-ID: <20120424095341.792832F78008@mail.ecoscentric.com> (raw)
In-Reply-To: <bug-1001572-13@http.bugs.ecos.sourceware.org/>

Please do not reply to this email. Use the web interface provided at:
http://bugs.ecos.sourceware.org/show_bug.cgi?id=1001572

--- Comment #3 from Nick Garnett <nickg@ecoscentric.com> 2012-04-24 10:53:38 BST ---
(In reply to comment #2)
> I notice that FUNC_START_ARM does not put the new functions in a different
> section, so they won't be GC'd, so will be in all programs, whether used or
> not. It looks like I was going to do something about this in the eCosCentric
> sources, but then it seems I commented it out (changeset 371380826e8c). Hmm,
> can't remember why now.

That is true of a number of asm utility routines. Something for a different
checkin to deal with.



> Thanks for incorporating the fix from bug 1001160.

Frankly, I had forgotten that was the source of that particular change.


> But that bug also mentions a third possibility, that it might be useful for
> some users to do their own FIQ handling (and not use the FIQ->IRQ kludge), but
> for FIQs to still be disabled when handling IRQs. This can have benefits for
> some people. In particular, you would no longer need a separate FIQ interrupt
> stack, but could share one with IRQ again, which could be an important memory
> saver.
> 
> I think all it would need is one more CDL option controlling the CPSR_INTR_MASK
> define, which CYGOPT_HAL_ARM_FIQ_DISABLE can use 'requires' on to set. And also
> then that lets us avoid defining __fiq_stack in that case. Thoughts?

I'm not convinced. It seems to be a rather nasty subversion of the way in which
the architecture is intended to work. I suspect that the IRQ entry code would
need to be rejigged a little to ensure there are no races.

For now I think we want to check this in as it stands. If there is any demand
for what you suggest above then it can be added at a later date.

-- 
Configure bugmail: http://bugs.ecos.sourceware.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


  parent reply	other threads:[~2012-04-24  9:53 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-23 16:22 [Bug 1001572] New: " bugzilla-daemon
2012-04-23 16:30 ` [Bug 1001572] " bugzilla-daemon
2012-04-23 19:39 ` bugzilla-daemon
2012-04-24  9:53 ` bugzilla-daemon [this message]
2012-05-11 10:36 ` bugzilla-daemon
  -- strict thread matches above, loose matches on Subject: below --
2012-04-23 16:22 [Bug 1001572] New: " bugzilla-daemon
2012-04-23 16:30 ` [Bug 1001572] " bugzilla-daemon
2012-04-23 19:38 ` bugzilla-daemon
2012-04-24  9:54 ` bugzilla-daemon
2012-05-11 10:36 ` bugzilla-daemon

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=20120424095341.792832F78008@mail.ecoscentric.com \
    --to=bugzilla-daemon@bugs.ecos.sourceware.org \
    --cc=ecos-bugs@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).