Re: RFC: qcom spmi/ssbi-gpio hierarchical irqchip problems

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Dec 27, 2018 at 05:48:52AM -0500, Brian Masney wrote:
> I tracked down the issue but I'm not exactly sure how to fix this yet.
> The initial device probing of spmi/spmi-pmic-arb.c and
> mfd/qcom-spmi-pmic.c triggers the function call
> qpnpint_irq_domain_alloc() in spmi-pmic-arb.c, which associates the
> hwirq with the Linux virq. There is no IRQ hierarchy setup at this point
> since pinctrl-spmi-gpio.c is not initialized yet. This is when Linux
> virq 54 is assigned to the pin for the volume up button.
> 
> Further along in the boot process, gpio-keys is initialized, which calls
> the alloc functions for the IRQ domains pinctrl-spmi-gpio.c and
> spmi-pmic-arb.c. This is when Linux virq 110 is assigned for the volume
> up button. The hwirq for the volume up button is now associated with two
> Linux virqs (54 and 110). Later, when a hardware interrupt occurs,
> irq_find_mapping() returns the first virq (54).

I was able to get this working by calling irq_domain_disassociate() when
this situation occurs, but it doesn't feel right. I sent out a v1 patch
series and CCed everyone on this thread to it. Let's move the discussion
there.

Brian



[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux