sw_isr_table.h: clean up definition
This private data structure now no longer introduces a typedef or uses CamelCase. It's not necessary to specify the size of extern arrays, so we don't need a block of #ifdefs for every arch. Change-Id: I71fe61822ecef29820280a43d5ac2822a61f7082 Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This commit is contained in:
parent
d490573933
commit
164ba8c5cd
6 changed files with 26 additions and 31 deletions
|
@ -55,10 +55,10 @@ typedef unsigned int vaddr_t;
|
|||
* accept constant values for the irq_p parameter, very important as the
|
||||
* numerical IRQ line is used to create a named section.
|
||||
*
|
||||
* 2. An instance of _IsrTableEntry is created containing the ISR and its
|
||||
* parameter. If you look at how _sw_isr_table is created, each entry in the
|
||||
* array is in its own section named by the IRQ line number. What we are doing
|
||||
* here is to override one of the default entries (which points to the
|
||||
* 2. An instance of struct _isr_table_entry is created containing the ISR and
|
||||
* its parameter. If you look at how _sw_isr_table is created, each entry in
|
||||
* the array is in its own section named by the IRQ line number. What we are
|
||||
* doing here is to override one of the default entries (which points to the
|
||||
* spurious IRQ handler) with what was supplied here.
|
||||
*
|
||||
* There is no notion of priority with the Nios II internal interrupt
|
||||
|
@ -75,7 +75,7 @@ typedef unsigned int vaddr_t;
|
|||
#define _ARCH_IRQ_CONNECT(irq_p, priority_p, isr_p, isr_param_p, flags_p) \
|
||||
({ \
|
||||
enum { IRQ = irq_p }; \
|
||||
static struct _IsrTableEntry _CONCAT(_isr_irq, irq_p) \
|
||||
static struct _isr_table_entry _CONCAT(_isr_irq, irq_p) \
|
||||
__attribute__ ((used)) \
|
||||
__attribute__ ((section(STRINGIFY(_CONCAT(.gnu.linkonce.isr_irq, irq_p))))) = \
|
||||
{isr_param_p, isr_p}; \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue