All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@domain.hid>
To: Dmitry Adamushko <dmitry.adamushko@domain.hid>
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-core] [PATCH] Shared irqs v.6
Date: Tue, 31 Jan 2006 21:14:03 +0100	[thread overview]
Message-ID: <43DFC50B.1090707@domain.hid> (raw)
In-Reply-To: <b647ffbd0601311150t6092a758w@domain.hid>

Dmitry Adamushko wrote:
> On 31/01/06, Jan Kiszka <jan.kiszka@domain.hid> wrote:
>> Dmitry Adamushko wrote:
>>> Hi,
>>>
>>> the previous version contained an ugly bug, namely the misuse of the
>>> test_and_set/clear_bit interface
>>> that led to a broken system from time to time.
>>>
>> What about the ISA/edge-triggered stuff? :D
>>
>> My problem is that we cannot test here on real hardware because all our
>> shared IRQs reside on PC104 cards.
> 
> 
> Could you provide me with some real piece of such code as an example?

May I remind you of the link to the linux kernel's 8250 driver I gave?
Or what do you mean with real code? xeno_16550A would become such a user
ideally only by adding one or two IRQ-registration flags.

> 
> Anyway, design-wise, it's about introducing a separate xnintr_handler() for
> such a special case to avoid getting a mixture with the rest of "sane" code.

Yep, I would vote for this approach as well.

> I mean that the support of shared interrupts for ISA boards (edge-triggered
> stuff) is a kind of emulation to overcome the shortcommings of the initial
> design on the hardware level. The hardware was just not supposed to support
> shared interrupt channels. So, let's keep it a bit aside from another code
> :o)

Unfortunately, this crappy hardware is still quite common in the
embedded domain.

> 
> xnintr_attach() will check for a special flag like XN_ISR_ISASHARED and
> attach e.g. xnintr_isairq_handler() instead of xnintr_irq_handler().
> 
> I'll post an extension to the rt_intr_create(..., const char *name, ...)
> tomorrow - made but not tested yet -
> 
> as well as the /proc support.
> 

This should be easy... Great!

Jan


  reply	other threads:[~2006-01-31 20:14 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-31 18:53 [Xenomai-core] [PATCH] Shared irqs v.6 Dmitry Adamushko
2006-01-31 19:09 ` Jan Kiszka
2006-01-31 19:50   ` Dmitry Adamushko
2006-01-31 20:14     ` Jan Kiszka [this message]
2006-02-01  8:32       ` Jeroen Van den Keybus
2006-02-01  8:46         ` Jan Kiszka
2006-01-31 19:40 ` Jan Kiszka
2006-02-01 13:59 ` [Xenomai-core] Are XN_ISR_CHAINED and XN_ISR_ENABLE mutually exclusive? Anders Blomdell
2006-02-01 14:52   ` Jan Kiszka
2006-02-01 15:00     ` Anders Blomdell
2006-02-01 15:26       ` Anders Blomdell
2006-02-06 11:34   ` [Xenomai-core] [BUG] problems with adeos-ipipe-2.6.14-ppc-1.2-00.patch Anders Blomdell
2006-02-06 18:44     ` Philippe Gerum
2006-02-07 16:04     ` [Xenomai-core] [PATCH] Slow is faster arch/ppc/syslib/open_pic.c Anders Blomdell
2006-02-07 16:16       ` Philippe Gerum
2006-02-08  9:40         ` Philippe Gerum
2006-02-08 17:57           ` Philippe Gerum

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=43DFC50B.1090707@domain.hid \
    --to=jan.kiszka@domain.hid \
    --cc=dmitry.adamushko@domain.hid \
    --cc=xenomai@xenomai.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.