Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 450b1151 authored by Paul Parsons's avatar Paul Parsons Committed by Samuel Ortiz
Browse files

mfd: Add to_irq() member to asic3 gpio_chip structure



The gpio_to_irq() macro is now defined as __gpio_to_irq() instead of IRQ_GPIO().
The __gpio_to_irq() function returns -ENXIO if the referenced gpio_chip
structure does not define a to_irq() member.
This is true of the asic3 gpio_chip structure, and thus calls to gpio_to_irq()
now fail (for example from the gpio-vbus module).
This patch defines the to_irq() member in the asic3 gpio_chip structure.

Signed-off-by: default avatarPaul Parsons <lost.distance@yahoo.com>
Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
parent edcf3196
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -525,6 +525,11 @@ static void asic3_gpio_set(struct gpio_chip *chip,
	return;
}

static int asic3_gpio_to_irq(struct gpio_chip *chip, unsigned offset)
{
	return (offset < ASIC3_NUM_GPIOS) ? IRQ_BOARD_START + offset : -ENXIO;
}

static __init int asic3_gpio_probe(struct platform_device *pdev,
				   u16 *gpio_config, int num)
{
@@ -976,6 +981,7 @@ static int __init asic3_probe(struct platform_device *pdev)
	asic->gpio.set = asic3_gpio_set;
	asic->gpio.direction_input = asic3_gpio_direction_input;
	asic->gpio.direction_output = asic3_gpio_direction_output;
	asic->gpio.to_irq = asic3_gpio_to_irq;

	ret = asic3_gpio_probe(pdev,
			       pdata->gpio_config,