[00/13] various st_lsm6dsx fixes and missing bits
mbox series

Message ID cover.1570367532.git.lorenzo@kernel.org
Headers show
Series
  • various st_lsm6dsx fixes and missing bits
Related show

Message

Lorenzo Bianconi Oct. 6, 2019, 1:21 p.m. UTC
This series fixes some corner cases introduced with LSM9DS1 support and with
the one that has added wake-up event support. In particular it fixes a crash
due to missing HW FIFO support for LSM9DS1.
Moreover I introduced the missing wake-up event support for LSM6DSO/LSM6DSOX
sensor
Add missing dts documentation for wake-up event and the capability to enable it
through platformdata.
Code cleanup.

Lorenzo Bianconi (13):
  iio: imu: st_lsm6dsx: use st_lsm6dsx_read_locked in
    st_lsm6dsx_report_motion_event
  iio: imu: st_lsm6dsx: add sanity check for read_fifo pointer
  iio: imu: st_lsm6dsx: move irq related definitions in irq_config
  iio: imu: st_lsm6dsx: do not access active-low/open-drain regs if not
    supported
  iio: imu: st_lsm6dsx: move bdu/boot and reset register info in
    hw_settings
  iio: imu: st_lsm6dsx: always check enable_reg in
    st_lsm6dsx_event_setup
  iio: imu: st_lsm6dsx: rely on st_lsm6dsx_update_bits_locked
    configuring events
  iio: imu: st_lsm6dsx: grab conf mutex in st_lsm6dsx_write_event_config
  iio: imu: st_lsm6dsx: fix checkpatch warning
  iio: imu: st_lsm6dsx: add wakeup_source in st_sensors_platform_data
  iio: imu: st_lsm6dsx: add missing kernel documenation
  dt-bindings: iio: imu: st_lsm6dsx: document missing wakeup-source
    property
  iio: imu: st_lsm6dsx: enable wake-up event for LSM6DSO

 .../bindings/iio/imu/st_lsm6dsx.txt           |   1 +
 drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h       |  35 +-
 .../iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c    |   3 +
 drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c  | 588 ++++++++++++------
 .../linux/platform_data/st_sensors_pdata.h    |   2 +
 5 files changed, 440 insertions(+), 189 deletions(-)

Comments

Jonathan Cameron Oct. 12, 2019, 12:20 p.m. UTC | #1
On Sun,  6 Oct 2019 15:21:54 +0200
Lorenzo Bianconi <lorenzo@kernel.org> wrote:

> This series fixes some corner cases introduced with LSM9DS1 support and with
> the one that has added wake-up event support. In particular it fixes a crash
> due to missing HW FIFO support for LSM9DS1.
> Moreover I introduced the missing wake-up event support for LSM6DSO/LSM6DSOX
> sensor
> Add missing dts documentation for wake-up event and the capability to enable it
> through platformdata.
> Code cleanup.

Hmm. This is going to be very messy.  In theory quite a few of these apply
to stuff in 5.4 but I assume won't cleanly apply given other changes.  You
may want to think about doing backports of the important parts to 5.4.

I'll apply the lot for 5.5.

Thanks,

Jonathan

> 
> Lorenzo Bianconi (13):
>   iio: imu: st_lsm6dsx: use st_lsm6dsx_read_locked in
>     st_lsm6dsx_report_motion_event
>   iio: imu: st_lsm6dsx: add sanity check for read_fifo pointer
>   iio: imu: st_lsm6dsx: move irq related definitions in irq_config
>   iio: imu: st_lsm6dsx: do not access active-low/open-drain regs if not
>     supported
>   iio: imu: st_lsm6dsx: move bdu/boot and reset register info in
>     hw_settings
>   iio: imu: st_lsm6dsx: always check enable_reg in
>     st_lsm6dsx_event_setup
>   iio: imu: st_lsm6dsx: rely on st_lsm6dsx_update_bits_locked
>     configuring events
>   iio: imu: st_lsm6dsx: grab conf mutex in st_lsm6dsx_write_event_config
>   iio: imu: st_lsm6dsx: fix checkpatch warning
>   iio: imu: st_lsm6dsx: add wakeup_source in st_sensors_platform_data
>   iio: imu: st_lsm6dsx: add missing kernel documenation
>   dt-bindings: iio: imu: st_lsm6dsx: document missing wakeup-source
>     property
>   iio: imu: st_lsm6dsx: enable wake-up event for LSM6DSO
> 
>  .../bindings/iio/imu/st_lsm6dsx.txt           |   1 +
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h       |  35 +-
>  .../iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c    |   3 +
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c  | 588 ++++++++++++------
>  .../linux/platform_data/st_sensors_pdata.h    |   2 +
>  5 files changed, 440 insertions(+), 189 deletions(-)
>
Lorenzo Bianconi Oct. 12, 2019, 12:26 p.m. UTC | #2
>
> On Sun,  6 Oct 2019 15:21:54 +0200
> Lorenzo Bianconi <lorenzo@kernel.org> wrote:
>
> > This series fixes some corner cases introduced with LSM9DS1 support and with
> > the one that has added wake-up event support. In particular it fixes a crash
> > due to missing HW FIFO support for LSM9DS1.
> > Moreover I introduced the missing wake-up event support for LSM6DSO/LSM6DSOX
> > sensor
> > Add missing dts documentation for wake-up event and the capability to enable it
> > through platformdata.
> > Code cleanup.
>
> Hmm. This is going to be very messy.  In theory quite a few of these apply
> to stuff in 5.4 but I assume won't cleanly apply given other changes.  You
> may want to think about doing backports of the important parts to 5.4.
>
> I'll apply the lot for 5.5.

AFAIU just LSM9DS1 support will go in 5.4 (correct? Sean's series will
go in 5.5) so I will backport just LSM9DS1 fixes to 5.4 (I guess 3-4
patches).

Regards,
Lorenzo

>
> Thanks,
>
> Jonathan
>
> >
> > Lorenzo Bianconi (13):
> >   iio: imu: st_lsm6dsx: use st_lsm6dsx_read_locked in
> >     st_lsm6dsx_report_motion_event
> >   iio: imu: st_lsm6dsx: add sanity check for read_fifo pointer
> >   iio: imu: st_lsm6dsx: move irq related definitions in irq_config
> >   iio: imu: st_lsm6dsx: do not access active-low/open-drain regs if not
> >     supported
> >   iio: imu: st_lsm6dsx: move bdu/boot and reset register info in
> >     hw_settings
> >   iio: imu: st_lsm6dsx: always check enable_reg in
> >     st_lsm6dsx_event_setup
> >   iio: imu: st_lsm6dsx: rely on st_lsm6dsx_update_bits_locked
> >     configuring events
> >   iio: imu: st_lsm6dsx: grab conf mutex in st_lsm6dsx_write_event_config
> >   iio: imu: st_lsm6dsx: fix checkpatch warning
> >   iio: imu: st_lsm6dsx: add wakeup_source in st_sensors_platform_data
> >   iio: imu: st_lsm6dsx: add missing kernel documenation
> >   dt-bindings: iio: imu: st_lsm6dsx: document missing wakeup-source
> >     property
> >   iio: imu: st_lsm6dsx: enable wake-up event for LSM6DSO
> >
> >  .../bindings/iio/imu/st_lsm6dsx.txt           |   1 +
> >  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h       |  35 +-
> >  .../iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c    |   3 +
> >  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c  | 588 ++++++++++++------
> >  .../linux/platform_data/st_sensors_pdata.h    |   2 +
> >  5 files changed, 440 insertions(+), 189 deletions(-)
> >
>
Jonathan Cameron Oct. 12, 2019, 1:26 p.m. UTC | #3
On Sat, 12 Oct 2019 14:26:24 +0200
Lorenzo Bianconi <lorenzo.bianconi83@gmail.com> wrote:

> >
> > On Sun,  6 Oct 2019 15:21:54 +0200
> > Lorenzo Bianconi <lorenzo@kernel.org> wrote:
> >  
> > > This series fixes some corner cases introduced with LSM9DS1 support and with
> > > the one that has added wake-up event support. In particular it fixes a crash
> > > due to missing HW FIFO support for LSM9DS1.
> > > Moreover I introduced the missing wake-up event support for LSM6DSO/LSM6DSOX
> > > sensor
> > > Add missing dts documentation for wake-up event and the capability to enable it
> > > through platformdata.
> > > Code cleanup.  
> >
> > Hmm. This is going to be very messy.  In theory quite a few of these apply
> > to stuff in 5.4 but I assume won't cleanly apply given other changes.  You
> > may want to think about doing backports of the important parts to 5.4.
> >
> > I'll apply the lot for 5.5.  
> 
> AFAIU just LSM9DS1 support will go in 5.4 (correct? Sean's series will
> go in 5.5) so I will backport just LSM9DS1 fixes to 5.4 (I guess 3-4
> patches).
> 
That is what I'd expect.

Thanks,

Jonathan

> Regards,
> Lorenzo
> 
> >
> > Thanks,
> >
> > Jonathan
> >  
> > >
> > > Lorenzo Bianconi (13):
> > >   iio: imu: st_lsm6dsx: use st_lsm6dsx_read_locked in
> > >     st_lsm6dsx_report_motion_event
> > >   iio: imu: st_lsm6dsx: add sanity check for read_fifo pointer
> > >   iio: imu: st_lsm6dsx: move irq related definitions in irq_config
> > >   iio: imu: st_lsm6dsx: do not access active-low/open-drain regs if not
> > >     supported
> > >   iio: imu: st_lsm6dsx: move bdu/boot and reset register info in
> > >     hw_settings
> > >   iio: imu: st_lsm6dsx: always check enable_reg in
> > >     st_lsm6dsx_event_setup
> > >   iio: imu: st_lsm6dsx: rely on st_lsm6dsx_update_bits_locked
> > >     configuring events
> > >   iio: imu: st_lsm6dsx: grab conf mutex in st_lsm6dsx_write_event_config
> > >   iio: imu: st_lsm6dsx: fix checkpatch warning
> > >   iio: imu: st_lsm6dsx: add wakeup_source in st_sensors_platform_data
> > >   iio: imu: st_lsm6dsx: add missing kernel documenation
> > >   dt-bindings: iio: imu: st_lsm6dsx: document missing wakeup-source
> > >     property
> > >   iio: imu: st_lsm6dsx: enable wake-up event for LSM6DSO
> > >
> > >  .../bindings/iio/imu/st_lsm6dsx.txt           |   1 +
> > >  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h       |  35 +-
> > >  .../iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c    |   3 +
> > >  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c  | 588 ++++++++++++------
> > >  .../linux/platform_data/st_sensors_pdata.h    |   2 +
> > >  5 files changed, 440 insertions(+), 189 deletions(-)
> > >  
> >  
> 
>