[PATCH v9 0/2] iio: proximity: driver for vcnl3020
From: Ivan Mikhaylov
Date: Fri Apr 17 2020 - 14:20:36 EST
Add proximity sensor driver for Vishay vcnl3020. Only on-demand
measurement is supported for now.
Changes from v8:
1. add vcnl3020 prefix into get_and_apply_property function.
2. add bsd license into yaml.
3. vishay,led-current-milliamp -> vishay,led-current-microamp.
4. add default value into vishay,led-current-microamp and change
register values into microamps.
Changes from v7:
1. forgot to add Reviewed-by tag.
Changes from v6:
1. minor changes
1.1 remove VCNL_DRV_NAME
1.2 add braces in get_and_apply_property
Changes from v5:
1. add get_and_apply_property function for optional parameters.
2. minor changes.
Changes from v4:
1. add vdd-supply,vddio-supply,interrupts properties into yaml.
2. led-current -> vishay,led-current-milliamp in yaml.
3. add possible values enum list.
4. add bulk_read for result hi/lo registers.
5. add description of vcnl3020_data structure.
6. vcnl3020 id table is removed.
7. make "vishay,led-current-milliamp" optional in yaml and code.
Changes from v3:
1. minor changes.
2. add i2c block to fix dts section in yaml.
Changes from v2:
1. using regmap_read_poll_timeout instead of do-while in measurement
function.
2. change struct i2client* in vcnl3020_data to struct dev*
3. enable REGMAP_I2C in Kconfig
Changes from v1:
1. using regmap interface instead of i2c_smbus_* calls.
2. switch from probe to probe_new.
3. s32/int32_t -> int
Ivan Mikhaylov (2):
iio: proximity: provide device tree binding document
iio: proximity: Add driver support for vcnl3020 proximity sensor
.../bindings/iio/proximity/vcnl3020.yaml | 64 +++++
drivers/iio/proximity/Kconfig | 11 +
drivers/iio/proximity/Makefile | 1 +
drivers/iio/proximity/vcnl3020.c | 235 ++++++++++++++++++
4 files changed, 311 insertions(+)
create mode 100644 Documentation/devicetree/bindings/iio/proximity/vcnl3020.yaml
create mode 100644 drivers/iio/proximity/vcnl3020.c
--
2.21.1