Hello, The first patch adds support for checking the sensor ID by reading MODEL_IDENTIFICATION register and seeing if it returns the value 0xEE The second patch adds support for continuous mode in the sensor by using buffers. We enable the sensor's continuous mode in the buffer_postenable function. Replaced the irq handler with a threaded irq handler in order to perform I2C reads for the data. The continuous mode can be disabled by disabling the buffer. Added a trigger to the device for the continuous mode. Also validating that the device uses the internal trigger provided by us. Changes in v4: - Added `validate_trigger` callback to check that this device uses its own trigger - Refactored the vl53l0x_clear_irq function - Minor code cleanups Changes in v3: - Added "asm/unaligned.h" include to fix `-Wimplicit-function-declaration`. - The above error was pointed during testing by kernel-test-robot - Link to v2: https://lore.kernel.org/linux-iio/20240902122557.129013-1-abhashkumarjha123@xxxxxxxxx/T/#t Changes in v2: - Added a trigger for the device - Added a poll function for the triggered buffer setup - Performed the data reading and pushing to buffers in the poll function - Minor code refactoring - Link to v1: https://lore.kernel.org/linux-iio/20240830201627.298264-1-abhashkumarjha123@xxxxxxxxx/T/#t Abhash Jha (2): iio: proximity: vl53l0x-i2c: Added sensor ID check iio: proximity: vl53l0x-i2c: Added continuous mode support drivers/iio/proximity/vl53l0x-i2c.c | 174 +++++++++++++++++++++++----- 1 file changed, 146 insertions(+), 28 deletions(-) -- 2.43.0