lkml.org 
[lkml]   [2020]   [Sep]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] iio: sx9310: Prefer async probe
On Tue, 1 Sep 2020 00:03:55 -0700
Stephen Boyd <swboyd@chromium.org> wrote:

> Quoting Doug Anderson (2020-08-31 11:59:37)
> > On Sat, Aug 29, 2020 at 10:18 AM Jonathan Cameron <jic23@kernel.org> wrote:
> > > Agreed. However, I'd like a comment next to the place we turn it on
> > > saying what delays we are trying to mitigate by enabling it in this
> > > driver.
> >
> > OK, I used function graph to get a trace. Some of the time is simply
> > i2c transfers, which we do A LOT of during initialization (and i2c
> > transfers aren't known for being instant). However, that's not the
> > big problem. Check out the regmap_read_poll_timeout() in
> > sx9310_init_compensation(). 20 ms per sleep with a 2 second timeout.
> > This seems to eat over around 220 ms of the time on my system.
> >
> > So how do you want to do this? Do you want me to re-post the patch
> > and mention the regmap_read_poll_timeout() in the commit message? Do
> > you want to just add that to the commit message yourself?
> >
>
> I think the suggestion is to put a comment next to the
> PROBE_PREFER_ASYNCHRONOUS flag indicating that
> sx9310_init_compensation() can take a while.

Yup. That's what I meant. Sorry for lack of clarity.
A comment in the code stops others copying it without making sure they
understand whether it is relevant in their case. No one is going
to look in commit messages.

> Should the compensation be
> delayed even further though to some time when userspace opens the device
> node?

It's tricky because we may hit it on an individual sysfs read.
We could spin off a thread to do it I suppose, though that would be
more or less the same as allowing async probe.

Jonathan


\
 
 \ /
  Last update: 2020-09-01 15:48    [W:0.085 / U:0.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site