On Tue, 13 Jun 2023 15:50:16 +0200 Astrid Rost <astrid.rost@xxxxxxxx> wrote: > Add a more complete support for vncl4040 and vcnl4200, which allows to > change the distance of proximity detection and interrupt support for the > illuminance sensor. Series applied to the togreg branch of iio.git and pushed out as testing for 0-day to see if it can find anything we missed. Note that I don't plan another pull request this cycle, so this is now material for 6.6 and I'll be rebasing the tree after 6.5-rc1 is out. Thanks, Jonathan > > Proximity functionality: > - Interrupt support (new on vcnl4200). > > Proximity reduce the amount of interrupts: > - Adaptable integration time (new on vcnl4200) - the sampling rate > changes according to this value. > - Period - interrupt is asserted if the value is above or > below a certain threshold. > > Proximity change the activity distance: > - Oversampling ratio - Amount of LED pulses per measured raw value. > - Calibration bias - LED current calibration of the sensor. > > Illuminance functionality: > - Interrupt support. > > Illuminance reduce the amount of interrupts: > - Adaptable integration time - the sampling rate and scale changes > according to this value. > - Period – interrupt is asserted if the value is above or > below a certain threshold. > > changes v2: > - [PATCH v2 3/7] Fixed calculation of al_scale. > Fix the value of vcnl4040 according to the data-sheet. > Use div_u64 for the division. > scription for the branch > > changes v3: > - [PATCH v3 1-3/7] Add differences between the chips as variables in > chip-spec. > - [PATCH v3 4/7] Changed commit message. > - [PATCH v3 5/7] Use period instead of debounce time. This causes some > calculations as the period is a time and the chip allows to set a certain > amount of measurements above/below the threshold, before throwing an > interrupt. > - [PATCH v3 6/7] Changed commit message. > > changes v4: > - [PATCH v3 1-3/7] Fix setting correct als_it for vcnl4040. > - [PATCH v3 5/7] Use MICRO macro. > Fix values greater than 1 s for the proximity period. > > changes v5: > [PATCH v5 2/7]: > - Calculate ps_it from ps_it_times by usinh NSEC_PER_USEC. > [PATCH v5 3/7]: > - Calculate als_it from ps_it_times by using NSEC_PER_USEC. > - Store scale step factor in chip_spec. > - Fixes sampling_rate to ns + 20 %. > [PATCH v5 3/7 - 7/7] > - Changed formatting. > - Changed some variable names. > > - [PATCH v3 4/7] Changed commit message. > - [PATCH v3 5/7] Use period instead of debounce time. This causes some > calculations as the period is a time and the chip allows to set a certain > amount of measurements above/below the threshold, before throwing an > interrupt. > - [PATCH v3 6/7] Changed commit message. > > changes v4: > - [PATCH v3 1-3/7] Fix setting correct als_it for vcnl4040. > - [PATCH v3 5/7] Use MICRO macro. > Fix values greater than 1 s for the proximity period. > > changes v5: > [PATCH v5 2/7]: > - Calculate ps_it from ps_it_times by usinh NSEC_PER_USEC. > [PATCH v5 3/7]: > - Calculate als_it from ps_it_times by using NSEC_PER_USEC. > - Store scale step factor in chip_spec. > - Fixes sampling_rate to ns + 20 %. > [PATCH v5 3/7 - 7/7] > - Changed formatting. > - Changed some variable names. > > changes v6: > Added [PATCH v6 3/8]: > - Add switch case for IIO_PROXIMITY check. > [PATCH v5 1/7 - 7/7] > - Changed formatting. > [PATCH v5 3/7, 5/7, 6/7, 7/7] > - Changed loop. > - Changed some variable names. > > Astrid Rost (8): > [PATCH v6 1/8] iio: light: vcnl4000: Add proximity irq for vcnl4200 > [PATCH v6 2/8] iio: light: vcnl4000: Add proximity ps_it for vcnl4200 > [PATCH v6 3/8] iio: light: vcnl4000: Check type with switch case > [PATCH v6 4/8] iio: light: vcnl4000: Add als_it for vcnl4040/4200 > [PATCH v6 5/8] iio: light: vcnl4000: add illuminance irq vcnl4040/4200 > [PATCH v6 6/8] iio: light: vcnl4000: Add period for vcnl4040/4200 > [PATCH v6 7/8] iio: light: vcnl4000: Add oversampling_ratio for 4040/4200 > [PATCH v6 8/8] iio: light: vcnl4000: Add calibration bias for 4040/4200 > > drivers/iio/light/vcnl4000.c | 710 +++++++++++++++++++++++++++++++---- > 1 file changed, 643 insertions(+), 67 deletions(-) >