[PATCH v3 2/4] irqchip/qcom-pdc: Switch to using IRQCHIP_PLATFORM_DRIVER helper macros

Marc Zyngier maz at kernel.org
Thu Aug 6 15:59:28 EDT 2020


On 2020-08-06 19:05, Saravana Kannan wrote:
> On Thu, Aug 6, 2020 at 5:12 AM Marc Zyngier <maz at kernel.org> wrote:
>> 
>> On 2020-08-06 02:24, John Stultz wrote:

[...]

>> >> + if (par_np == np)
>> >> +         par_np = NULL;
>> >> +
>> >> + /*
>> >> + * If there's a parent interrupt controller and  none of the parent
>> >> irq
>> >> + * domains have been registered, that means the parent interrupt
>> >> + * controller has not been initialized yet.  it's not time for this
>> >> + * interrupt controller to initialize. So, defer probe of this
>> >> + * interrupt controller. The actual initialization callback of this
>> >> + * interrupt controller can check for specific domains as necessary.
>> >> + */
>> >> + if (par_np && !irq_find_matching_host(np, DOMAIN_BUS_ANY))
>> >> +         return -EPROBE_DEFER;
>> >
>> > Yep. We're getting caught on the irq_find_matching_host() check. I'm a
>> > little lost as when I look at the qcom,pdc node in the dtsi its not
>> > under a parent controller (instead the soc node).
>> > Not sure if that's an issue in the dtsi or if par_np check needs to
>> > ignore the soc node and pass null?
>> 
>> I think you have nailed it. This checks for a domain attached to
>> the driver we are about to probe, and this domain cannot possibly
>> exist. Instead, it is the *parent* this should check for, as we
>> depend on it for successful probing.
> 
> Duh! Looks like I made a copy-paste/typo error. The comment clearly
> says I'm trying to check the parent and then I end up checking the
> node getting registered. I'm sure this will fix it.
> 
> Actually Nial sent an email a few hours after your and he had found
> the same issue. He even tested the fix with an irqchip driver and it
> fixed the probe issue.

OK, thanks for confirming. It would have been good if these patches
had seen a bit more testing.

> 
> I'm assuming you'll put up the patch yourself. Please let me know if
> you need me to send one.

I have queued this [1] in -next.

It'd be good if someone (John?) could give a Tested-by.

Thanks,

         M.

[1] 
https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git/commit/?h=irq/irqchip-next
-- 
Jazz is not dead. It just smells funny...



More information about the Linux-mediatek mailing list