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