mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	genirq: No need to mask non trigger mode flags before __irq_set_trigger()
Some callers of __irq_set_trigger() masks all flags except trigger mode flags. This is unnecessary, ase __irq_set_trigger() already does this before usage of flags. [ tglx: Moved the flag mask and adjusted comment. Removed the hunk in enable_percpu_irq() as it is required there ] Signed-off-by: Alexander Kuleshov <kuleshovmail@gmail.com> Link: http://lkml.kernel.org/r/20160719095408.13778-1-kuleshovmail@gmail.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
		
							parent
							
								
									545d5d657b
								
							
						
					
					
						commit
						00b992deaa
					
				
					 2 changed files with 2 additions and 4 deletions
				
			
		| 
						 | 
					@ -76,7 +76,6 @@ int irq_set_irq_type(unsigned int irq, unsigned int type)
 | 
				
			||||||
	if (!desc)
 | 
						if (!desc)
 | 
				
			||||||
		return -EINVAL;
 | 
							return -EINVAL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	type &= IRQ_TYPE_SENSE_MASK;
 | 
					 | 
				
			||||||
	ret = __irq_set_trigger(desc, type);
 | 
						ret = __irq_set_trigger(desc, type);
 | 
				
			||||||
	irq_put_desc_busunlock(desc, flags);
 | 
						irq_put_desc_busunlock(desc, flags);
 | 
				
			||||||
	return ret;
 | 
						return ret;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -669,8 +669,6 @@ int __irq_set_trigger(struct irq_desc *desc, unsigned long flags)
 | 
				
			||||||
		return 0;
 | 
							return 0;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	flags &= IRQ_TYPE_SENSE_MASK;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if (chip->flags & IRQCHIP_SET_TYPE_MASKED) {
 | 
						if (chip->flags & IRQCHIP_SET_TYPE_MASKED) {
 | 
				
			||||||
		if (!irqd_irq_masked(&desc->irq_data))
 | 
							if (!irqd_irq_masked(&desc->irq_data))
 | 
				
			||||||
			mask_irq(desc);
 | 
								mask_irq(desc);
 | 
				
			||||||
| 
						 | 
					@ -678,7 +676,8 @@ int __irq_set_trigger(struct irq_desc *desc, unsigned long flags)
 | 
				
			||||||
			unmask = 1;
 | 
								unmask = 1;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* caller masked out all except trigger mode flags */
 | 
						/* Mask all flags except trigger mode */
 | 
				
			||||||
 | 
						flags &= IRQ_TYPE_SENSE_MASK;
 | 
				
			||||||
	ret = chip->irq_set_type(&desc->irq_data, flags);
 | 
						ret = chip->irq_set_type(&desc->irq_data, flags);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	switch (ret) {
 | 
						switch (ret) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue