[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHp75VcYENL-LqJPzL4mY-cDkZ89m2MM=yRbs+_c4SjHMMvJ5g@mail.gmail.com>
Date: Mon, 1 Aug 2022 12:38:30 +0200
From: Andy Shevchenko <andy.shevchenko@...il.com>
To: Hans de Goede <hdegoede@...hat.com>
Cc: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Lee Jones <lee.jones@...aro.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Lee Jones <lee@...nel.org>, Andy Shevchenko <andy@...nel.org>,
Christophe JAILLET <christophe.jaillet@...adoo.fr>
Subject: Re: [PATCH v2 01/10] mfd: intel_soc_pmic: Fix an error handling path
in intel_soc_pmic_i2c_probe()
On Mon, Aug 1, 2022 at 11:52 AM Hans de Goede <hdegoede@...hat.com> wrote:
> On 8/1/22 11:29, Andy Shevchenko wrote:
> > On Mon, Aug 1, 2022 at 11:14 AM Andy Shevchenko
> > <andy.shevchenko@...il.com> wrote:
> >> On Mon, Aug 1, 2022 at 10:43 AM Hans de Goede <hdegoede@...hat.com> wrote:
> >>> On 7/31/22 22:12, Andy Shevchenko wrote:
...
> >>> Note alternatively we could just move the pwm_add_table() to just before the "return 0",
> >>> there is no strict ordering between adding the mfd devices and the pwm_add_table()
> >>> (the pwm device only becomes available after the pwm-driver has bound to the mfd
> >>> instantiated platform device which happens later).
> >
> > Just to be sure... How is it guaranteed that that happens later?
>
> Ah you are right, it could happen immediately if the driver is builtin and
> has already registered (if the PWM driver is a module, as it is on Fedora,
> then the driver will only bind once the module is loaded).
>
> Regardless there are no ordering guarantees between the probe() function of
> intel_soc_pmic and the consumer of the PWM device, so the consumer must
> be prepared to deal with the lookup not being present yet when its probe()
> function runs (*).
Would be nice to have, but isn't it the issue with all lookup tables
so far, e.g. consumers of GPIO ones are also affected the very same
way?
> *) ATM this is actually an unsolved problem and this works only because the PMIC
> drivers are builtin and i915, which consumes the PWM for backlight control
> is a module. Swapping the order does not impact this.
Even so, I think we can't change order right now because the issue is
much broader.
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists