Re: [RFC PATCH 1/1] gpio: sifive: To get gpio irq offset from device tree data

From: Andy Shevchenko
Date: Fri Nov 06 2020 - 04:25:06 EST


On Fri, Nov 6, 2020 at 4:59 AM Greentime Hu <greentime.hu@xxxxxxxxxx> wrote:
>
> We can get hwirq number of the gpio by its irq_data->hwirq so that we don't
> need to add more macros for different platforms. This patch is tested in
> SiFive Unleashed board and SiFive Unmatched board.

...

> + struct sifive_gpio *chip = gpiochip_get_data(gc);
> + struct irq_data *d = irq_get_irq_data(chip->irq_number[child]);

> + *parent = d->hwirq;

There is an API to get hwirq.

...

> + for (i = 0; i < ngpio; i++)
> + chip->irq_number[i] = irq_of_parse_and_map(node, i);

Can't you use platform_get_irq_optional()?



--
With Best Regards,
Andy Shevchenko