From: Lee Jones <lee.jones@linaro.org>
To: Gwendal Grignou <gwendal@chromium.org>
Cc: andy.shevchenko@gmail.com, Guenter Roeck <groeck@chromium.org>,
Enric Balletbo i Serra <enric.balletbo@collabora.com>,
linux-kernel <linux-kernel@vger.kernel.org>,
kernel@collabora.com
Subject: Re: [PATCH v5] mfd: cros_ec_dev: Register cros_ec_accel_legacy driver as a subdevice
Date: Wed, 29 May 2019 12:44:54 +0100 [thread overview]
Message-ID: <20190529114454.GJ4574@dell> (raw)
In-Reply-To: <CAPUE2usfB3i4J7P4e_XdsMLV+VK7s+nS-mrD=D_WMpOHiouG2w@mail.gmail.com>
On Tue, 28 May 2019, Gwendal Grignou wrote:
> On Mon, Apr 1, 2019 at 8:46 PM Lee Jones <lee.jones@linaro.org> wrote:
> >
> > On Wed, 27 Feb 2019, Gwendal Grignou wrote:
> >
> > > From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
> > >
> > > With this patch, the cros_ec_ctl driver will register the legacy
> > > accelerometer driver (named cros_ec_accel_legacy) if it fails to
> > > register sensors through the usual path cros_ec_sensors_register().
> > > This legacy device is present on Chromebook devices with older EC
> > > firmware only supporting deprecated EC commands (Glimmer based devices).
> > >
> > > Tested-by: Gwendal Grignou <gwendal@chromium.org>
> > > Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
> > > Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
> > > Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
> > > ---
> > > Changes in v5:
> > > - Remove unnecessary white lines.
> > >
> > > Changes in v4:
> > > - [5/8] Nit: EC -> ECs (Lee Jones)
> > > - [5/8] Statically define cros_ec_accel_legacy_cells (Lee Jones)
> > >
> > > Changes in v3:
> > > - [5/8] Add the Reviewed-by Andy Shevchenko.
> > >
> > > Changes in v2:
> > > - [5/8] Add the Reviewed-by Gwendal.
> > >
> > > drivers/mfd/cros_ec_dev.c | 66 +++++++++++++++++++++++++++++++++++++++
> > > 1 file changed, 66 insertions(+)
> > >
> > > diff --git a/drivers/mfd/cros_ec_dev.c b/drivers/mfd/cros_ec_dev.c
> > > index d275deaecb12..64567bd0a081 100644
> > > --- a/drivers/mfd/cros_ec_dev.c
> > > +++ b/drivers/mfd/cros_ec_dev.c
> > > @@ -376,6 +376,69 @@ static void cros_ec_sensors_register(struct cros_ec_dev *ec)
> > > kfree(msg);
> > > }
> > >
> > > +static struct cros_ec_sensor_platform sensor_platforms[] = {
> > > + { .sensor_num = 0 },
> > > + { .sensor_num = 1 }
> > > +};
> >
> > I'm still very uncomfortable with this struct.
> >
> > Other than these indices, the sensors have no other distinguishing
> > features, thus there should be no need to identify or distinguish
> > between them in this way.
> When initializing the sensors, the IIO driver expect to find in the
> data structure pointed by dev_get_platdata(dev), in field sensor_num
> is stored the index assigned by the embedded controller to talk to a
> given sensor.
> cros_ec_sensors_register() use the same mechanism; in that function,
> the sensor_num field is populated from the output of an EC command
> MOTIONSENSE_CMD_INFO. In case of legacy mode, that command may not be
> available and in any case we know the EC has only either 2
> accelerometers present or nothing.
>
> For instance, let's compare a legacy device with a more recent one:
>
> legacy:
> type | id | sensor_num | device name
> accelerometer | 0 | 0 | cros-ec-accel.0
> accelerometer | 1 | 1 | cros-ec-accel.1
>
> Modern:
> type | id | sensor_num | device name
> accelerometer | 0 | 0 | cros-ec-accel.0
> accelerometer | 1 | 1 | cros-ec-accel.1
> gyroscope | 0 | 2 | cros-ec-gyro.0
> magnetometer | 0 | 3 | cros-ec-mag.0
> light | 0 | 4 | cros-ec-light.0
> ...
Why can't these numbers be assigned at runtime?
--
Lee Jones [李琼斯]
Linaro Services Technical Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
next prev parent reply other threads:[~2019-05-29 11:45 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-20 12:27 [PATCH v4 0/8] mfd: cros_ec: add subdevices and fixes Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 1/8] mfd: cros_ec: fail early if we cannot identify the EC Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 2/8] mfd: cros_ec: free IRQ automatically Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 3/8] mfd: cros_ec: Don't try to grab log when suspended Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 4/8] mfd: cros_ec_dev: Register cros-ec-rtc driver as a subdevice Enric Balletbo i Serra
2018-03-28 10:54 ` Lee Jones
2018-03-28 10:58 ` Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 5/8] mfd: cros_ec_dev: Register cros_ec_accel_legacy " Enric Balletbo i Serra
2018-03-28 11:03 ` Lee Jones
2018-04-04 8:03 ` Enric Balletbo Serra
2018-04-04 9:06 ` Enric Balletbo Serra
2018-04-16 13:20 ` Lee Jones
2019-02-28 1:03 ` Gwendal Grignou
2019-02-28 1:35 ` [PATCH v5] " Gwendal Grignou
2019-04-02 3:46 ` Lee Jones
2019-05-28 21:53 ` Gwendal Grignou
2019-05-29 11:44 ` Lee Jones [this message]
2019-05-29 18:38 ` Gwendal Grignou
2019-05-30 7:48 ` Lee Jones
2019-05-31 4:46 ` Gwendal Grignou
2019-05-31 8:13 ` Lee Jones
2019-05-31 21:02 ` Gwendal Grignou
2019-06-03 6:22 ` Lee Jones
2019-06-03 17:01 ` Gwendal Grignou
2018-03-20 12:27 ` [PATCH v4 6/8] mfd: cros_ec_dev: register shutdown function for debugfs Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 7/8] mfd: cros_ec_i2c: add ACPI module device table Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 8/8] mfd: cros_ec_i2c: moving the system sleep pm ops to late Enric Balletbo i Serra
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=20190529114454.GJ4574@dell \
--to=lee.jones@linaro.org \
--cc=andy.shevchenko@gmail.com \
--cc=enric.balletbo@collabora.com \
--cc=groeck@chromium.org \
--cc=gwendal@chromium.org \
--cc=kernel@collabora.com \
--cc=linux-kernel@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.