Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4d33615d authored by Matt Ranostay's avatar Matt Ranostay Committed by Jonathan Cameron
Browse files

iio: light: add MAX30100 oximeter driver support



MAX30100 is an heart rate and pulse oximeter sensor that works using
two LEDS of different wavelengths, and detecting the light reflected
back.

This patchset adds support for both IR and RED LED channels which can
be processed in userspace to determine heart rate and blood oxygen
levels.

Signed-off-by: default avatarMatt Ranostay <mranostay@gmail.com>
Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
parent b41fa86b
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
Maxim MAX30100 heart rate and pulse oximeter sensor

* https://datasheets.maximintegrated.com/en/ds/MAX30100.pdf

Required properties:
  - compatible: must be "maxim,max30100"
  - reg: the I2C address of the sensor
  - interrupt-parent: should be the phandle for the interrupt controller
  - interrupts: the sole interrupt generated by the device

  Refer to interrupt-controller/interrupts.txt for generic
  interrupt client node bindings.

Example:

max30100@057 {
	compatible = "maxim,max30100";
	reg = <57>;
	interrupt-parent = <&gpio1>;
	interrupts = <16 2>;
};
+1 −0
Original line number Diff line number Diff line
@@ -69,6 +69,7 @@ source "drivers/iio/dac/Kconfig"
source "drivers/iio/dummy/Kconfig"
source "drivers/iio/frequency/Kconfig"
source "drivers/iio/gyro/Kconfig"
source "drivers/iio/health/Kconfig"
source "drivers/iio/humidity/Kconfig"
source "drivers/iio/imu/Kconfig"
source "drivers/iio/light/Kconfig"
+1 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ obj-y += dac/
obj-y += dummy/
obj-y += gyro/
obj-y += frequency/
obj-y += health/
obj-y += humidity/
obj-y += imu/
obj-y += light/
+21 −0
Original line number Diff line number Diff line
#
# Health sensors
#
# When adding new entries keep the list in alphabetical order

menu "Health sensors"

config MAX30100
	tristate "MAX30100 heart rate and pulse oximeter sensor"
	depends on I2C
	select REGMAP_I2C
	select IIO_BUFFER
	select IIO_KFIFO_BUF
	help
	  Say Y here to build I2C interface support for the Maxim
	  MAX30100 heart rate, and pulse oximeter sensor.

	  To compile this driver as a module, choose M here: the
	  module will be called max30100.

endmenu
+7 −0
Original line number Diff line number Diff line
#
# Makefile for IIO Health sensors
#

# When adding new entries keep the list in alphabetical order

obj-$(CONFIG_MAX30100)		+= max30100.o
Loading