linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: <Tudor.Ambarus@microchip.com>
To: <saravanak@google.com>
Cc: <gregkh@linuxfoundation.org>, <rafael@kernel.org>,
	<kernel-team@android.com>, <linux-kernel@vger.kernel.org>,
	<Jisheng.Zhang@synaptics.com>, <khilman@baylibre.com>,
	<john.stultz@linaro.org>, <nsaenzjulienne@suse.de>,
	<maz@kernel.org>, <geert@linux-m68k.org>,
	<Nicolas.Ferre@microchip.com>, <Ludovic.Desroches@microchip.com>,
	<alexandre.belloni@bootlin.com>, <Claudiu.Beznea@microchip.com>
Subject: Re: [PATCH v1 5/5] driver core: Set fw_devlink=on by default
Date: Thu, 28 Jan 2021 10:59:24 +0000	[thread overview]
Message-ID: <97a1fe96-ee2c-43cf-58fe-6ed910d3fb2c@microchip.com> (raw)
In-Reply-To: <CAGETcx-sZC4nKi9VKYUgaBnH4Kf3FraKEe+CMXxm_-DWjz9t5w@mail.gmail.com>

Hi, Saravana,

On 1/25/21 8:16 PM, Saravana Kannan wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> On Mon, Jan 25, 2021 at 9:05 AM <Tudor.Ambarus@microchip.com> wrote:
>>
>> Hi, Saravana,
>>
>> On 12/18/20 5:17 AM, Saravana Kannan wrote:
>>> Cyclic dependencies in some firmware was one of the last remaining
>>> reasons fw_devlink=on couldn't be set by default. Now that cyclic
>>> dependencies don't block probing, set fw_devlink=on by default.
>>>
>>> Setting fw_devlink=on by default brings a bunch of benefits (currently,
>>> only for systems with device tree firmware):
>>> * Significantly cuts down deferred probes.
>>> * Device probe is effectively attempted in graph order.
>>> * Makes it much easier to load drivers as modules without having to
>>>   worry about functional dependencies between modules (depmod is still
>>>   needed for symbol dependencies).
>>>
>>> If this patch prevents some devices from probing, it's very likely due
>>> to the system having one or more device drivers that "probe"/set up a
>>> device (DT node with compatible property) without creating a struct
>>> device for it.  If we hit such cases, the device drivers need to be
>>> fixed so that they populate struct devices and probe them like normal
>>> device drivers so that the driver core is aware of the devices and their
>>> status. See [1] for an example of such a case.
>>>
>>> [1] - https://lore.kernel.org/lkml/CAGETcx9PiX==mLxB9PO8Myyk6u2vhPVwTMsA5NkD-ywH5xhusw@mail.gmail.com/
>>> Signed-off-by: Saravana Kannan <saravanak@google.com>
>>
>> next-20210125 fails to boot on at91 sama5d2 platforms. No output is
>> seen, unless earlyprintk is enabled.
>>
>> I have bisected this to commit e590474768f1cc04 ("driver core: Set
>> fw_devlink=on by default").
>>
>> I've attached a log that I'm seeing on a sama5d2_xplained (sama5_defconfig
>> and arch/arm/boot/dts/at91-sama5d2_xplained.dts). I enabled the
>> following logs:
>> 1. The ones in device_links_check_suppliers()
>> 2. The ones in device_link_add()
>> 3. initcall_debug=1
>>
>> There seem to be some probe fails due to the pmc supplier not being ready:
>> calling  at_xdmac_init+0x0/0x18 @ 1
>> platform f0010000.dma-controller: probe deferral - supplier f0014000.pmc not ready
>> platform f0004000.dma-controller: probe deferral - supplier f0014000.pmc not ready
>> initcall at_xdmac_init+0x0/0x18 returned -19 after 19531 usecs
>>
>> calling  udc_driver_init+0x0/0x18 @ 1
>> platform 300000.gadget: probe deferral - supplier f0014000.pmc not ready
>> initcall udc_driver_init+0x0/0x18 returned -19 after 7524 usecs
>>
>> There are others too. I'm checking them.
> 
> Thanks Tudor. I'll look into this within a few days. I'm also looking
> into coming up with a more generic solution.
> 

I've sent a patch addressing this at:
https://lore.kernel.org/lkml/20210128104446.164269-1-tudor.ambarus@microchip.com/T/#u

Can you please take a look?
Cheers,
ta

  reply	other threads:[~2021-01-28 11:00 UTC|newest]

Thread overview: 89+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-18  3:16 [PATCH v1 0/5] Enable fw_devlink=on by default Saravana Kannan
2020-12-18  3:16 ` [PATCH v1 1/5] driver core: Add debug logs for device link related probe deferrals Saravana Kannan
2020-12-18  3:17 ` [PATCH v1 2/5] driver core: Add device link support for INFERRED flag Saravana Kannan
2020-12-18  3:17 ` [PATCH v1 3/5] driver core: Have fw_devlink use DL_FLAG_INFERRED Saravana Kannan
2020-12-18  3:17 ` [PATCH v1 4/5] driver core: Handle cycles in device links created by fw_devlink Saravana Kannan
2020-12-18  6:39   ` kernel test robot
2020-12-18  6:39   ` [RFC PATCH] driver core: fw_devlink_relax_cycle() can be static kernel test robot
2020-12-18  6:48   ` [PATCH v1 4/5] driver core: Handle cycles in device links created by fw_devlink kernel test robot
2020-12-18  7:12   ` kernel test robot
2020-12-18  3:17 ` [PATCH v1 5/5] driver core: Set fw_devlink=on by default Saravana Kannan
     [not found]   ` <CGME20210111111245eucas1p15acde7ecc2ca7f7782beb8ed74c72022@eucas1p1.samsung.com>
2021-01-11 11:12     ` Marek Szyprowski
     [not found]       ` <CGME20210111141814eucas1p1f388df07b789693a999042b27f0d8c2a@eucas1p1.samsung.com>
2021-01-11 14:18         ` Marek Szyprowski
2021-01-11 21:47           ` Saravana Kannan
2021-01-12  7:11             ` Marek Szyprowski
2021-01-12 20:51               ` Saravana Kannan
2021-01-13  7:04                 ` Marek Szyprowski
2021-01-13 19:23                   ` Saravana Kannan
2021-01-14  7:36                     ` Marek Szyprowski
2021-01-14 18:08                       ` Saravana Kannan
2021-01-18 17:43                 ` Geert Uytterhoeven
2021-01-17 23:01   ` Michael Walle
2021-01-18 21:01     ` Saravana Kannan
2021-01-19 10:41       ` Michael Walle
2021-01-20  0:00         ` Saravana Kannan
2021-01-18 17:39   ` Geert Uytterhoeven
2021-01-18 17:59     ` Marc Zyngier
2021-01-18 19:16       ` Geert Uytterhoeven
2021-01-18 19:30         ` Marc Zyngier
2021-01-18 21:18         ` Saravana Kannan
2021-01-19  9:05           ` Geert Uytterhoeven
2021-01-19 18:08             ` Saravana Kannan
2021-01-19 21:50               ` Saravana Kannan
2021-01-20  9:40                 ` Geert Uytterhoeven
2021-01-20 14:26                   ` Geert Uytterhoeven
2021-01-20 17:22                     ` Saravana Kannan
2021-01-21 16:04                       ` Geert Uytterhoeven
2021-01-25 23:30                         ` Saravana Kannan
2021-01-26  8:25                           ` Geert Uytterhoeven
2021-01-20  9:11               ` Geert Uytterhoeven
2021-01-21  8:22   ` [TEST PATCH v1] driver: core: Make fw_devlink=on more forgiving Saravana Kannan
2021-01-21  8:27     ` Saravana Kannan
2021-01-21 10:37       ` Geert Uytterhoeven
2021-01-22  1:07         ` Saravana Kannan
2021-01-21 10:33     ` Marek Szyprowski
2021-01-25 17:05   ` [PATCH v1 5/5] driver core: Set fw_devlink=on by default Tudor.Ambarus
2021-01-25 18:16     ` Saravana Kannan
2021-01-28 10:59       ` Tudor.Ambarus [this message]
2021-01-28 17:04         ` Saravana Kannan
2021-02-10  5:54   ` Guenter Roeck
2021-02-10  8:20     ` Saravana Kannan
2021-02-10 15:10       ` Guenter Roeck
2021-02-10 20:52         ` Saravana Kannan
2021-02-10 21:21           ` Guenter Roeck
2021-02-17  2:39             ` Saravana Kannan
2021-02-17  3:05               ` Guenter Roeck
2021-02-17  3:13                 ` Saravana Kannan
2020-12-18 21:11 ` [PATCH v1 0/5] Enable " Saravana Kannan
2020-12-21  8:18 ` Jisheng Zhang
     [not found]   ` <CAHp75VfqL1QuvjCZ7p23e_2qhY3DUgVNaS--Uk1mEoEHsD8GBA@mail.gmail.com>
2021-01-14 16:49     ` Saravana Kannan
2020-12-21  9:48 ` Rafael J. Wysocki
2021-01-07 20:05 ` Greg Kroah-Hartman
2021-01-07 21:53   ` Saravana Kannan
2021-01-13 11:11   ` Marc Zyngier
2021-01-13 15:27     ` Jon Hunter
2021-01-13 21:29       ` Saravana Kannan
2021-01-14 11:34         ` Jon Hunter
2021-01-14 16:40           ` Saravana Kannan
2021-01-14 16:47             ` Jon Hunter
2021-01-14 16:52               ` Saravana Kannan
2021-01-14 18:55                 ` Jon Hunter
2021-01-14 21:50                   ` Saravana Kannan
2021-01-15 16:12                     ` Jon Hunter
2021-01-15 17:44                       ` Saravana Kannan
2021-01-13 20:56     ` Saravana Kannan
2021-01-13 11:30 ` Jon Hunter
2021-01-13 21:26   ` Saravana Kannan
2021-01-14 16:11     ` Jon Hunter
2021-01-14 16:47       ` Saravana Kannan
2021-01-14 16:56         ` Jon Hunter
2021-01-28 15:03           ` Jon Hunter
2021-01-28 17:27             ` Saravana Kannan
2021-02-11  0:02             ` Saravana Kannan
2021-02-11 15:03               ` Rafael J. Wysocki
2021-02-11 17:14                 ` Saravana Kannan
2021-02-11 17:48                   ` Rafael J. Wysocki
2021-02-12  3:04                     ` Saravana Kannan
2021-01-13 11:44 ` Nicolas Saenz Julienne
2021-01-13 11:48   ` Marc Zyngier
2021-01-13 21:27     ` Saravana Kannan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=97a1fe96-ee2c-43cf-58fe-6ed910d3fb2c@microchip.com \
    --to=tudor.ambarus@microchip.com \
    --cc=Claudiu.Beznea@microchip.com \
    --cc=Jisheng.Zhang@synaptics.com \
    --cc=Ludovic.Desroches@microchip.com \
    --cc=Nicolas.Ferre@microchip.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=geert@linux-m68k.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=john.stultz@linaro.org \
    --cc=kernel-team@android.com \
    --cc=khilman@baylibre.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maz@kernel.org \
    --cc=nsaenzjulienne@suse.de \
    --cc=rafael@kernel.org \
    --cc=saravanak@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).