This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Interrupt vectors - idea of IRQ and interrupt name


Hello everybody!

I am trying to understand eCos interrupt mechanism (maybe interrupt
mechanism itself in general). And now I have question may seem to be
too simple, which every Embedded System developer should know. But I
couldn't figure out:

1) Why do we have same values assigned to the eCos interrupts names
and IRQs? Are they somehow mapped to each other through same value
(32, 33, 34...).
2) Why value assigned starting from 32 (can't be it from "0")?

I have found in packages\hal\i386\pcmb\current\include\pcmb_intr.h file:

// Interrupt vectors.
#define CYGNUM_HAL_INTERRUPT_IRQ0                32
#define CYGNUM_HAL_INTERRUPT_IRQ1                33
#define CYGNUM_HAL_INTERRUPT_IRQ2                34
                   ...
#define CYGNUM_HAL_INTERRUPT_IRQ15               47


#define CYGNUM_HAL_INTERRUPT_TIMER                    32
#define CYGNUM_HAL_INTERRUPT_KEYBOARD            33
#define CYGNUM_HAL_INTERRUPT_SLAVE8259            34
                  ...
#define CYGNUM_HAL_INTERRUPT_HDD                       46

Comment on file says "This file contains info about interrupts and
peripherals that are common on all PCs; for example, the clock always
activates irq 0 and would therefore be listed here." But I couldn't
catch idea. Any resource to get more information to get better
understanding of eCos interrupt mechanism?

Thanking in advance,
Nodir.

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]