Quoting Brian Masney (2019-01-13 07:47:08) > Check to see if the hwirq is already associated with another virq on > this IRQ domain. If so, then disassociate it before associating the > hwirq with the new virq. > > This is a temporary hack that is needed in order to not break git > bisect for existing boards. The next patch in this series converts > spmi-gpio to be a hierarchical IRQ chip, then there are several patches > to update all of the device tree files, and finally this patch will be > reverted within the same patch series. > > IRQs for spmi-gpio are all initially setup without an IRQ hierarchy > on pmic-arb when mfd/qcom-spmi-pmic.c is probed (via the > devm_of_platform_populate call) due to the interrupts property in > device tree. Once spmi-gpio is converted to be a hierarchical IRQ chip > in the next patch, existing users of gpio[d]_to_irq() will call > pmic_gpio_to_irq(), and that will use the new IRQ chip code in > spmi-gpio that sets up the IRQ in an IRQ hierarchy. The hwirq is now > associated with two Linux virqs and interrupts will not work as > expected. This patch corrects that issue. > > Driver was tested using gpio-keys and iadc/vadc on the LG Nexus 5 > (hammerhead) phone. > > Signed-off-by: Brian Masney <masneyb@xxxxxxxxxxxxx> > --- Reviewed-by: Stephen Boyd <sboyd@xxxxxxxxxx>