lkml.org 
[lkml]   [2022]   [Aug]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v1 0/9] fw_devlink improvements
    On Sun, 14 Aug 2022 at 11:29, Saravana Kannan <saravanak@google.com> wrote:
    >
    > +Naresh Kamboju
    >
    > On Tue, Aug 9, 2022 at 11:00 PM Saravana Kannan <saravanak@google.com> wrote:
    > >
    > > This patch series improves fw_devlink in the following ways:
    > >
    > > 1. It no longer cares about a fwnode having a "compatible" property. It
    > > figures this our more dynamically. The only expectation is that
    > > fwnode that are converted to devices actually get probed by a driver
    > > for the dependencies to be enforced correctly.
    > >
    > > 2. Finer grained dependency tracking. fw_devlink will now create device
    > > links from the consumer to the actual resource's device (if it has one,
    > > Eg: gpio_device) instead of the parent supplier device. This improves
    > > things like async suspend/resume ordering, potentially remove the need
    > > for frameworks to create device links, more parallelized async probing,
    > > and better sync_state() tracking.
    > >
    > > 3. Handle hardware/software quirks where a child firmware node gets
    > > populated as a device before its parent firmware node AND actually
    > > supplies a non-optional resource to the parent firmware node's
    > > device.
    > >
    > > 4. Way more robust at cycle handling (see patch for the insane cases).
    > >
    > > 5. Stops depending on OF_POPULATED to figure out some corner cases.
    > >
    > > 6. Simplifies the work that needs to be done by the firmware specific
    > > code.
    > >
    > > This took way too long to get done due to typo bugs I had in my rewrite or
    > > corner cases I had to find and handle. But it's fairly well tested at this
    > > point and I expect this to work properly.
    > >
    > > Abel & Doug,
    > >
    > > This should fix your cyclic dependency issues with your display. Can you
    > > give it a shot please?
    > >
    > > Alexander,
    > >
    > > This should fix your issue where the power domain device not having a
    > > compatible property. Can you give it a shot please?
    > >
    > > Tony,
    > >
    > > This should handle the odd case of the child being the supplier of the
    > > parent. Can you please give this a shot? I want to make sure the cycle
    > > detection code handles this properly and treats it like it's NOT a cycle.
    > >
    > > Geert,
    > >
    > > Can you test the renesas stuff I changed please? They should continue
    > > working like before. Any other sanity test on other hardware would be
    > > great too.
    > >
    > > Sudeep,
    > >
    > > I don't think there are any unfixed issues you had reported in my other
    > > patches that this series might fix, but it'll be nice if you could give
    > > this a sanity test.
    > >
    > > Guenter,
    > >
    > > I don't think this will fix the issue you reported in the amba patch, but
    > > it's worth a shot because it improves a bunch of corner case handling. So
    > > it might be better at handling whatever corner cases you might have in the
    > > qemu platforms.
    >
    > Hi Naresh,
    >
    > Thanks for testing these patches in the other thread. Mind giving your
    > tested-by here? I know you tested these patches in X15, but were there
    > also other boards these patches were tested on as part of the run?

    I have tested your patches and boot is successful on x15 device and Juno-r2.

    Tested-by: Linux Kernel Functional Testing <lkft@linaro.org>
    Tested-by: Naresh Kamboju <naresh.kamboju@linaro.org>

    > > Cc: Abel Vesa <abel.vesa@linaro.org>
    > > Cc: Alexander Stein <alexander.stein@ew.tq-group.com>
    > > Cc: Tony Lindgren <tony@atomide.com>
    > > Cc: Sudeep Holla <sudeep.holla@arm.com>
    > > Cc: Geert Uytterhoeven <geert@linux-m68k.org>
    > > Cc: John Stultz <jstultz@google.com>
    > > Cc: Doug Anderson <dianders@chromium.org>
    > > Cc: Guenter Roeck <linux@roeck-us.net>
    > >
    > > Saravana Kannan (9):
    > > driver core: fw_devlink: Don't purge child fwnode's consumer links
    > > driver core: fw_devlink: Improve check for fwnode with no
    > > device/driver
    > > soc: renesas: Move away from using OF_POPULATED for fw_devlink
    > > gpiolib: Clear the gpio_device's fwnode initialized flag before adding
    > > driver core: fw_devlink: Add DL_FLAG_CYCLE support to device links
    > > driver core: fw_devlink: Allow marking a fwnode link as being part of
    > > a cycle
    > > driver core: fw_devlink: Consolidate device link flag computation
    > > driver core: fw_devlink: Make cycle detection more robust
    > > of: property: Simplify of_link_to_phandle()
    > >
    > > drivers/base/core.c | 437 +++++++++++++++++++++-----------
    > > drivers/gpio/gpiolib.c | 6 +
    > > drivers/of/property.c | 84 +-----
    > > drivers/soc/renesas/rcar-sysc.c | 2 +-
    > > include/linux/device.h | 1 +
    > > include/linux/fwnode.h | 12 +-
    > > 6 files changed, 323 insertions(+), 219 deletions(-)
    > >
    > > --
    > > 2.37.1.559.g78731f0fdb-goog

    - Naresh

    \
     
     \ /
      Last update: 2022-08-15 12:18    [W:4.038 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site