On 02/27/2013 08:50 PM, Chris Micali wrote: > Last question :) I'd like to sample from this device as quickly as possible - so I'm assuming I need to trigger quickly? Should I use iio-trig-periodic-rtc? Any hints/instructions on how to use that? Should the driver supply it's own trigger that uses an hrtimer instead? > > Thanks! > Chris Hi, There is a generic hrtimer based trigger: https://github.com/lclausen-adi/linux-2.6/commit/a3b5c3f7aafbcac562d6f00a6589b110bd9fb71c Unfortunately it's not upstream ready yet. I can be registered via a platform_device static struct platform_device iio_trigger_hrtimer = { .name = "iio-trigger-hrtimer", .id = 0, }; - Lars > > > On Wednesday, February 27, 2013 at 2:32 PM, Chris Micali wrote: >> Guys, >> >> Thanks a lot for the help! I finally tracked down issues, it was a combination of a few things: >> >> 1. The .channel had to be 0, not 1 in the driver (scan_index didn't matter) >> 2. 1 or more scan_elements have to be enabled as you mentioned >> 2. When echoing into the sysfs files it has to have a space after the number (cat 1 > in_voltage0_en and not cat 1>in_vo…) (duh!) >> 3. The generic_buffer.c program had a few bugs in it causing crashes. I updated the iio_utils.h to a newer version I found here: https://github.com/analogdevicesinc/iio-oscilloscope and then made a few modifications (the newer iio_utils did not parse a few things right in the channel details like bigendian/littleendian) >> >> So generic_buffer is now correctly sampling (although it crashes after a couple, it's probably another iio_utils issue) >> >> Thanks!! >> >> -chris >> >> >> On Wednesday, February 27, 2013 at 1:51 PM, Lars-Peter Clausen wrote: >> >>> On 02/27/2013 07:28 PM, Jonathan Cameron wrote: >>>> On 02/27/2013 05:36 PM, Chris Micali wrote: >>>>> lars, >>>>> >>>>> I was under the impression that flag gets added automatically by iio_triggered_buffer_setup (industrialiio-triggers.c:77) - I actually am now able to enable the scan_element after changing my channel .channel and .scan_index to 0 (trying to match exactly the other drivers.) >>> >>> >>> Yea, you are right I missed the iio_triggered_buffer_setup part. >>> >>>> Strange, scan_index should have defaulted to zero and the .channel value shouldn't have mattered >>>> for buffered reads (just effects naming). Might have caused issues with userspace expecting a channel 0 >>>> though... >>> >>> >>> >>> >>> >>> I guess the scan_index had nothing to do with this, but I suggested to set >>> scan_elements/in_voltage0_en to 1, so this clearly wouldn't have worked with >>> .channel being 1. >>> >>>> >>>>> When i run general_buffer (from the docs dir) with that scan element enabled it can no longer read the trigger (Could not open /trigger/current_trigger Failed to write current_trigger file) - this succeeds if that scan_element is not enabled. >>> >>> >>> You can't change the trigger if the buffer is currently enabled. Make sure that >>> he buffer is disabled (check the buffer/enable attribute). >>> >>> - Lars >>> u >> > > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-iio" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html