lkml.org 
[lkml]   [2020]   [Jul]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v2 3/5] irqchip: Allow QCOM_PDC to be loadable as a permanent module
    From
    Date
    Quoting John Stultz (2020-07-10 15:44:18)
    > On Thu, Jul 9, 2020 at 11:02 PM Stephen Boyd <swboyd@chromium.org> wrote:
    > >
    > > Does it work? I haven't looked in detail but I worry that the child
    > > irqdomain (i.e. pinctrl-msm) would need to delay probing until this
    > > parent irqdomain is registered. Or has the hierarchical irqdomain code
    > > been updated to handle the parent child relationship and wait for things
    > > to probe or be loaded?
    >
    > So I can't say I know the underlying hardware particularly well, but
    > I've been using this successfully on the Dragonboard 845c with both
    > static builds as well as module enabled builds.
    > And the same patch has been in the android-mainline and android-5.4
    > kernels for a while without objections from QCOM.
    >
    > As to the probe ordering question, Saravana can maybe speak in more
    > detail if it's involved in this case but the fw_devlink code has
    > addressed many of these sorts of ordering issues.
    > However, I'm not sure if I'm lucking into the right probe order, as we
    > have been able to boot android-mainline w/ both fw_devlink=on and
    > fw_devlink=off (though in the =off case, we need
    > deferred_probe_timeout=30 to give us a bit more time for modules to
    > load after init starts).
    >

    Ok I looked at the code (sorry for not checking earlier) and I see this in
    msm_gpio_init()

    np = of_parse_phandle(pctrl->dev->of_node, "wakeup-parent", 0);
    if (np) {
    chip->irq.parent_domain = irq_find_matching_host(np,
    DOMAIN_BUS_WAKEUP);
    of_node_put(np);
    if (!chip->irq.parent_domain)
    return -EPROBE_DEFER;

    so it looks like we'll probe defer the pinctrl driver until the pdc module
    loads. Meaning it should work to have pinctrl builtin and pdc as a module.

    \
     
     \ /
      Last update: 2020-07-11 01:28    [W:4.405 / U:0.228 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site