From 7766897b41e424ca66686d914ae97baa3a9cb7a1 Mon Sep 17 00:00:00 2001 From: Darius Augulis Date: Wed, 8 Apr 2009 16:17:50 +0300 Subject: [PATCH] --- yaml --- r: 143565 b: refs/heads/master c: 3f2030163efe4a7ee820ae56dab9a4db8c1ebb49 h: refs/heads/master i: 143563: 389fac4e119afea2c73e342e4b48a799b699e59b v: v3 --- [refs] | 2 +- trunk/arch/arm/plat-mxc/include/mach/irqs.h | 2 +- trunk/arch/arm/plat-mxc/irq.c | 14 +++++++++----- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index 872f92835cfa..509850daa174 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3fa6dd6a7aa7ce1a7d490ef88c2c8ec7db0f196b +refs/heads/master: 3f2030163efe4a7ee820ae56dab9a4db8c1ebb49 diff --git a/trunk/arch/arm/plat-mxc/include/mach/irqs.h b/trunk/arch/arm/plat-mxc/include/mach/irqs.h index c02b8fc2d821..518a36504b88 100644 --- a/trunk/arch/arm/plat-mxc/include/mach/irqs.h +++ b/trunk/arch/arm/plat-mxc/include/mach/irqs.h @@ -45,7 +45,7 @@ #define NR_IRQS (MXC_IPU_IRQ_START + MX3_IPU_IRQS) -extern void imx_irq_set_priority(unsigned char irq, unsigned char prio); +extern int imx_irq_set_priority(unsigned char irq, unsigned char prio); /* all normal IRQs can be FIQs */ #define FIQ_START 0 diff --git a/trunk/arch/arm/plat-mxc/irq.c b/trunk/arch/arm/plat-mxc/irq.c index 6e7578a3514b..0fb68a531f55 100644 --- a/trunk/arch/arm/plat-mxc/irq.c +++ b/trunk/arch/arm/plat-mxc/irq.c @@ -50,23 +50,27 @@ #define IIM_PROD_REV_SH 3 #define IIM_PROD_REV_LEN 5 -#ifdef CONFIG_MXC_IRQ_PRIOR -void imx_irq_set_priority(unsigned char irq, unsigned char prio) +int imx_irq_set_priority(unsigned char irq, unsigned char prio) { +#ifdef CONFIG_MXC_IRQ_PRIOR unsigned int temp; unsigned int mask = 0x0F << irq % 8 * 4; - if (irq > 63) - return; + if (irq >= MXC_INTERNAL_IRQS) + return -EINVAL;; temp = __raw_readl(AVIC_NIPRIORITY(irq / 8)); temp &= ~mask; temp |= prio & mask; __raw_writel(temp, AVIC_NIPRIORITY(irq / 8)); + + return 0; +#else + return -ENOSYS; +#endif } EXPORT_SYMBOL(imx_irq_set_priority); -#endif #ifdef CONFIG_FIQ int mxc_set_irq_fiq(unsigned int irq, unsigned int type)