Commit e3d455de authored by Waqar Hameed's avatar Waqar Hameed Committed by Jonathan Cameron
Browse files

iio: Add driver for Nicera D3-323-AA PIR sensor



Nicera D3-323-AA is a PIR sensor for human detection. It has support for
raw data measurements and detection notification. The communication
protocol is custom made and therefore needs to be GPIO bit banged.

The device has two main settings that can be configured: a threshold
value for detection and a band-pass filter. The configurable parameters
for the band-pass filter are the high-pass and low-pass cutoff
frequencies and its peak gain. Map these settings to the corresponding
parameters in the `iio` framework.

Raw data measurements can be obtained from the device. However, since we
rely on bit banging, it will be rather cumbersome with buffer support.
The main reason being that the data protocol has strict timing
requirements (it's serial like UART), and it's mainly used during
debugging since in real-world applications only the event notification
is of importance. Therefore, only add support for events (for now).

Signed-off-by: default avatarWaqar Hameed <waqar.hameed@axis.com>
Link: https://patch.msgid.link/29f84da1431f4a3f17fdeef27297a4ab14455404.1751636734.git.waqar.hameed@axis.com


Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent f432a7f9
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -32,6 +32,15 @@ config CROS_EC_MKBP_PROXIMITY
	  To compile this driver as a module, choose M here: the
	  module will be called cros_ec_mkbp_proximity.

config D3323AA
	tristate "Nicera (Nippon Ceramic Co.) D3-323-AA PIR sensor"
	depends on GPIOLIB
	help
	  Say Y here to build a driver for the Nicera D3-323-AA PIR sensor.

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

config HX9023S
	tristate "TYHX HX9023S SAR sensor"
	select IIO_BUFFER
+1 −0
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@
# When adding new entries keep the list in alphabetical order
obj-$(CONFIG_AS3935)		+= as3935.o
obj-$(CONFIG_CROS_EC_MKBP_PROXIMITY) += cros_ec_mkbp_proximity.o
obj-$(CONFIG_D3323AA)		+= d3323aa.o
obj-$(CONFIG_HX9023S)		+= hx9023s.o
obj-$(CONFIG_IRSD200)		+= irsd200.o
obj-$(CONFIG_ISL29501)		+= isl29501.o
+816 −0

File added.

Preview size limit exceeded, changes collapsed.