x86: set IRQ vectors properly for MVIC
With MVIC these can't be arbitrarily assigned and the vector must be <irq num> + 0x20. The correct number of vectors is now set for footprint-min on D2000. Change-Id: Ibf59921dbc438c7465b7050dd74d0badc9a91fc3 Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This commit is contained in:
parent
2ec374a8df
commit
abc85a3d3e
2 changed files with 17 additions and 2 deletions
|
@ -162,11 +162,18 @@ typedef struct s_isrList {
|
|||
* @return N/A
|
||||
*
|
||||
*/
|
||||
#define IRQ_CONNECT_STATIC(device, irq, priority, isr, parameter, flags) \
|
||||
#ifdef CONFIG_MVIC
|
||||
#define IRQ_CONNECT_STATIC(device, irq, priority, isr, parameter, flags) \
|
||||
extern void *_##device##_##isr##_stub; \
|
||||
const uint32_t _##device##_irq_flags = (flags); \
|
||||
NANO_CPU_INT_REGISTER(_##device##_##isr##_stub, (irq), \
|
||||
((irq) + 0x20) / 16, (irq) + 0x20, 0)
|
||||
#else
|
||||
#define IRQ_CONNECT_STATIC(device, irq, priority, isr, parameter, flags) \
|
||||
extern void *_##device##_##isr##_stub; \
|
||||
const uint32_t _##device##_irq_flags = (flags); \
|
||||
NANO_CPU_INT_REGISTER(_##device##_##isr##_stub, (irq), (priority), -1, 0)
|
||||
|
||||
#endif
|
||||
|
||||
extern unsigned char _irq_to_interrupt_vector[];
|
||||
/**
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
CONFIG_ISR_STACK_SIZE=128
|
||||
CONFIG_MAIN_STACK_SIZE=128
|
||||
CONFIG_SYS_CLOCK_TICKS_PER_SEC=0
|
||||
CONFIG_PRINTK=n
|
||||
CONFIG_HPET_TIMER_IRQ_PRIORITY=2
|
||||
CONFIG_IDT_NUM_VECTORS=64
|
||||
CONFIG_CONSOLE=n
|
||||
CONFIG_SERIAL=n
|
Loading…
Add table
Add a link
Reference in a new issue