From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: [PATCH v8 09/10] xen: introduce bit access macros for the IRQ line status flags Date: Thu, 10 Jul 2014 19:13:22 +0100 Message-ID: <1405016003-19131-9-git-send-email-stefano.stabellini@eu.citrix.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xensource.com Cc: julien.grall@citrix.com, Ian.Campbell@citrix.com, Jan Beulich , Stefano Stabellini List-Id: xen-devel@lists.xenproject.org Signed-off-by: Stefano Stabellini CC: Jan Beulich --- xen/arch/arm/irq.c | 8 ++++---- xen/drivers/passthrough/arm/smmu.c | 4 ++-- xen/include/xen/irq.h | 27 ++++++++++++++++++--------- 3 files changed, 24 insertions(+), 15 deletions(-) diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c index 7150c7a..695c69f 100644 --- a/xen/arch/arm/irq.c +++ b/xen/arch/arm/irq.c @@ -297,21 +297,21 @@ void release_irq(unsigned int irq, const void *dev_id) static int __setup_irq(struct irq_desc *desc, unsigned int irqflags, struct irqaction *new) { - bool_t shared = !!(irqflags & IRQF_SHARED); + bool_t shared = !!(irqflags & IRQ_SHARED); ASSERT(new != NULL); /* Sanity checks: * - if the IRQ is marked as shared - * - dev_id is not NULL when IRQF_SHARED is set + * - dev_id is not NULL when IRQ_SHARED is set */ - if ( desc->action != NULL && (!(desc->status & IRQF_SHARED) || !shared) ) + if ( desc->action != NULL && (!(desc->status & IRQ_SHARED) || !shared) ) return -EINVAL; if ( shared && new->dev_id == NULL ) return -EINVAL; if ( shared ) - desc->status |= IRQF_SHARED; + desc->status |= IRQ_SHARED; new->next = desc->action; dsb(ish); diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c index f4eb2a2..f9b87d0 100644 --- a/xen/drivers/passthrough/arm/smmu.c +++ b/xen/drivers/passthrough/arm/smmu.c @@ -1060,7 +1060,7 @@ arm_smmu_alloc_domain_context(struct domain *d, cfg->irptndx = cfg->cbndx; irq = smmu->irqs[smmu->num_global_irqs + cfg->irptndx]; - ret = request_irq(irq, IRQF_SHARED, arm_smmu_context_fault, + ret = request_irq(irq, IRQ_SHARED, arm_smmu_context_fault, "arm-smmu-context-fault", cfg); if ( ret ) { @@ -1713,7 +1713,7 @@ static int __init smmu_init(struct dt_device_node *dev, for ( i = 0; i < smmu->num_global_irqs; ++i ) { smmu_dbg(smmu, "\t- global IRQ %u\n", smmu->irqs[i]); - res = request_irq(smmu->irqs[i], IRQF_SHARED, arm_smmu_global_fault, + res = request_irq(smmu->irqs[i], IRQ_SHARED, arm_smmu_global_fault, "arm-smmu global fault", smmu); if ( res ) { diff --git a/xen/include/xen/irq.h b/xen/include/xen/irq.h index 40c0f3f..af5b247 100644 --- a/xen/include/xen/irq.h +++ b/xen/include/xen/irq.h @@ -22,15 +22,24 @@ struct irqaction { /* * IRQ line status. */ -#define IRQ_INPROGRESS (1u<<0) /* IRQ handler active - do not enter! */ -#define IRQ_DISABLED (1u<<1) /* IRQ disabled - do not enter! */ -#define IRQ_PENDING (1u<<2) /* IRQ pending - replay on enable */ -#define IRQ_REPLAY (1u<<3) /* IRQ has been replayed but not acked yet */ -#define IRQ_GUEST (1u<<4) /* IRQ is handled by guest OS(es) */ -#define IRQ_MOVE_PENDING (1u<<5) /* IRQ is migrating to another CPUs */ -#define IRQ_PER_CPU (1u<<6) /* IRQ is per CPU */ -#define IRQ_GUEST_EOI_PENDING (1u<<7) /* IRQ was disabled, pending a guest EOI */ -#define IRQF_SHARED (1<<8) /* IRQ is shared */ +#define _IRQ_INPROGRESS 0 /* IRQ handler active - do not enter! */ +#define _IRQ_DISABLED 1 /* IRQ disabled - do not enter! */ +#define _IRQ_PENDING 2 /* IRQ pending - replay on enable */ +#define _IRQ_REPLAY 3 /* IRQ has been replayed but not acked yet */ +#define _IRQ_GUEST 4 /* IRQ is handled by guest OS(es) */ +#define _IRQ_MOVE_PENDING 5 /* IRQ is migrating to another CPUs */ +#define _IRQ_PER_CPU 6 /* IRQ is per CPU */ +#define _IRQ_GUEST_EOI_PENDING 7 /* IRQ was disabled, pending a guest EOI */ +#define _IRQ_SHARED 8 /* IRQ is shared */ +#define IRQ_INPROGRESS (1u<<_IRQ_INPROGRESS) +#define IRQ_DISABLED (1u<<_IRQ_DISABLED) +#define IRQ_PENDING (1u<<_IRQ_PENDING) +#define IRQ_REPLAY (1u<<_IRQ_REPLAY) +#define IRQ_GUEST (1u<<_IRQ_GUEST) +#define IRQ_MOVE_PENDING (1u<<_IRQ_MOVE_PENDING) +#define IRQ_PER_CPU (1u<<_IRQ_PER_CPU) +#define IRQ_GUEST_EOI_PENDING (1u<<_IRQ_GUEST_EOI_PENDING) +#define IRQ_SHARED (1u<<_IRQ_SHARED) /* Special IRQ numbers. */ #define AUTO_ASSIGN_IRQ (-1) -- 1.7.10.4