diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-imx/Kconfig | 10 | ||||
-rw-r--r-- | arch/arm/mach-imx/avic.c | 25 | ||||
-rw-r--r-- | arch/arm/mach-imx/irq-common.h | 1 |
3 files changed, 0 insertions, 36 deletions
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig index 15c9ae368b58..94317294b41e 100644 --- a/arch/arm/mach-imx/Kconfig +++ b/arch/arm/mach-imx/Kconfig | |||
@@ -20,16 +20,6 @@ config ARCH_MXC | |||
20 | menu "Freescale i.MX support" | 20 | menu "Freescale i.MX support" |
21 | depends on ARCH_MXC | 21 | depends on ARCH_MXC |
22 | 22 | ||
23 | config MXC_IRQ_PRIOR | ||
24 | bool "Use IRQ priority" | ||
25 | help | ||
26 | Select this if you want to use prioritized IRQ handling. | ||
27 | This feature prevents higher priority ISR to be interrupted | ||
28 | by lower priority IRQ. | ||
29 | This may be useful in embedded applications, where are strong | ||
30 | requirements for timing. | ||
31 | Say N here, unless you have a specialized requirement. | ||
32 | |||
33 | config MXC_TZIC | 23 | config MXC_TZIC |
34 | bool | 24 | bool |
35 | 25 | ||
diff --git a/arch/arm/mach-imx/avic.c b/arch/arm/mach-imx/avic.c index e163ec7a8441..8d1df2e4b7ac 100644 --- a/arch/arm/mach-imx/avic.c +++ b/arch/arm/mach-imx/avic.c | |||
@@ -54,28 +54,6 @@ | |||
54 | static void __iomem *avic_base; | 54 | static void __iomem *avic_base; |
55 | static struct irq_domain *domain; | 55 | static struct irq_domain *domain; |
56 | 56 | ||
57 | #ifdef CONFIG_MXC_IRQ_PRIOR | ||
58 | static int avic_irq_set_priority(unsigned char irq, unsigned char prio) | ||
59 | { | ||
60 | struct irq_data *d = irq_get_irq_data(irq); | ||
61 | unsigned int temp; | ||
62 | unsigned int mask = 0x0F << irq % 8 * 4; | ||
63 | |||
64 | irq = d->hwirq; | ||
65 | |||
66 | if (irq >= AVIC_NUM_IRQS) | ||
67 | return -EINVAL; | ||
68 | |||
69 | temp = __raw_readl(avic_base + AVIC_NIPRIORITY(irq / 8)); | ||
70 | temp &= ~mask; | ||
71 | temp |= prio & mask; | ||
72 | |||
73 | __raw_writel(temp, avic_base + AVIC_NIPRIORITY(irq / 8)); | ||
74 | |||
75 | return 0; | ||
76 | } | ||
77 | #endif | ||
78 | |||
79 | #ifdef CONFIG_FIQ | 57 | #ifdef CONFIG_FIQ |
80 | static int avic_set_irq_fiq(unsigned int irq, unsigned int type) | 58 | static int avic_set_irq_fiq(unsigned int irq, unsigned int type) |
81 | { | 59 | { |
@@ -102,9 +80,6 @@ static int avic_set_irq_fiq(unsigned int irq, unsigned int type) | |||
102 | 80 | ||
103 | 81 | ||
104 | static struct mxc_extra_irq avic_extra_irq = { | 82 | static struct mxc_extra_irq avic_extra_irq = { |
105 | #ifdef CONFIG_MXC_IRQ_PRIOR | ||
106 | .set_priority = avic_irq_set_priority, | ||
107 | #endif | ||
108 | #ifdef CONFIG_FIQ | 83 | #ifdef CONFIG_FIQ |
109 | .set_irq_fiq = avic_set_irq_fiq, | 84 | .set_irq_fiq = avic_set_irq_fiq, |
110 | #endif | 85 | #endif |
diff --git a/arch/arm/mach-imx/irq-common.h b/arch/arm/mach-imx/irq-common.h index 5b2dabba330f..6e3175dc0c0a 100644 --- a/arch/arm/mach-imx/irq-common.h +++ b/arch/arm/mach-imx/irq-common.h | |||
@@ -24,7 +24,6 @@ | |||
24 | 24 | ||
25 | struct mxc_extra_irq | 25 | struct mxc_extra_irq |
26 | { | 26 | { |
27 | int (*set_priority)(unsigned char irq, unsigned char prio); | ||
28 | int (*set_irq_fiq)(unsigned int irq, unsigned int type); | 27 | int (*set_irq_fiq)(unsigned int irq, unsigned int type); |
29 | }; | 28 | }; |
30 | 29 | ||