diff options
Diffstat (limited to 'kernel/irq/chip.c')
| -rw-r--r-- | kernel/irq/chip.c | 78 | 
1 files changed, 39 insertions, 39 deletions
diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c index 4ea775cc60f..e0e93ff10af 100644 --- a/kernel/irq/chip.c +++ b/kernel/irq/chip.c @@ -32,18 +32,18 @@ static void dynamic_irq_init_x(unsigned int irq, bool keep_chip_data)  	/* Ensure we don't have left over values from a previous use of this irq */  	raw_spin_lock_irqsave(&desc->lock, flags);  	desc->status = IRQ_DISABLED; -	desc->chip = &no_irq_chip; +	desc->irq_data.chip = &no_irq_chip;  	desc->handle_irq = handle_bad_irq;  	desc->depth = 1; -	desc->msi_desc = NULL; -	desc->handler_data = NULL; +	desc->irq_data.msi_desc = NULL; +	desc->irq_data.handler_data = NULL;  	if (!keep_chip_data) -		desc->chip_data = NULL; +		desc->irq_data.chip_data = NULL;  	desc->action = NULL;  	desc->irq_count = 0;  	desc->irqs_unhandled = 0;  #ifdef CONFIG_SMP -	cpumask_setall(desc->affinity); +	cpumask_setall(desc->irq_data.affinity);  #ifdef CONFIG_GENERIC_PENDING_IRQ  	cpumask_clear(desc->pending_mask);  #endif @@ -64,7 +64,7 @@ void dynamic_irq_init(unsigned int irq)   *	dynamic_irq_init_keep_chip_data - initialize a dynamically allocated irq   *	@irq:	irq number to initialize   * - *	does not set irq_to_desc(irq)->chip_data to NULL + *	does not set irq_to_desc(irq)->irq_data.chip_data to NULL   */  void dynamic_irq_init_keep_chip_data(unsigned int irq)  { @@ -88,12 +88,12 @@ static void dynamic_irq_cleanup_x(unsigned int irq, bool keep_chip_data)  			irq);  		return;  	} -	desc->msi_desc = NULL; -	desc->handler_data = NULL; +	desc->irq_data.msi_desc = NULL; +	desc->irq_data.handler_data = NULL;  	if (!keep_chip_data) -		desc->chip_data = NULL; +		desc->irq_data.chip_data = NULL;  	desc->handle_irq = handle_bad_irq; -	desc->chip = &no_irq_chip; +	desc->irq_data.chip = &no_irq_chip;  	desc->name = NULL;  	clear_kstat_irqs(desc);  	raw_spin_unlock_irqrestore(&desc->lock, flags); @@ -112,7 +112,7 @@ void dynamic_irq_cleanup(unsigned int irq)   *	dynamic_irq_cleanup_keep_chip_data - cleanup a dynamically allocated irq   *	@irq:	irq number to initialize   * - *	does not set irq_to_desc(irq)->chip_data to NULL + *	does not set irq_to_desc(irq)->irq_data.chip_data to NULL   */  void dynamic_irq_cleanup_keep_chip_data(unsigned int irq)  { @@ -140,7 +140,7 @@ int set_irq_chip(unsigned int irq, struct irq_chip *chip)  	raw_spin_lock_irqsave(&desc->lock, flags);  	irq_chip_set_defaults(chip); -	desc->chip = chip; +	desc->irq_data.chip = chip;  	raw_spin_unlock_irqrestore(&desc->lock, flags);  	return 0; @@ -193,7 +193,7 @@ int set_irq_data(unsigned int irq, void *data)  	}  	raw_spin_lock_irqsave(&desc->lock, flags); -	desc->handler_data = data; +	desc->irq_data.handler_data = data;  	raw_spin_unlock_irqrestore(&desc->lock, flags);  	return 0;  } @@ -218,7 +218,7 @@ int set_irq_msi(unsigned int irq, struct msi_desc *entry)  	}  	raw_spin_lock_irqsave(&desc->lock, flags); -	desc->msi_desc = entry; +	desc->irq_data.msi_desc = entry;  	if (entry)  		entry->irq = irq;  	raw_spin_unlock_irqrestore(&desc->lock, flags); @@ -243,13 +243,13 @@ int set_irq_chip_data(unsigned int irq, void *data)  		return -EINVAL;  	} -	if (!desc->chip) { +	if (!desc->irq_data.chip) {  		printk(KERN_ERR "BUG: bad set_irq_chip_data(IRQ#%d)\n", irq);  		return -EINVAL;  	}  	raw_spin_lock_irqsave(&desc->lock, flags); -	desc->chip_data = data; +	desc->irq_data.chip_data = data;  	raw_spin_unlock_irqrestore(&desc->lock, flags);  	return 0; @@ -291,7 +291,7 @@ static void default_enable(unsigned int irq)  {  	struct irq_desc *desc = irq_to_desc(irq); -	desc->chip->unmask(irq); +	desc->irq_data.chip->unmask(irq);  	desc->status &= ~IRQ_MASKED;  } @@ -309,7 +309,7 @@ static unsigned int default_startup(unsigned int irq)  {  	struct irq_desc *desc = irq_to_desc(irq); -	desc->chip->enable(irq); +	desc->irq_data.chip->enable(irq);  	return 0;  } @@ -320,7 +320,7 @@ static void default_shutdown(unsigned int irq)  {  	struct irq_desc *desc = irq_to_desc(irq); -	desc->chip->mask(irq); +	desc->irq_data.chip->mask(irq);  	desc->status |= IRQ_MASKED;  } @@ -350,28 +350,28 @@ void irq_chip_set_defaults(struct irq_chip *chip)  static inline void mask_ack_irq(struct irq_desc *desc, int irq)  { -	if (desc->chip->mask_ack) -		desc->chip->mask_ack(irq); +	if (desc->irq_data.chip->mask_ack) +		desc->irq_data.chip->mask_ack(irq);  	else { -		desc->chip->mask(irq); -		if (desc->chip->ack) -			desc->chip->ack(irq); +		desc->irq_data.chip->mask(irq); +		if (desc->irq_data.chip->ack) +			desc->irq_data.chip->ack(irq);  	}  	desc->status |= IRQ_MASKED;  }  static inline void mask_irq(struct irq_desc *desc, int irq)  { -	if (desc->chip->mask) { -		desc->chip->mask(irq); +	if (desc->irq_data.chip->mask) { +		desc->irq_data.chip->mask(irq);  		desc->status |= IRQ_MASKED;  	}  }  static inline void unmask_irq(struct irq_desc *desc, int irq)  { -	if (desc->chip->unmask) { -		desc->chip->unmask(irq); +	if (desc->irq_data.chip->unmask) { +		desc->irq_data.chip->unmask(irq);  		desc->status &= ~IRQ_MASKED;  	}  } @@ -552,7 +552,7 @@ handle_fasteoi_irq(unsigned int irq, struct irq_desc *desc)  	raw_spin_lock(&desc->lock);  	desc->status &= ~IRQ_INPROGRESS;  out: -	desc->chip->eoi(irq); +	desc->irq_data.chip->eoi(irq);  	raw_spin_unlock(&desc->lock);  } @@ -594,8 +594,8 @@ handle_edge_irq(unsigned int irq, struct irq_desc *desc)  	kstat_incr_irqs_this_cpu(irq, desc);  	/* Start handling the irq */ -	if (desc->chip->ack) -		desc->chip->ack(irq); +	if (desc->irq_data.chip->ack) +		desc->irq_data.chip->ack(irq);  	/* Mark the IRQ currently in progress.*/  	desc->status |= IRQ_INPROGRESS; @@ -648,15 +648,15 @@ handle_percpu_irq(unsigned int irq, struct irq_desc *desc)  	kstat_incr_irqs_this_cpu(irq, desc); -	if (desc->chip->ack) -		desc->chip->ack(irq); +	if (desc->irq_data.chip->ack) +		desc->irq_data.chip->ack(irq);  	action_ret = handle_IRQ_event(irq, desc->action);  	if (!noirqdebug)  		note_interrupt(irq, desc, action_ret); -	if (desc->chip->eoi) -		desc->chip->eoi(irq); +	if (desc->irq_data.chip->eoi) +		desc->irq_data.chip->eoi(irq);  }  void @@ -674,7 +674,7 @@ __set_irq_handler(unsigned int irq, irq_flow_handler_t handle, int is_chained,  	if (!handle)  		handle = handle_bad_irq; -	else if (desc->chip == &no_irq_chip) { +	else if (desc->irq_data.chip == &no_irq_chip) {  		printk(KERN_WARNING "Trying to install %sinterrupt handler "  		       "for IRQ%d\n", is_chained ? "chained " : "", irq);  		/* @@ -684,7 +684,7 @@ __set_irq_handler(unsigned int irq, irq_flow_handler_t handle, int is_chained,  		 * prevent us to setup the interrupt at all. Switch it to  		 * dummy_irq_chip for easy transition.  		 */ -		desc->chip = &dummy_irq_chip; +		desc->irq_data.chip = &dummy_irq_chip;  	}  	chip_bus_lock(irq, desc); @@ -692,7 +692,7 @@ __set_irq_handler(unsigned int irq, irq_flow_handler_t handle, int is_chained,  	/* Uninstall? */  	if (handle == handle_bad_irq) { -		if (desc->chip != &no_irq_chip) +		if (desc->irq_data.chip != &no_irq_chip)  			mask_ack_irq(desc, irq);  		desc->status |= IRQ_DISABLED;  		desc->depth = 1; @@ -704,7 +704,7 @@ __set_irq_handler(unsigned int irq, irq_flow_handler_t handle, int is_chained,  		desc->status &= ~IRQ_DISABLED;  		desc->status |= IRQ_NOREQUEST | IRQ_NOPROBE;  		desc->depth = 0; -		desc->chip->startup(irq); +		desc->irq_data.chip->startup(irq);  	}  	raw_spin_unlock_irqrestore(&desc->lock, flags);  	chip_bus_sync_unlock(irq, desc);  |