From: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
To: Jonathan Cameron <jic23@kernel.org>
Cc: Lorenzo Bianconi <lorenzo@kernel.org>, linux-iio@vger.kernel.org
Subject: Re: [PATCH] iio: imu: st_lsm6dsx: move max_fifo_size in st_lsm6dsx_fifo_ops
Date: Sun, 26 Sep 2021 14:58:45 +0200 [thread overview]
Message-ID: <YVBuhVU/fcJjgTU6@lore-desk> (raw)
In-Reply-To: <20210926125916.6540ba7a@jic23-huawei>
[-- Attachment #1: Type: text/plain, Size: 5993 bytes --]
> On Thu, 23 Sep 2021 11:08:24 +0200
> Lorenzo Bianconi <lorenzo@kernel.org> wrote:
>
> > This patch does not introduce any logic change, just small code
> > rearrangement.
> Hi Lorenzo,
>
> Why? I can make an educated guess that it is to put all the fifo related stuff
> in one place, but you probably need to state that in the patch description.
yes, it seems to me it is logically correct to have fifo configuration in
fifo_ops. I will post v2 adding this in the commit log.
Regards,
Lorenzo
>
> Thanks,
>
> Jonathan
>
> >
> > Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
> > ---
> > drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h | 4 ++--
> > drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c | 16 +++++++++-------
> > 2 files changed, 11 insertions(+), 9 deletions(-)
> >
> > diff --git a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h
> > index 5ef55763a6cc..6ac4eac36458 100644
> > --- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h
> > +++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h
> > @@ -143,6 +143,7 @@ struct st_lsm6dsx_fs_table_entry {
> > * @read_fifo: Read FIFO callback.
> > * @fifo_th: FIFO threshold register info (addr + mask).
> > * @fifo_diff: FIFO diff status register info (addr + mask).
> > + * @max_size: Sensor max fifo length in FIFO words.
> > * @th_wl: FIFO threshold word length.
> > */
> > struct st_lsm6dsx_fifo_ops {
> > @@ -156,6 +157,7 @@ struct st_lsm6dsx_fifo_ops {
> > u8 addr;
> > u16 mask;
> > } fifo_diff;
> > + u16 max_size;
> > u8 th_wl;
> > };
> >
> > @@ -271,7 +273,6 @@ struct st_lsm6dsx_ext_dev_settings {
> > * @reset: register address for reset.
> > * @boot: register address for boot.
> > * @bdu: register address for Block Data Update.
> > - * @max_fifo_size: Sensor max fifo length in FIFO words.
> > * @id: List of hw id/device name supported by the driver configuration.
> > * @channels: IIO channels supported by the device.
> > * @irq_config: interrupts related registers.
> > @@ -288,7 +289,6 @@ struct st_lsm6dsx_settings {
> > struct st_lsm6dsx_reg reset;
> > struct st_lsm6dsx_reg boot;
> > struct st_lsm6dsx_reg bdu;
> > - u16 max_fifo_size;
> > struct {
> > enum st_lsm6dsx_hw_id hw_id;
> > const char *name;
> > diff --git a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
> > index db45f1fc0b81..0f54df85134a 100644
> > --- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
> > +++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
> > @@ -102,7 +102,6 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x22,
> > .mask = BIT(6),
> > },
> > - .max_fifo_size = 32,
> > .id = {
> > {
> > .hw_id = ST_LSM9DS1_ID,
> > @@ -194,6 +193,9 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .mask = BIT(4),
> > },
> > },
> > + .fifo_ops = {
> > + .max_size = 32,
> > + },
> > },
> > {
> > .reset = {
> > @@ -208,7 +210,6 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x12,
> > .mask = BIT(6),
> > },
> > - .max_fifo_size = 1365,
> > .id = {
> > {
> > .hw_id = ST_LSM6DS3_ID,
> > @@ -329,6 +330,7 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x3a,
> > .mask = GENMASK(11, 0),
> > },
> > + .max_size = 1365,
> > .th_wl = 3, /* 1LSB = 2B */
> > },
> > .ts_settings = {
> > @@ -374,7 +376,6 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x12,
> > .mask = BIT(6),
> > },
> > - .max_fifo_size = 682,
> > .id = {
> > {
> > .hw_id = ST_LSM6DS3H_ID,
> > @@ -495,6 +496,7 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x3a,
> > .mask = GENMASK(11, 0),
> > },
> > + .max_size = 682,
> > .th_wl = 3, /* 1LSB = 2B */
> > },
> > .ts_settings = {
> > @@ -540,7 +542,6 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x12,
> > .mask = BIT(6),
> > },
> > - .max_fifo_size = 682,
> > .id = {
> > {
> > .hw_id = ST_LSM6DSL_ID,
> > @@ -677,6 +678,7 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x3a,
> > .mask = GENMASK(10, 0),
> > },
> > + .max_size = 682,
> > .th_wl = 3, /* 1LSB = 2B */
> > },
> > .ts_settings = {
> > @@ -759,7 +761,6 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x12,
> > .mask = BIT(6),
> > },
> > - .max_fifo_size = 512,
> > .id = {
> > {
> > .hw_id = ST_LSM6DSR_ID,
> > @@ -910,6 +911,7 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x3a,
> > .mask = GENMASK(9, 0),
> > },
> > + .max_size = 512,
> > .th_wl = 1,
> > },
> > .ts_settings = {
> > @@ -984,7 +986,6 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x12,
> > .mask = BIT(6),
> > },
> > - .max_fifo_size = 512,
> > .id = {
> > {
> > .hw_id = ST_ASM330LHH_ID,
> > @@ -1119,6 +1120,7 @@ static const struct st_lsm6dsx_settings st_lsm6dsx_sensor_settings[] = {
> > .addr = 0x3a,
> > .mask = GENMASK(9, 0),
> > },
> > + .max_size = 512,
> > .th_wl = 1,
> > },
> > .ts_settings = {
> > @@ -1603,7 +1605,7 @@ int st_lsm6dsx_set_watermark(struct iio_dev *iio_dev, unsigned int val)
> > struct st_lsm6dsx_hw *hw = sensor->hw;
> > int err;
> >
> > - if (val < 1 || val > hw->settings->max_fifo_size)
> > + if (val < 1 || val > hw->settings->fifo_ops.max_size)
> > return -EINVAL;
> >
> > mutex_lock(&hw->conf_lock);
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
prev parent reply other threads:[~2021-09-26 12:58 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-23 9:08 [PATCH] iio: imu: st_lsm6dsx: move max_fifo_size in st_lsm6dsx_fifo_ops Lorenzo Bianconi
2021-09-26 11:59 ` Jonathan Cameron
2021-09-26 12:58 ` Lorenzo Bianconi [this message]
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=YVBuhVU/fcJjgTU6@lore-desk \
--to=lorenzo.bianconi@redhat.com \
--cc=jic23@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=lorenzo@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.