mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-10-31 08:44:41 +00:00 
			
		
		
		
	gpio: mxc: use devres for irq generic chip
Use resource managed variants of irq_alloc_generic_chip() and irq_setup_generic_chip(). Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
		
							parent
							
								
									e0fc5a1b8e
								
							
						
					
					
						commit
						db5270acaa
					
				
					 1 changed files with 10 additions and 5 deletions
				
			
		|  | @ -66,6 +66,7 @@ struct mxc_gpio_port { | |||
| 	int irq_high; | ||||
| 	struct irq_domain *domain; | ||||
| 	struct gpio_chip gc; | ||||
| 	struct device *dev; | ||||
| 	u32 both_edges; | ||||
| }; | ||||
| 
 | ||||
|  | @ -345,9 +346,10 @@ static int mxc_gpio_init_gc(struct mxc_gpio_port *port, int irq_base) | |||
| { | ||||
| 	struct irq_chip_generic *gc; | ||||
| 	struct irq_chip_type *ct; | ||||
| 	int rv; | ||||
| 
 | ||||
| 	gc = irq_alloc_generic_chip("gpio-mxc", 1, irq_base, | ||||
| 				    port->base, handle_level_irq); | ||||
| 	gc = devm_irq_alloc_generic_chip(port->dev, "gpio-mxc", 1, irq_base, | ||||
| 					 port->base, handle_level_irq); | ||||
| 	if (!gc) | ||||
| 		return -ENOMEM; | ||||
| 	gc->private = port; | ||||
|  | @ -362,10 +364,11 @@ static int mxc_gpio_init_gc(struct mxc_gpio_port *port, int irq_base) | |||
| 	ct->regs.ack = GPIO_ISR; | ||||
| 	ct->regs.mask = GPIO_IMR; | ||||
| 
 | ||||
| 	irq_setup_generic_chip(gc, IRQ_MSK(32), IRQ_GC_INIT_NESTED_LOCK, | ||||
| 			       IRQ_NOREQUEST, 0); | ||||
| 	rv = devm_irq_setup_generic_chip(port->dev, gc, IRQ_MSK(32), | ||||
| 					 IRQ_GC_INIT_NESTED_LOCK, | ||||
| 					 IRQ_NOREQUEST, 0); | ||||
| 
 | ||||
| 	return 0; | ||||
| 	return rv; | ||||
| } | ||||
| 
 | ||||
| static void mxc_gpio_get_hw(struct platform_device *pdev) | ||||
|  | @ -419,6 +422,8 @@ static int mxc_gpio_probe(struct platform_device *pdev) | |||
| 	if (!port) | ||||
| 		return -ENOMEM; | ||||
| 
 | ||||
| 	port->dev = &pdev->dev; | ||||
| 
 | ||||
| 	iores = platform_get_resource(pdev, IORESOURCE_MEM, 0); | ||||
| 	port->base = devm_ioremap_resource(&pdev->dev, iores); | ||||
| 	if (IS_ERR(port->base)) | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Bartosz Golaszewski
						Bartosz Golaszewski