From a506aa3dfb0ad10acf105880bce06a599fdfba87 Mon Sep 17 00:00:00 2001 From: "Charles E. Youse" Date: Sun, 23 Jun 2019 20:06:15 +0000 Subject: [PATCH] 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 --- arch/x86/core/Kconfig.ia32 | 6 ------ arch/x86/core/ia32/irq_manage.c | 6 ------ include/arch/x86/arch.h | 11 ----------- include/arch/x86/irq_controller.h | 11 ----------- include/arch/x86/linker.ld | 4 ---- 5 files changed, 38 deletions(-) diff --git a/arch/x86/core/Kconfig.ia32 b/arch/x86/core/Kconfig.ia32 index 4f429a932ae..19ba2cf57ef 100644 --- a/arch/x86/core/Kconfig.ia32 +++ b/arch/x86/core/Kconfig.ia32 @@ -368,12 +368,6 @@ config X86_DYNAMIC_IRQ_STUBS some stub code to be generated at build time, one stub per dynamic 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 endif # !X86_LONGMODE diff --git a/arch/x86/core/ia32/irq_manage.c b/arch/x86/core/ia32/irq_manage.c index f9d694a6c9d..cab3a5c6167 100644 --- a/arch/x86/core/ia32/irq_manage.c +++ b/arch/x86/core/ia32/irq_manage.c @@ -129,7 +129,6 @@ static unsigned int next_irq_stub; */ extern char z_dynamic_stubs_begin[]; -#ifndef CONFIG_X86_FIXED_IRQ_MAPPING /** * @brief Allocate a free interrupt vector given * @@ -211,7 +210,6 @@ static unsigned int priority_to_free_vector(unsigned int requested_priority) return vector; } -#endif /* !CONFIG_X86_FIXED_IRQ_MAPPING */ /** * @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(); -#ifdef CONFIG_X86_FIXED_IRQ_MAPPING - vector = Z_IRQ_TO_INTERRUPT_VECTOR(irq); -#else vector = priority_to_free_vector(priority); /* 0 indicates not used, vectors for interrupts start at 32 */ __ASSERT(_irq_to_interrupt_vector[irq] == 0U, "IRQ %d already configured", irq); _irq_to_interrupt_vector[irq] = vector; -#endif z_irq_controller_irq_config(vector, irq, flags); stub_idx = next_irq_stub++; diff --git a/include/arch/x86/arch.h b/include/arch/x86/arch.h index c8d4ead1d44..555321d8fde 100644 --- a/include/arch/x86/arch.h +++ b/include/arch/x86/arch.h @@ -165,11 +165,7 @@ typedef struct s_isrList { * * 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) -#endif /* CONFIG_X86_FIXED_IRQ_MAPPING */ /** * 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 * @@ -259,7 +249,6 @@ typedef struct s_isrList { extern unsigned char _irq_to_interrupt_vector[]; #define Z_IRQ_TO_INTERRUPT_VECTOR(irq) \ ((unsigned int) _irq_to_interrupt_vector[irq]) -#endif #ifdef CONFIG_SYS_POWER_MANAGEMENT extern void z_arch_irq_direct_pm(void); diff --git a/include/arch/x86/irq_controller.h b/include/arch/x86/irq_controller.h index b4abc7116ac..96816307c47 100644 --- a/include/arch/x86/irq_controller.h +++ b/include/arch/x86/irq_controller.h @@ -26,17 +26,6 @@ #ifndef _ASMLANGUAGE #include -#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 diff --git a/include/arch/x86/linker.ld b/include/arch/x86/linker.ld index e2e3765e6fd..d0bdc9495d1 100644 --- a/include/arch/x86/linker.ld +++ b/include/arch/x86/linker.ld @@ -141,7 +141,6 @@ SECTIONS . += CONFIG_IDT_NUM_VECTORS * 8; #endif /* LINKER_PASS2 */ -#ifndef CONFIG_X86_FIXED_IRQ_MAPPING . = ALIGN(4); _irq_to_interrupt_vector = .; #ifdef LINKER_PASS2 @@ -149,7 +148,6 @@ SECTIONS #else . += CONFIG_MAX_IRQ_LINES; #endif -#endif /* CONFIG_X86_FIXED_IRQ_MAPPING */ #endif /* CONFIG_DYNAMIC_INTERRUPTS */ /* Located in generated directory. This file is populated by the @@ -276,7 +274,6 @@ SECTIONS *(".kernel.*") #ifdef CONFIG_DYNAMIC_INTERRUPTS -#ifndef CONFIG_X86_FIXED_IRQ_MAPPING . = ALIGN(4); _irq_to_interrupt_vector = .; #ifdef LINKER_PASS2 @@ -284,7 +281,6 @@ SECTIONS #else . += CONFIG_MAX_IRQ_LINES; #endif /* LINKER_PASS2 */ -#endif /* CONFIG_X86_FIXED_IRQ_MAPPING */ z_interrupt_vectors_allocated = .; #ifdef LINKER_PASS2