arch/x86: remove CONFIG_X86_FIXED_IRQ_MAPPING support

This was only enabled by the MVIC, which in turn was only used
by the Quark D2000, which has been removed.

Signed-off-by: Charles E. Youse <charles.youse@intel.com>
This commit is contained in:
Charles E. Youse 2019-06-23 20:06:15 +00:00 committed by Anas Nashif
commit a506aa3dfb
5 changed files with 0 additions and 38 deletions

View file

@ -368,12 +368,6 @@ config X86_DYNAMIC_IRQ_STUBS
some stub code to be generated at build time, one stub per dynamic some stub code to be generated at build time, one stub per dynamic
interrupt. interrupt.
config X86_FIXED_IRQ_MAPPING
bool
help
Specify whether the current interrupt controller in use has a fixed
mapping between IDT vectors and IRQ lines.
endmenu endmenu
endif # !X86_LONGMODE endif # !X86_LONGMODE

View file

@ -129,7 +129,6 @@ static unsigned int next_irq_stub;
*/ */
extern char z_dynamic_stubs_begin[]; extern char z_dynamic_stubs_begin[];
#ifndef CONFIG_X86_FIXED_IRQ_MAPPING
/** /**
* @brief Allocate a free interrupt vector given <priority> * @brief Allocate a free interrupt vector given <priority>
* *
@ -211,7 +210,6 @@ static unsigned int priority_to_free_vector(unsigned int requested_priority)
return vector; return vector;
} }
#endif /* !CONFIG_X86_FIXED_IRQ_MAPPING */
/** /**
* @brief Get the memory address of an unused dynamic IRQ or exception stub * @brief Get the memory address of an unused dynamic IRQ or exception stub
@ -303,15 +301,11 @@ int z_arch_irq_connect_dynamic(unsigned int irq, unsigned int priority,
key = irq_lock(); key = irq_lock();
#ifdef CONFIG_X86_FIXED_IRQ_MAPPING
vector = Z_IRQ_TO_INTERRUPT_VECTOR(irq);
#else
vector = priority_to_free_vector(priority); vector = priority_to_free_vector(priority);
/* 0 indicates not used, vectors for interrupts start at 32 */ /* 0 indicates not used, vectors for interrupts start at 32 */
__ASSERT(_irq_to_interrupt_vector[irq] == 0U, __ASSERT(_irq_to_interrupt_vector[irq] == 0U,
"IRQ %d already configured", irq); "IRQ %d already configured", irq);
_irq_to_interrupt_vector[irq] = vector; _irq_to_interrupt_vector[irq] = vector;
#endif
z_irq_controller_irq_config(vector, irq, flags); z_irq_controller_irq_config(vector, irq, flags);
stub_idx = next_irq_stub++; stub_idx = next_irq_stub++;

View file

@ -165,11 +165,7 @@ typedef struct s_isrList {
* *
* These macros are only intended to be used by IRQ_CONNECT() macro. * These macros are only intended to be used by IRQ_CONNECT() macro.
*/ */
#if CONFIG_X86_FIXED_IRQ_MAPPING
#define _VECTOR_ARG(irq_p) Z_IRQ_CONTROLLER_VECTOR_MAPPING(irq_p)
#else
#define _VECTOR_ARG(irq_p) (-1) #define _VECTOR_ARG(irq_p) (-1)
#endif /* CONFIG_X86_FIXED_IRQ_MAPPING */
/** /**
* Configure a static interrupt. * Configure a static interrupt.
@ -245,12 +241,6 @@ typedef struct s_isrList {
}) })
#ifdef CONFIG_X86_FIXED_IRQ_MAPPING
/* Fixed vector-to-irq association mapping.
* No need for the table at all.
*/
#define Z_IRQ_TO_INTERRUPT_VECTOR(irq) Z_IRQ_CONTROLLER_VECTOR_MAPPING(irq)
#else
/** /**
* @brief Convert a statically connected IRQ to its interrupt vector number * @brief Convert a statically connected IRQ to its interrupt vector number
* *
@ -259,7 +249,6 @@ typedef struct s_isrList {
extern unsigned char _irq_to_interrupt_vector[]; extern unsigned char _irq_to_interrupt_vector[];
#define Z_IRQ_TO_INTERRUPT_VECTOR(irq) \ #define Z_IRQ_TO_INTERRUPT_VECTOR(irq) \
((unsigned int) _irq_to_interrupt_vector[irq]) ((unsigned int) _irq_to_interrupt_vector[irq])
#endif
#ifdef CONFIG_SYS_POWER_MANAGEMENT #ifdef CONFIG_SYS_POWER_MANAGEMENT
extern void z_arch_irq_direct_pm(void); extern void z_arch_irq_direct_pm(void);

View file

@ -26,17 +26,6 @@
#ifndef _ASMLANGUAGE #ifndef _ASMLANGUAGE
#include <zephyr/types.h> #include <zephyr/types.h>
#if CONFIG_X86_FIXED_IRQ_MAPPING
/**
* @brief Return fixed mapping for an IRQ
*
* @param irq Interrupt line
* @return Vector this interrupt has been assigned to
*/
#define Z_IRQ_CONTROLLER_VECTOR_MAPPING(irq) \
__IRQ_CONTROLLER_VECTOR_MAPPING(irq)
#endif
/** /**
* *
* @brief Program an interrupt * @brief Program an interrupt

View file

@ -141,7 +141,6 @@ SECTIONS
. += CONFIG_IDT_NUM_VECTORS * 8; . += CONFIG_IDT_NUM_VECTORS * 8;
#endif /* LINKER_PASS2 */ #endif /* LINKER_PASS2 */
#ifndef CONFIG_X86_FIXED_IRQ_MAPPING
. = ALIGN(4); . = ALIGN(4);
_irq_to_interrupt_vector = .; _irq_to_interrupt_vector = .;
#ifdef LINKER_PASS2 #ifdef LINKER_PASS2
@ -149,7 +148,6 @@ SECTIONS
#else #else
. += CONFIG_MAX_IRQ_LINES; . += CONFIG_MAX_IRQ_LINES;
#endif #endif
#endif /* CONFIG_X86_FIXED_IRQ_MAPPING */
#endif /* CONFIG_DYNAMIC_INTERRUPTS */ #endif /* CONFIG_DYNAMIC_INTERRUPTS */
/* Located in generated directory. This file is populated by the /* Located in generated directory. This file is populated by the
@ -276,7 +274,6 @@ SECTIONS
*(".kernel.*") *(".kernel.*")
#ifdef CONFIG_DYNAMIC_INTERRUPTS #ifdef CONFIG_DYNAMIC_INTERRUPTS
#ifndef CONFIG_X86_FIXED_IRQ_MAPPING
. = ALIGN(4); . = ALIGN(4);
_irq_to_interrupt_vector = .; _irq_to_interrupt_vector = .;
#ifdef LINKER_PASS2 #ifdef LINKER_PASS2
@ -284,7 +281,6 @@ SECTIONS
#else #else
. += CONFIG_MAX_IRQ_LINES; . += CONFIG_MAX_IRQ_LINES;
#endif /* LINKER_PASS2 */ #endif /* LINKER_PASS2 */
#endif /* CONFIG_X86_FIXED_IRQ_MAPPING */
z_interrupt_vectors_allocated = .; z_interrupt_vectors_allocated = .;
#ifdef LINKER_PASS2 #ifdef LINKER_PASS2