On March 31, 2014 5:47:54 PM GMT+01:00, Rob Mosher <nyt@xxxxxxxxxxxxxxxxxxx> wrote: >I believe the AIN files came from >0020-iio-ti_am335x_adc-Add-IIO-map-interface.patch. Ouch that is an 'unusual' patch... No more recent patches in mainline appear related to what you are seeing unfortunately. >The bug is the >same >reading from in_voltageX_raw files. > >On 3/31/2014 12:14 PM, Jonathan Cameron wrote: >> >> >> On March 31, 2014 9:17:53 AM GMT+01:00, Rob Mosher ><nyt@xxxxxxxxxxxxxxxxxxx> wrote: >>> The following patches were removed and behavior returned to normal. >>> >>> 0019-iio-ti_am335x_adc-Add-continuous-sampling-and-trigge.patch >>> 0020-iio-ti_am335x_adc-Add-IIO-map-interface.patch >>> >>> Once 19 was re-applied, the bug returned. >>> >>> It would appear that patch19 is the problem. On an unrelated note, >the >>> >>> continuous sampling patch seems to still be missing the mode file to >>> tell it to sample continuously or oneshot in the sysfs directory as >>> referenced at >>> http://processors.wiki.ti.com/index.php/AM335x_ADC_Driver%27s_Guide. >> Someone should update that wiki page. >> Such an attribute was not and will not be >> part of the mainline kernel ABI. Drivers can play fast and loose in >staging but to move >> out the ABI must conform to existing definitions or be proposed >reviewed and accepted. >> >> I am somewhat confused. Where did the AIN sysfs attributes come from? >> >>> Maybe this should be moved to the beta kernel until stable? >> >>> >>> Cheers. >>> >>> On 3/31/2014 12:04 AM, Rob Mosher wrote: >>>> (sorry for the duplicate, got bounces due to HTML encoding) >>>> >>>> The specified patch is already included. The system was running >the >>>> latest kernel from Robert Nelson's repo. Any suggestions? I'll >try >>>> removing some of the patches to see if it fixes this behavior. I >>> have a >>>> feeling I know which one is doing it. >>>> >>>> Thanks. >>>> >>>> output from running patch.sh with source pulled from >>>> https://github.com/beagleboard/kernel/tree/3.8 >>>> >>>> >>> >/home/bbuild/comp/kernel/patches/adc/0017-IIO-ADC-ti_adc-Fix-1st-sample-read.patch: >>>> applied >>>> >>>> Just in case, I built and installed the kernel and the same >behavior >>>> persisted. >>>> >>>> root@rbone:/# uname -a >>>> Linux rbone 3.8.13-00737-g7dfad77 #1 SMP Sun Mar 30 22:11:44 EDT >2014 >>>> armv7l GNU/Linux >>>> >>>> gpio30 is connected to AIN4 using a voltage divider >>>> >>>> root@rbone:/# cd /sys/class/gpio/ >>>> root@rbone:/sys/class/gpio# echo 30 > export >>>> root@rbone:/sys/class/gpio# echo BB-ADC > >>> /sys/devices/bone_capemgr.9/slots >>>> root@rbone:/sys/class/gpio# cd /sys/devices/ocp.3/helper.11/ >>>> root@rbone:/sys/devices/ocp.3/helper.11# echo out > >>>> /sys/class/gpio/gpio30/direction >>>> >>>> root@rbone:/sys/devices/ocp.3/helper.11# echo 1 > >>>> /sys/class/gpio/gpio30/value >>>> root@rbone:/sys/devices/ocp.3/helper.11# cat AIN4 >>>> 1460 >>>> >>>> root@rbone:/sys/devices/ocp.3/helper.11# echo 0 > >>>> /sys/class/gpio/gpio30/value >>>> root@rbone:/sys/devices/ocp.3/helper.11# cat AIN4 >>>> 0 >>>> >>>> root@rbone:/sys/devices/ocp.3/helper.11# grep . AIN[0-3] AIN[5-7] >>>> AIN0:1550 >>>> AIN1:1213 >>>> AIN2:1485 >>>> AIN3:795 >>>> AIN5:513 >>>> AIN6:744 >>>> AIN7:1698 >>>> >>>> root@rbone:/sys/devices/ocp.3/helper.11# echo 1 > >>>> /sys/class/gpio/gpio30/value >>>> root@rbone:/sys/devices/ocp.3/helper.11# cat AIN4 >>>> 0 >>>> root@rbone:/sys/devices/ocp.3/helper.11# cat AIN4 >>>> 0 >>>> root@rbone:/sys/devices/ocp.3/helper.11# cat AIN4 >>>> 0 >>>> root@rbone:/sys/devices/ocp.3/helper.11# cat AIN4 >>>> 0 >>>> root@rbone:/sys/devices/ocp.3/helper.11# cat AIN4 >>>> 0 >>>> root@rbone:/sys/devices/ocp.3/helper.11# cat AIN4 >>>> 0 >>>> root@rbone:/sys/devices/ocp.3/helper.11# cat AIN4 >>>> 1460 >>>> >>>> On 3/30/2014 9:16 AM, Zubair Lutfullah wrote: >>>>> >>> >https://github.com/beagleboard/kernel/blob/3.8/patches/adc/0017-IIO-ADC-ti_adc-Fix-1st-sample-read.patch >>>>> >>>>> IIRC, this patch fixes this issue >>>>> >>>>> Can you compile the kernel from the sources and check? >>>>> https://github.com/beagleboard/kernel/tree/3.8 >>>>> >>>>> Regards >>>>> ZubairLK >>>>> >>>>> On Sun, Mar 30, 2014 at 7:04 AM, Rob Mosher ><nyt@xxxxxxxxxxxxxxxxxxx >>>>> <mailto:nyt@xxxxxxxxxxxxxxxxxxx>> wrote: >>>>> >>>>> Just a note, the same behavior persists with BB-ADC dtb and >>>>> reading from in_voltage4_raw >>>>> >>>>> >>>>> On 3/30/2014 12:30 AM, Rob Mosher wrote: >>>>> >>>>> Hello fine developers, >>>>> >>>>> It seems I've stumbled upon a problem while developing a >>> full >>>>> featured Ruby gem for the Beaglebone. >>>>> >>>>> It seems a patch included in the beaglebone kernel causes >>> some >>>>> issues while reading analog inputs. Apparently the >samples >>>>> get backlogged by the number of adc pins in use. I'm not >>> sure >>>>> which patch exactly as there are a number that affect adc >>>>> buffering and I'm not currently setup for kernel >building, >>>>> however the below output should detail the problem. >>>>> >>>>> Using the official Debian image. >>>>> Linux rbone 3.8.13-bone43 #1 SMP Wed Mar 26 14:21:39 UTC >>> 2014 >>>>> armv7l GNU/Linux >>>>> >>>>> Distributor ID: Debian >>>>> Description: Debian GNU/Linux 7.4 (wheezy) >>>>> Release: 7.4 >>>>> Codename: wheezy >>>>> >>>>> root@rbone:~# echo cape-bone-iio > >>>>> /sys/devices/bone_capemgr.9/slots >>>>> >>>>> This is the normal and expected behavior. >>>>> >>>>> 1.8v applied to AIN4 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1798 >>>>> >>>>> 0v applied to AIN4 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> >>>>> 1.8v applied to AIN4 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1798 >>>>> >>>>> 0v applied to AIN4 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> >>>>> So far working as intended.... Now reading from the >other >>> pins. >>>>> >>>>> root@rbone:/sys/devices/ocp.3/helper.12# grep . AIN[0-3] >>> AIN[5-7] >>>>> AIN0:1563 >>>>> AIN1:1221 >>>>> AIN2:1487 >>>>> AIN3:789 >>>>> AIN5:514 >>>>> AIN6:743 >>>>> AIN7:1698 >>>>> >>>>> Now applying 1.8v to AIN4 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1798 >>>>> >>>>> Now applying 0v to AIN4 >>>>> >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1460 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1798 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1798 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1460 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1460 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1460 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> >>>>> >>>>> >>>>> And another example, showing relation to the number of >pins >>> in >>>>> use. >>>>> >>>>> 1.8v to AIN4 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1460 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# grep . AIN[0-3] >>>>> AIN0:1697 >>>>> AIN1:1298 >>>>> AIN2:1524 >>>>> AIN3:816 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1798 >>>>> >>>>> 0v to AIN4 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1798 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1460 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1460 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1460 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> >>>>> 1.8v to AIN4 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 0 >>>>> root@rbone:/sys/devices/ocp.3/helper.12# cat AIN4 >>>>> 1798 >>>>> >>>>> -- Rob Mosher >>>>> Senior Network and Software Engineer >>>>> Hurricane Electric / AS6939 >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>> -- >>> 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 >> -- Sent from my Android phone with K-9 Mail. Please excuse my brevity. -- 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