public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* RE: [ECOS] IRQs mapping in PC platform
@ 2000-08-24 11:44 Fabrice Gautier
  2000-08-25  1:10 ` Boris V. Guzhov
  0 siblings, 1 reply; 10+ messages in thread
From: Fabrice Gautier @ 2000-08-24 11:44 UTC (permalink / raw)
  To: 'Nick Garnett', Boris V. Guzhov; +Cc: ecos-discuss

> -----Original Message-----
> From: Nick Garnett [ mailto:nickg@cygnus.co.uk ]
> Subject: Re: [ECOS] IRQs mapping in PC platform
> 
> 
> "Boris V. Guzhov" <borg@int.spb.ru> writes:
> 
> > 
> > But there is one more bug:  in the  cyg_drv_interrupt_(un)mask().
> > I think that right similarly to following (it is written on 
> the "C" only
> > for a example):
> > 
> > void cyg_drv_interrupt_unmask(cyg_vector_t vector)
> > {
> >   if ( vector < 0x28 )  // for master
> >     pc_outb(0x21, pc_inb(0x21) & ~(1<<(vector-0x20)));
> >   else           // for slave
> >   {
> >     pc_outb(0x21, pc_inb(0x21) & ~(1<<2));    //  unmask master IRQ2
> >     pc_outb(0xA1, pc_inb(0xA1) & ~(1<<(vector-0x28)));
> >   }
> > }
> > 
> > For cyg_drv_interrupt_mask() is similarly.

I would like to disagree with this last remark about  the mask function. If
you meant similarly as: "mask IRQ2 when maksing irq 8 or above" that would,
I think, mean that all IRQs above 8 are masked when we mask an IRQ above 8.

More generally I think that IRQ 2 should never be masked unless
intentionnaly with the cyg_interrupt_mask. If it was the case, then mask and
unmask function should have worked correctly.
And I think too that IRQ2 should be unmasked at PIC initialisation.

Anyway it is still a good idea to unmask IRQ2 when unmasking an IRQ above 8.

Thanks

-- 
Fabrice Gautier
fabrice_gautier@sdesigns.com 

^ permalink raw reply	[flat|nested] 10+ messages in thread
* Re: [ECOS] IRQs mapping in PC platform
@ 2000-08-19  5:58 Boris V. Guzhov
  0 siblings, 0 replies; 10+ messages in thread
From: Boris V. Guzhov @ 2000-08-19  5:58 UTC (permalink / raw)
  To: nickg; +Cc: ecos-discuss

In my last letter there is a infidelity.
>But there is one more bug:  in the  cyg_drv_interrupt_(un)mask().
>I think that right similarly to following (it is written on the "C" only
>for a example):

It means HAL_INTERRUPT_(UN)MASK, instead of  cyg_drv_interrupt_(un)mask().

--
Boris Guzhov,
St.Petersburg, Russia








^ permalink raw reply	[flat|nested] 10+ messages in thread
* [ECOS] IRQs mapping in PC platform
@ 2000-08-17 19:02 Fabrice Gautier
  2000-08-17 23:48 ` Boris V. Guzhov
  0 siblings, 1 reply; 10+ messages in thread
From: Fabrice Gautier @ 2000-08-17 19:02 UTC (permalink / raw)
  To: Ecos-List (E-mail)

Hi,

it seems that in the PC platform, IRQs are mapped to vectors 32 to 47.
Is that right ?
 (I didn't find any confirmation of that in the documentations)

Thanks

A+
-- 
Fabrice Gautier
fabrice_gautier@sdesigns.com 

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2000-08-25  1:10 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-08-24 11:44 [ECOS] IRQs mapping in PC platform Fabrice Gautier
2000-08-25  1:10 ` Boris V. Guzhov
  -- strict thread matches above, loose matches on Subject: below --
2000-08-19  5:58 Boris V. Guzhov
2000-08-17 19:02 Fabrice Gautier
2000-08-17 23:48 ` Boris V. Guzhov
2000-08-18  4:00   ` Nick Garnett
2000-08-18  6:19     ` Boris V. Guzhov
2000-08-18  7:45       ` Nick Garnett
2000-08-19  4:48         ` Boris V. Guzhov
2000-08-23  7:12           ` Nick Garnett

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).