Hi Brian, Not sure about the DTS interrupt setting you mentioned but would like to know how you resolve - as I am planning on getting a Pi0w for some 'home personal projects'. Anyway (and I am sure you probably already know this - but just in case) WRT the device registers (on the TSL2771 for example); If you enable interrupts (ie. Reg#0x00= 0x37) and set the persistence register to 0x00 (is. Reg# 0x0C = 0x00), you should see interrupts occurring every integration period. That way you can see if you're at least getting them. You probably know this too - on earlier parts such as these, interrupts were cleared via use of the "command register" special function bits. (see data sheets for details). Now a day - interrupts are cleared in a more conventional manner Jon -----Original Message----- From: Brian Masney [mailto:masneyb@xxxxxxxxxxxxx] Sent: Friday, June 30, 2017 10:21 AM To: jic23@xxxxxxxxxx; linux-iio@xxxxxxxxxxxxxxx Cc: devel@xxxxxxxxxxxxxxxxxxxx; lars@xxxxxxxxxx; gregkh@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Jon Brenner <Jon.Brenner@xxxxxxx>; pmeerw@xxxxxxxxxx; knaack.h@xxxxxx Subject: Re: [PATCH 0/6] staging: iio: tsl2x7x: staging cleanups On Thu, Jun 29, 2017 at 01:03:46PM -0400, Brian Masney wrote: > This begins my work to clean this driver up and eventually move it out > of staging. Driver changes were tested using a TSL2771 hooked up to a > Raspberry Pi 2. > > Thanks to Jon Brenner at AMS/TAOS for loaning me some hardware samples > to test my driver changes. > > Brian Masney (6): > staging: iio: tsl2x7x: add of_match table for device tree support > staging: iio: tsl2x7x: remove redundant power_state sysfs attribute > staging: iio: tsl2x7x: remove tsl2x7x_i2c_read() > staging: iio: tsl2x7x: cleaned up i2c calls in tsl2x7x_als_calibrate() > staging: iio: tsl2x7x: refactor {read,write}_event_value to allow > handling multiple iio_event_infos > staging: iio: tsl2x7x: use usleep_range() instead of mdelay() > > .../devicetree/bindings/trivial-devices.txt | 10 + > drivers/staging/iio/light/tsl2x7x.c | 316 ++++++++++----------- > 2 files changed, 153 insertions(+), 173 deletions(-) Hi Jonathon, Hold off on applying this series. There are several other formatting warnings from checkpatch with this series that I need to fix. Sorry about the noise. I'd appreciate it if you could at least look at the functionality of my changes and I'll resubmit next week. I held back several other changes related to the event subsystem until I'm able to properly test my changes. I'm having trouble getting the interrupts to work. I wired the interrupt pin on the sensor to GPIO pin 17 on my Raspberry Pi 2 and added the following section to arch/arm/boot/dts/bcm2836-rpi-2-b.dts for my sensor: &i2c1 { tsl2771@29 { compatible = "amstaos,tsl2771"; reg = <0x39>; interrupt-parent = <&gpio>; interrupts = <17 2>; }; }; I start up iio_event_monitor, and run these commands: echo 1 > events/in_intensity0_thresh_rising_en echo 256 > events/in_intensity0_thresh_rising_value When I shine a light on the ALS sensor, and the reading goes above 256, I do not get any events back from iio_event_monitor. I'm honestly not sure about the 2 in the 'interrupts = <17 2>;' line. I looked at how interrupts were setup in device tree overlays in the official Raspberry Pi kernel and tried several variations from there. I have more reading to do. :) Thanks, Brian _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel