On 11/27/05, Pete Leigh <pete.leigh at gmail.com> wrote:
> On 27/11/05, Mark Knecht <markknecht at gmail.com> wrote:
> > On 11/27/05, Pete Leigh <pete.leigh at gmail.com> wrote:
>> > > Didn't Clemens Ladisch write a (now outdated) patch to re-assign
> > > APIC priorities in software, and a program to change PIC interrupt
> > > priorities?
>> > For APIC - yes
> > For PIC - no
>> Oh, perhaps I misread at
>>http://users.informaik.uni-halle.de/~ladischc/pic_priorities.html>> where he says:
>> (quote on)
>> To configure the PIC, use the following little program:
> set8259priorities.c (source code only).
>> [...]
>> The above example configuration with interrupt 5 at the
> top can be set with "set8259priorities 5 8". For interrupt 11
> at the top, run "set8259priorities 2 11".
>> (quote off)
>> Or perhaps I didn't understand what he was saying. It seems
> to be saying that the PIC controller can be programmed to
> some extent from software, at least in principle (perhaps it
> needs some hardware support?)
OK, this 'priority' is the Linux kernel's priority. The 'priority' I
was speaking of was the actual hardware priority. They are different
things.
In the older PIC when an ISR was entered all lower hardware 'priority'
IRQ are blocked until the ISR tells the PIC it is ready to release.
That is the numerical list I gave earlier. In that list is something
at IRQ14 starts and doesn't release then all interrupts of lower
hardware priority (15,3,4,5,6,7) will not happen.
The setting of Linux kernel 'priority' doesn't care whether you are
using a PIC or an APIC. Clemen's app works for both I'm sure.
Sorry for the confusion!
> > > Is the latter an intrinsically inferior solution?
>> > I didn't follow. Sorry.
>> I meant to ask: is using the irq handling thread priority control
> from the rt kernel patches necessarily a worse way to go about
> things than hardware re-prioritisation?
No, not at all. In fact, I think that both are necessary to gain the
most control over the hardware. With a PIC system set up things with a
sound card on IRQ9 or IRQ10. Then set the -rt priority to a value of
80. With an APIC system I believe all you have to do is set the -rt
priority and not worry so much about the hardware setting.
- Mark
>> Cheers,
>> - Pete.
>>