On Mon, 22 May 2023 16:26:14 +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. Something odd going on (superficially looks like a rebase mistake in patch 6) CHECK drivers/iio/amplifiers/ad8366.c In file included from ./include/linux/bits.h:6, from ./include/linux/bitops.h:6, from ./include/linux/kernel.h:22, from ./arch/x86/include/asm/percpu.h:27, from ./arch/x86/include/asm/current.h:10, from ./arch/x86/include/asm/processor.h:17, from ./arch/x86/include/asm/timex.h:5, from ./include/linux/timex.h:67, from ./include/linux/time32.h:13, from ./include/linux/time.h:60, from ./include/linux/stat.h:19, from ./include/linux/module.h:13, from drivers/iio/light/vcnl4000.c:21: ./include/vdso/bits.h:7:33: warning: initialized field overwritten [-Woverride-init] 7 | #define BIT(nr) (UL(1) << (nr)) | ^ drivers/iio/light/vcnl4000.c:1824:49: note: in expansion of macro ‘BIT’ 1824 | .info_mask_separate_available = BIT(IIO_CHAN_INFO_INT_TIME) | | ^~~ ./include/vdso/bits.h:7:33: note: (near initialization for ‘vcnl4040_channels[1].info_mask_separate_available’) 7 | #define BIT(nr) (UL(1) << (nr)) | ^ drivers/iio/light/vcnl4000.c:1824:49: note: in expansion of macro ‘BIT’ 1824 | .info_mask_separate_available = BIT(IIO_CHAN_INFO_INT_TIME) | | ^~~ > > 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. > > Astrid Rost (7): > [PATCH v4 1/7] iio: light: vcnl4000: Add proximity irq for vcnl4200 > [PATCH v4 2/7] iio: light: vcnl4000: Add proximity ps_it for vcnl4200 > [PATCH v4 3/7] iio: light: vcnl4000: Add als_it for vcnl4040/4200 > [PATCH v4 4/7] iio: light: vcnl4000: add illuminance irq vcnl4040/4200 > [PATCH v4 5/7] iio: light: vcnl4000: Add period for vcnl4040/4200 > [PATCH v4 6/7] iio: light: vcnl4000: Add oversampling_ratio for 4040/4200 > [PATCH v4 7/7] iio: light: vcnl4000: Add calibration bias for 4040/4200 > > drivers/iio/light/vcnl4000.c | 721 +++++++++++++++++++++++++++++++---- > 1 file changed, 653 insertions(+), 68 deletions(-) >