<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic imx6ull ADC read count values error in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/imx6ull-ADC-read-count-values-error/m-p/1057952#M155560</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I'm having problems when reading cont values from ADCs on our custom board (I having the same problem when trying the same configuration in imx6ull_14x14_evk).&lt;/P&gt;&lt;P&gt;-&amp;nbsp;VDDA_ADC_3P3(L13),&amp;nbsp;ADC_VREFH(M13) connect to VLDO1(PF3000) 3.3V&amp;nbsp;&lt;/P&gt;&lt;P&gt;- PADs: ADC1_IN2(L14), ADC1_IN8(N17),ADC1_IN9(M15) (0V in all pads)&lt;/P&gt;&lt;P&gt;- DeviceTree:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;pinctrl_adc1: adc1grp {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;fsl,pins = &amp;lt;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MX6UL_PAD_GPIO1_IO02__GPIO1_IO02 0x000000B0&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MX6UL_PAD_GPIO1_IO08__GPIO1_IO08 0x000000B0&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MX6UL_PAD_GPIO1_IO09__GPIO1_IO09 0x000000B0&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;reg_vref_3v3: regulator@2 {&lt;BR /&gt; compatible = "regulator-fixed";&lt;BR /&gt; reg = &amp;lt;2&amp;gt;;&lt;BR /&gt; regulator-name = "vref-3v3";&lt;BR /&gt; regulator-min-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; regulator-max-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;adc1 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_adc1&amp;gt;;&lt;BR /&gt; vref-supply = &amp;lt;&amp;amp;reg_vref_3v3&amp;gt;;&lt;BR /&gt; num-channels = &amp;lt;3&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;drivers/iio/adc/vf610_adc.c with additional debug messages (as in&amp;nbsp;&amp;nbsp;&lt;A _jive_internal="true" href="https://community.nxp.com/thread/432516" rel="nofollow noopener noreferrer" target="_blank"&gt;iMX6UL adc calibration fails&lt;/A&gt;)&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;PRE style="color: #333333; background-color: #fafafa; border: 1px solid #e2e2e2; font-size: 12px; padding: 8px;"&gt;static void vf610_adc_calibration(struct vf610_adc *info) {     int adc_gc, hc_cfg;      if (!info-&amp;gt;adc_feature.calibration)         return;      dev_info(info-&amp;gt;dev, "vf610_adc_calibration start: Base address = %x\n",(int) info-&amp;gt;regs);     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HC0 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HC0));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HC1 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HC1));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_R0 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_R0));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_R1 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_R1));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CFG = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CFG));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_GC = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_GC));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_GS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_GS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CV = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CV));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_OFS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_OFS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CAL = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CAL));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_PCTL = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_PCTL));      /* enable calibration interrupt */     hc_cfg = VF610_ADC_AIEN | VF610_ADC_CONV_DISABLE;     writel(hc_cfg, info-&amp;gt;regs + VF610_REG_ADC_HC0);      adc_gc = readl(info-&amp;gt;regs + VF610_REG_ADC_GC);     writel(adc_gc | VF610_ADC_CAL, info-&amp;gt;regs + VF610_REG_ADC_GC);      if (!wait_for_completion_timeout(&amp;amp;info-&amp;gt;completion, VF610_ADC_TIMEOUT))         dev_err(info-&amp;gt;dev, "Timeout for adc calibration\n");      dev_info(info-&amp;gt;dev, "vf610_adc_calibration end: Base address = %x\n",(int) info-&amp;gt;regs);     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HC0 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HC0));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HC1 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HC1));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_R0 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_R0));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_R1 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_R1));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CFG = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CFG));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_GC = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_GC));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_GS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_GS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CV = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CV));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_OFS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_OFS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CAL = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CAL));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_PCTL = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_PCTL));      adc_gc = readl(info-&amp;gt;regs + VF610_REG_ADC_GS);     if (adc_gc &amp;amp; VF610_ADC_CALF)         dev_err(info-&amp;gt;dev, "ADC calibration failed\n");      info-&amp;gt;adc_feature.calibration = false; }

static int vf610_read_raw(struct iio_dev *indio_dev,
 struct iio_chan_spec const *chan,
 int *val,
 int *val2,
 long mask)
{
 struct vf610_adc *info = iio_priv(indio_dev);
 unsigned int hc_cfg;
 long ret;

 dev_info(info-&amp;gt;dev, "vf610_read_raw \n");
...&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Driver registered and device detected:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;PRE style="color: #333333; background-color: #fafafa; border: 1px solid #e2e2e2; font-size: 12px; padding: 8px;"&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# dmesg | grep vf610
calling vf610_pinctrl_init+0x0/0x18 @ 1
bus: 'platform': add driver vf610-pinctrl
initcall vf610_pinctrl_init+0x0/0x18 returned 0 after 0 usecs
calling gpio_vf610_init+0x0/0x18 @ 1
bus: 'platform': add driver gpio-vf610
initcall gpio_vf610_init+0x0/0x18 returned 0 after 530 usecs
calling vf610_adc_driver_init+0x0/0x18 @ 1
bus: 'platform': add driver vf610-adc
bus: 'platform': driver_probe_device: matched device 2198000.adc with driver vf610-adc
bus: 'platform': really_probe: probing driver vf610-adc with device 2198000.adc
vf610-adc 2198000.adc: no sleep pinctrl state
vf610-adc 2198000.adc: no idle pinctrl state
vf610-adc 2198000.adc: vf610_adc_calibration start 
vf610-adc 2198000.adc: VF610_REG_ADC_HC0 = 1f
vf610-adc 2198000.adc: VF610_REG_ADC_HC1 = 1f
vf610-adc 2198000.adc: VF610_REG_ADC_HS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_R0 = 0
vf610-adc 2198000.adc: VF610_REG_ADC_R1 = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CFG = 104e8
vf610-adc 2198000.adc: VF610_REG_ADC_GC = 20
vf610-adc 2198000.adc: VF610_REG_ADC_GS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CV = 0
vf610-adc 2198000.adc: VF610_REG_ADC_OFS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CAL = 0
vf610-adc 2198000.adc: VF610_REG_ADC_PCTL = 0
vf610-adc 2198000.adc: vf610_adc_calibration end
vf610-adc 2198000.adc: VF610_REG_ADC_HC0 = 9f
vf610-adc 2198000.adc: VF610_REG_ADC_HC1 = 1f
vf610-adc 2198000.adc: VF610_REG_ADC_HS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_R0 = 2
vf610-adc 2198000.adc: VF610_REG_ADC_R1 = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CFG = 104e8
vf610-adc 2198000.adc: VF610_REG_ADC_GC = 20
vf610-adc 2198000.adc: VF610_REG_ADC_GS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CV = 0
vf610-adc 2198000.adc: VF610_REG_ADC_OFS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CAL = 8
vf610-adc 2198000.adc: VF610_REG_ADC_PCTL = 0
driver: 'vf610-adc': driver_bound: bound to device '2198000.adc'
bus: 'platform': really_probe: bound device 2198000.adc to driver vf610-adc
initcall vf610_adc_driver_init+0x0/0x18 returned 0 after 126430 usecs
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
root@imx6ullcom:/sys/bus/iio/devices/iio:device0#&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;But values got from ADCs are not right:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# ls -l&lt;BR /&gt;-r--r--r-- 1 root root 4096 Jan 21 13:10 dev&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage0_raw&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage1_raw&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage2_raw&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage_sampling_frequency&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage_scale&lt;BR /&gt;-r--r--r-- 1 root root 4096 Jan 21 13:10 name&lt;BR /&gt;lrwxrwxrwx 1 root root 0 Jan 21 13:10 of_node -&amp;gt; ../../../../../../firmware/devicetree/base/soc/aips-bus@02100000/adc@02198000&lt;BR /&gt;drwxr-xr-x 2 root root 0 Jan 21 13:10 power&lt;BR /&gt;-r--r--r-- 1 root root 4096 Jan 21 13:10 sampling_frequency_available&lt;BR /&gt;lrwxrwxrwx 1 root root 0 Jan 21 13:09 subsystem -&amp;gt; ../../../../../../bus/iio&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:09 uevent&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat sampling_frequency_available&lt;BR /&gt;242647 69915 35869 18171 9146&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat in_voltage_scale&lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;0.805664062&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat in_voltage0_raw&lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;4060&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat in_voltage1_raw &lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;170&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat in_voltage2_raw &lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;0&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0#&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Even if I change voltage in inputs to 3.3V I still get the same results.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bets regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Carlos Barreiro&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 03 Apr 2020 17:53:23 GMT</pubDate>
    <dc:creator>carbar</dc:creator>
    <dc:date>2020-04-03T17:53:23Z</dc:date>
    <item>
      <title>imx6ull ADC read count values error</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx6ull-ADC-read-count-values-error/m-p/1057952#M155560</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I'm having problems when reading cont values from ADCs on our custom board (I having the same problem when trying the same configuration in imx6ull_14x14_evk).&lt;/P&gt;&lt;P&gt;-&amp;nbsp;VDDA_ADC_3P3(L13),&amp;nbsp;ADC_VREFH(M13) connect to VLDO1(PF3000) 3.3V&amp;nbsp;&lt;/P&gt;&lt;P&gt;- PADs: ADC1_IN2(L14), ADC1_IN8(N17),ADC1_IN9(M15) (0V in all pads)&lt;/P&gt;&lt;P&gt;- DeviceTree:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;pinctrl_adc1: adc1grp {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;fsl,pins = &amp;lt;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MX6UL_PAD_GPIO1_IO02__GPIO1_IO02 0x000000B0&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MX6UL_PAD_GPIO1_IO08__GPIO1_IO08 0x000000B0&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MX6UL_PAD_GPIO1_IO09__GPIO1_IO09 0x000000B0&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;reg_vref_3v3: regulator@2 {&lt;BR /&gt; compatible = "regulator-fixed";&lt;BR /&gt; reg = &amp;lt;2&amp;gt;;&lt;BR /&gt; regulator-name = "vref-3v3";&lt;BR /&gt; regulator-min-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; regulator-max-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;adc1 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_adc1&amp;gt;;&lt;BR /&gt; vref-supply = &amp;lt;&amp;amp;reg_vref_3v3&amp;gt;;&lt;BR /&gt; num-channels = &amp;lt;3&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;drivers/iio/adc/vf610_adc.c with additional debug messages (as in&amp;nbsp;&amp;nbsp;&lt;A _jive_internal="true" href="https://community.nxp.com/thread/432516" rel="nofollow noopener noreferrer" target="_blank"&gt;iMX6UL adc calibration fails&lt;/A&gt;)&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;PRE style="color: #333333; background-color: #fafafa; border: 1px solid #e2e2e2; font-size: 12px; padding: 8px;"&gt;static void vf610_adc_calibration(struct vf610_adc *info) {     int adc_gc, hc_cfg;      if (!info-&amp;gt;adc_feature.calibration)         return;      dev_info(info-&amp;gt;dev, "vf610_adc_calibration start: Base address = %x\n",(int) info-&amp;gt;regs);     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HC0 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HC0));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HC1 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HC1));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_R0 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_R0));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_R1 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_R1));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CFG = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CFG));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_GC = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_GC));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_GS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_GS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CV = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CV));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_OFS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_OFS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CAL = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CAL));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_PCTL = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_PCTL));      /* enable calibration interrupt */     hc_cfg = VF610_ADC_AIEN | VF610_ADC_CONV_DISABLE;     writel(hc_cfg, info-&amp;gt;regs + VF610_REG_ADC_HC0);      adc_gc = readl(info-&amp;gt;regs + VF610_REG_ADC_GC);     writel(adc_gc | VF610_ADC_CAL, info-&amp;gt;regs + VF610_REG_ADC_GC);      if (!wait_for_completion_timeout(&amp;amp;info-&amp;gt;completion, VF610_ADC_TIMEOUT))         dev_err(info-&amp;gt;dev, "Timeout for adc calibration\n");      dev_info(info-&amp;gt;dev, "vf610_adc_calibration end: Base address = %x\n",(int) info-&amp;gt;regs);     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HC0 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HC0));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HC1 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HC1));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_HS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_HS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_R0 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_R0));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_R1 = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_R1));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CFG = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CFG));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_GC = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_GC));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_GS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_GS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CV = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CV));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_OFS = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_OFS));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_CAL = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_CAL));     dev_info(info-&amp;gt;dev, "VF610_REG_ADC_PCTL = %x\n", readl(info-&amp;gt;regs + VF610_REG_ADC_PCTL));      adc_gc = readl(info-&amp;gt;regs + VF610_REG_ADC_GS);     if (adc_gc &amp;amp; VF610_ADC_CALF)         dev_err(info-&amp;gt;dev, "ADC calibration failed\n");      info-&amp;gt;adc_feature.calibration = false; }

static int vf610_read_raw(struct iio_dev *indio_dev,
 struct iio_chan_spec const *chan,
 int *val,
 int *val2,
 long mask)
{
 struct vf610_adc *info = iio_priv(indio_dev);
 unsigned int hc_cfg;
 long ret;

 dev_info(info-&amp;gt;dev, "vf610_read_raw \n");
...&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Driver registered and device detected:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;PRE style="color: #333333; background-color: #fafafa; border: 1px solid #e2e2e2; font-size: 12px; padding: 8px;"&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# dmesg | grep vf610
calling vf610_pinctrl_init+0x0/0x18 @ 1
bus: 'platform': add driver vf610-pinctrl
initcall vf610_pinctrl_init+0x0/0x18 returned 0 after 0 usecs
calling gpio_vf610_init+0x0/0x18 @ 1
bus: 'platform': add driver gpio-vf610
initcall gpio_vf610_init+0x0/0x18 returned 0 after 530 usecs
calling vf610_adc_driver_init+0x0/0x18 @ 1
bus: 'platform': add driver vf610-adc
bus: 'platform': driver_probe_device: matched device 2198000.adc with driver vf610-adc
bus: 'platform': really_probe: probing driver vf610-adc with device 2198000.adc
vf610-adc 2198000.adc: no sleep pinctrl state
vf610-adc 2198000.adc: no idle pinctrl state
vf610-adc 2198000.adc: vf610_adc_calibration start 
vf610-adc 2198000.adc: VF610_REG_ADC_HC0 = 1f
vf610-adc 2198000.adc: VF610_REG_ADC_HC1 = 1f
vf610-adc 2198000.adc: VF610_REG_ADC_HS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_R0 = 0
vf610-adc 2198000.adc: VF610_REG_ADC_R1 = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CFG = 104e8
vf610-adc 2198000.adc: VF610_REG_ADC_GC = 20
vf610-adc 2198000.adc: VF610_REG_ADC_GS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CV = 0
vf610-adc 2198000.adc: VF610_REG_ADC_OFS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CAL = 0
vf610-adc 2198000.adc: VF610_REG_ADC_PCTL = 0
vf610-adc 2198000.adc: vf610_adc_calibration end
vf610-adc 2198000.adc: VF610_REG_ADC_HC0 = 9f
vf610-adc 2198000.adc: VF610_REG_ADC_HC1 = 1f
vf610-adc 2198000.adc: VF610_REG_ADC_HS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_R0 = 2
vf610-adc 2198000.adc: VF610_REG_ADC_R1 = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CFG = 104e8
vf610-adc 2198000.adc: VF610_REG_ADC_GC = 20
vf610-adc 2198000.adc: VF610_REG_ADC_GS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CV = 0
vf610-adc 2198000.adc: VF610_REG_ADC_OFS = 0
vf610-adc 2198000.adc: VF610_REG_ADC_CAL = 8
vf610-adc 2198000.adc: VF610_REG_ADC_PCTL = 0
driver: 'vf610-adc': driver_bound: bound to device '2198000.adc'
bus: 'platform': really_probe: bound device 2198000.adc to driver vf610-adc
initcall vf610_adc_driver_init+0x0/0x18 returned 0 after 126430 usecs
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
vf610-adc 2198000.adc: vf610_read_raw 
root@imx6ullcom:/sys/bus/iio/devices/iio:device0#&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;But values got from ADCs are not right:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# ls -l&lt;BR /&gt;-r--r--r-- 1 root root 4096 Jan 21 13:10 dev&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage0_raw&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage1_raw&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage2_raw&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage_sampling_frequency&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:10 in_voltage_scale&lt;BR /&gt;-r--r--r-- 1 root root 4096 Jan 21 13:10 name&lt;BR /&gt;lrwxrwxrwx 1 root root 0 Jan 21 13:10 of_node -&amp;gt; ../../../../../../firmware/devicetree/base/soc/aips-bus@02100000/adc@02198000&lt;BR /&gt;drwxr-xr-x 2 root root 0 Jan 21 13:10 power&lt;BR /&gt;-r--r--r-- 1 root root 4096 Jan 21 13:10 sampling_frequency_available&lt;BR /&gt;lrwxrwxrwx 1 root root 0 Jan 21 13:09 subsystem -&amp;gt; ../../../../../../bus/iio&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 21 13:09 uevent&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat sampling_frequency_available&lt;BR /&gt;242647 69915 35869 18171 9146&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat in_voltage_scale&lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;0.805664062&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat in_voltage0_raw&lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;4060&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat in_voltage1_raw &lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;170&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0# cat in_voltage2_raw &lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;0&lt;BR /&gt;root@imx6ullcom:/sys/bus/iio/devices/iio:device0#&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Even if I change voltage in inputs to 3.3V I still get the same results.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bets regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Carlos Barreiro&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Apr 2020 17:53:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx6ull-ADC-read-count-values-error/m-p/1057952#M155560</guid>
      <dc:creator>carbar</dc:creator>
      <dc:date>2020-04-03T17:53:23Z</dc:date>
    </item>
    <item>
      <title>Re: imx6ull ADC read count values error</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx6ull-ADC-read-count-values-error/m-p/1057953#M155561</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Carlos&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for pf3000 with i.mx6ull one can try "imx6ull9x9evk" configuration:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://source.codeaurora.org/external/imx/linux-imx/tree/arch/arm/boot/dts/imx6ull-9x9-evk.dts?h=imx_4.19.35_1.1.0" title="https://source.codeaurora.org/external/imx/linux-imx/tree/arch/arm/boot/dts/imx6ull-9x9-evk.dts?h=imx_4.19.35_1.1.0"&gt;imx6ull-9x9-evk.dts\dts\boot\arm\arch - linux-imx - i.MX Linux kernel&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Build using sect.5.1 Build configurations attached Yocto Guide&lt;/P&gt;&lt;P&gt;remove "pinctrl_tsc" for these pins.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Apr 2020 23:32:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx6ull-ADC-read-count-values-error/m-p/1057953#M155561</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2020-04-03T23:32:53Z</dc:date>
    </item>
    <item>
      <title>Re: imx6ull ADC read count values error</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/imx6ull-ADC-read-count-values-error/m-p/1057954#M155562</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Igor,&lt;/P&gt;&lt;P&gt;I've tried to check ADCs using&amp;nbsp;imx6ull-14x14-evk and I am having the same problem, values read from adcs are not correct.&lt;/P&gt;&lt;P&gt;I used for this test&amp;nbsp;L4.1.15_2.0.1-patch_images_MX6ULLEVK with modifications in kernel to check ADCs:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;sudo dd if=fsl-image-validation-imx-imx6ull14x14evk.sdcard of=/dev/mmcblk0 bs=1M &amp;amp;&amp;amp; sync&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;e591809 (HEAD -&amp;gt; imx_4.1.15_2.0.0_ga-imx6ull-14x14-evk-adc, origin/imx_4.1.15_2.0.0_ga-imx6ull-14x14-evk-adc) CHG: arch/arm/configs/imx6ull-14x14-evk_defconfig: CONFIG_LOCALVERSION="-2.0.1", CONFIG_FHANDLE=y&lt;BR /&gt;85e5f8c ADD: arch/arm/configs/imx6ull-14x14-evk_defconfig: Copied from imx_v7_defconfig&lt;BR /&gt;5a8d19f CHG: drivers/iio/adc/vf610_adc.c: Enable debug&lt;BR /&gt;2b074c2 CHG: drivers/iio/adc/vf610_adc.c: vf610_adc_calibration(): Added debug info.&lt;BR /&gt;3d515f1 ARM: dts: imx6ull-14x14-evk: pinctrl_adc1: Added overlay of node&lt;BR /&gt;b2ae15e ARM: dts: imx6ull-14x14-evk: Add pinctrl_adc1&lt;BR /&gt;d368cfe CHG: arm: dts: imx6ull-14x14-evk: Delete overlay of tsc, deleted&lt;BR /&gt;6f7b2dd MLK-13422: ASoC: wm8960: fix the pitch shift issue after suspend/resume&lt;BR /&gt;d11bf9f MLK-13418: ASoC: wm8960: workaround no sound issue in master mode&lt;BR /&gt;17d542d ARM: imx: imx6ul: add PHY KSZ8081 new silicon revision fixup setting&lt;BR /&gt;b63f3f5 (tag: rel_imx_4.1.15_2.0.0_ga) MLK-13240: arm: imx6q: lpddr2 freq fix switch to 100Mhz&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/*&lt;BR /&gt; * Copyright (C) 2016 Freescale Semiconductor, Inc.&lt;BR /&gt; *&lt;BR /&gt; * This program is free software; you can redistribute it and/or modify&lt;BR /&gt; * it under the terms of the GNU General Public License version 2 as&lt;BR /&gt; * published by the Free Software Foundation.&lt;BR /&gt; */&lt;/P&gt;&lt;P&gt;/dts-v1/;&lt;/P&gt;&lt;P&gt;#include &amp;lt;dt-bindings/input/input.h&amp;gt;&lt;BR /&gt;#include "imx6ull.dtsi"&lt;/P&gt;&lt;P&gt;/ {&lt;BR /&gt; model = "Freescale i.MX6 ULL 14x14 EVK Board";&lt;BR /&gt; compatible = "fsl,imx6ull-14x14-evk", "fsl,imx6ull";&lt;/P&gt;&lt;P&gt;chosen {&lt;BR /&gt; stdout-path = &amp;amp;uart1;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;memory {&lt;BR /&gt; reg = &amp;lt;0x80000000 0x20000000&amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;reserved-memory {&lt;BR /&gt; #address-cells = &amp;lt;1&amp;gt;;&lt;BR /&gt; #size-cells = &amp;lt;1&amp;gt;;&lt;BR /&gt; ranges;&lt;/P&gt;&lt;P&gt;linux,cma {&lt;BR /&gt; compatible = "shared-dma-pool";&lt;BR /&gt; reusable;&lt;BR /&gt; size = &amp;lt;0x14000000&amp;gt;;&lt;BR /&gt; linux,cma-default;&lt;BR /&gt; };&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;backlight {&lt;BR /&gt; compatible = "pwm-backlight";&lt;BR /&gt; pwms = &amp;lt;&amp;amp;pwm1 0 5000000&amp;gt;;&lt;BR /&gt; brightness-levels = &amp;lt;0 4 8 16 32 64 128 255&amp;gt;;&lt;BR /&gt; default-brightness-level = &amp;lt;6&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pxp_v4l2 {&lt;BR /&gt; compatible = "fsl,imx6ul-pxp-v4l2", "fsl,imx6sx-pxp-v4l2", "fsl,imx6sl-pxp-v4l2";&lt;BR /&gt; status = "okay";&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;regulators {&lt;BR /&gt; compatible = "simple-bus";&lt;BR /&gt; #address-cells = &amp;lt;1&amp;gt;;&lt;BR /&gt; #size-cells = &amp;lt;0&amp;gt;;&lt;/P&gt;&lt;P&gt;reg_can_3v3: regulator@0 {&lt;BR /&gt; compatible = "regulator-fixed";&lt;BR /&gt; reg = &amp;lt;0&amp;gt;;&lt;BR /&gt; regulator-name = "can-3v3";&lt;BR /&gt; regulator-min-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; regulator-max-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; gpios = &amp;lt;&amp;amp;gpio_spi 3 GPIO_ACTIVE_LOW&amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;reg_sd1_vmmc: regulator@1 {&lt;BR /&gt; compatible = "regulator-fixed";&lt;BR /&gt; regulator-name = "VSD_3V3";&lt;BR /&gt; regulator-min-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; regulator-max-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; gpio = &amp;lt;&amp;amp;gpio1 9 GPIO_ACTIVE_HIGH&amp;gt;;&lt;BR /&gt; enable-active-high;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; reg_vref_3v3: regulator@2 {&lt;BR /&gt; compatible = "regulator-fixed";&lt;BR /&gt; regulator-name = "vref-3v3";&lt;BR /&gt; regulator-min-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; regulator-max-microvolt = &amp;lt;3300000&amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;reg_gpio_dvfs: regulator-gpio {&lt;BR /&gt; compatible = "regulator-gpio";&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_dvfs&amp;gt;;&lt;BR /&gt; regulator-min-microvolt = &amp;lt;1300000&amp;gt;;&lt;BR /&gt; regulator-max-microvolt = &amp;lt;1400000&amp;gt;;&lt;BR /&gt; regulator-name = "gpio_dvfs";&lt;BR /&gt; regulator-type = "voltage";&lt;BR /&gt; gpios = &amp;lt;&amp;amp;gpio5 3 GPIO_ACTIVE_HIGH&amp;gt;;&lt;BR /&gt; states = &amp;lt;1300000 0x1 1400000 0x0&amp;gt;;&lt;BR /&gt; };&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;sound {&lt;BR /&gt; compatible = "fsl,imx6ul-evk-wm8960",&lt;BR /&gt; "fsl,imx-audio-wm8960";&lt;BR /&gt; model = "wm8960-audio";&lt;BR /&gt; cpu-dai = &amp;lt;&amp;amp;sai2&amp;gt;;&lt;BR /&gt; audio-codec = &amp;lt;&amp;amp;codec&amp;gt;;&lt;BR /&gt; asrc-controller = &amp;lt;&amp;amp;asrc&amp;gt;;&lt;BR /&gt; codec-master;&lt;BR /&gt; gpr = &amp;lt;&amp;amp;gpr&amp;gt;;&lt;BR /&gt; /*&lt;BR /&gt; * hp-det = &amp;lt;hp-det-pin hp-det-polarity&amp;gt;;&lt;BR /&gt; * hp-det-pin: JD1 JD2 or JD3&lt;BR /&gt; * hp-det-polarity = 0: hp detect high for headphone&lt;BR /&gt; * hp-det-polarity = 1: hp detect high for speaker&lt;BR /&gt; */&lt;BR /&gt; hp-det = &amp;lt;3 0&amp;gt;;&lt;BR /&gt; hp-det-gpios = &amp;lt;&amp;amp;gpio5 4 0&amp;gt;;&lt;BR /&gt; mic-det-gpios = &amp;lt;&amp;amp;gpio5 4 0&amp;gt;;&lt;BR /&gt; audio-routing =&lt;BR /&gt; "Headphone Jack", "HP_L",&lt;BR /&gt; "Headphone Jack", "HP_R",&lt;BR /&gt; "Ext Spk", "SPK_LP",&lt;BR /&gt; "Ext Spk", "SPK_LN",&lt;BR /&gt; "Ext Spk", "SPK_RP",&lt;BR /&gt; "Ext Spk", "SPK_RN",&lt;BR /&gt; "LINPUT2", "Mic Jack",&lt;BR /&gt; "LINPUT3", "Mic Jack",&lt;BR /&gt; "RINPUT1", "Main MIC",&lt;BR /&gt; "RINPUT2", "Main MIC",&lt;BR /&gt; "Mic Jack", "MICB",&lt;BR /&gt; "Main MIC", "MICB",&lt;BR /&gt; "CPU-Playback", "ASRC-Playback",&lt;BR /&gt; "Playback", "CPU-Playback",&lt;BR /&gt; "ASRC-Capture", "CPU-Capture",&lt;BR /&gt; "CPU-Capture", "Capture";&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;spi4 {&lt;BR /&gt; compatible = "spi-gpio";&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_spi4&amp;gt;;&lt;BR /&gt; pinctrl-assert-gpios = &amp;lt;&amp;amp;gpio5 8 GPIO_ACTIVE_LOW&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt; gpio-sck = &amp;lt;&amp;amp;gpio5 11 0&amp;gt;;&lt;BR /&gt; gpio-mosi = &amp;lt;&amp;amp;gpio5 10 0&amp;gt;;&lt;BR /&gt; cs-gpios = &amp;lt;&amp;amp;gpio5 7 0&amp;gt;;&lt;BR /&gt; num-chipselects = &amp;lt;1&amp;gt;;&lt;BR /&gt; #address-cells = &amp;lt;1&amp;gt;;&lt;BR /&gt; #size-cells = &amp;lt;0&amp;gt;;&lt;/P&gt;&lt;P&gt;gpio_spi: gpio_spi@0 {&lt;BR /&gt; compatible = "fairchild,74hc595";&lt;BR /&gt; gpio-controller;&lt;BR /&gt; #gpio-cells = &amp;lt;2&amp;gt;;&lt;BR /&gt; reg = &amp;lt;0&amp;gt;;&lt;BR /&gt; registers-number = &amp;lt;1&amp;gt;;&lt;BR /&gt; registers-default = /bits/ 8 &amp;lt;0x57&amp;gt;;&lt;BR /&gt; spi-max-frequency = &amp;lt;100000&amp;gt;;&lt;BR /&gt; };&lt;BR /&gt; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;cpu0 {&lt;BR /&gt; arm-supply = &amp;lt;&amp;amp;reg_arm&amp;gt;;&lt;BR /&gt; soc-supply = &amp;lt;&amp;amp;reg_soc&amp;gt;;&lt;BR /&gt; dc-supply = &amp;lt;&amp;amp;reg_gpio_dvfs&amp;gt;;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;clks {&lt;BR /&gt; assigned-clocks = &amp;lt;&amp;amp;clks IMX6UL_CLK_PLL4_AUDIO_DIV&amp;gt;;&lt;BR /&gt; assigned-clock-rates = &amp;lt;786432000&amp;gt;;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;csi {&lt;BR /&gt; status = "okay";&lt;/P&gt;&lt;P&gt;port {&lt;BR /&gt; csi1_ep: endpoint {&lt;BR /&gt; remote-endpoint = &amp;lt;&amp;amp;ov5640_ep&amp;gt;;&lt;BR /&gt; };&lt;BR /&gt; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;fec1 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_enet1&amp;gt;;&lt;BR /&gt; phy-mode = "rmii";&lt;BR /&gt; phy-handle = &amp;lt;&amp;amp;ethphy0&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;fec2 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_enet2&amp;gt;;&lt;BR /&gt; phy-mode = "rmii";&lt;BR /&gt; phy-handle = &amp;lt;&amp;amp;ethphy1&amp;gt;;&lt;BR /&gt; status = "okay";&lt;/P&gt;&lt;P&gt;mdio {&lt;BR /&gt; #address-cells = &amp;lt;1&amp;gt;;&lt;BR /&gt; #size-cells = &amp;lt;0&amp;gt;;&lt;/P&gt;&lt;P&gt;ethphy0: ethernet-phy@2 {&lt;BR /&gt; compatible = "ethernet-phy-ieee802.3-c22";&lt;BR /&gt; reg = &amp;lt;2&amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;ethphy1: ethernet-phy@1 {&lt;BR /&gt; compatible = "ethernet-phy-ieee802.3-c22";&lt;BR /&gt; reg = &amp;lt;1&amp;gt;;&lt;BR /&gt; };&lt;BR /&gt; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;flexcan1 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_flexcan1&amp;gt;;&lt;BR /&gt; xceiver-supply = &amp;lt;&amp;amp;reg_can_3v3&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;flexcan2 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_flexcan2&amp;gt;;&lt;BR /&gt; xceiver-supply = &amp;lt;&amp;amp;reg_can_3v3&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;gpc {&lt;BR /&gt; fsl,cpu_pupscr_sw2iso = &amp;lt;0x1&amp;gt;;&lt;BR /&gt; fsl,cpu_pupscr_sw = &amp;lt;0x0&amp;gt;;&lt;BR /&gt; fsl,cpu_pdnscr_iso2sw = &amp;lt;0x1&amp;gt;;&lt;BR /&gt; fsl,cpu_pdnscr_iso = &amp;lt;0x1&amp;gt;;&lt;BR /&gt; fsl,ldo-bypass = &amp;lt;0&amp;gt;; /* DCDC, ldo-enable */&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;i2c1 {&lt;BR /&gt; clock-frequency = &amp;lt;100000&amp;gt;;&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_i2c1&amp;gt;;&lt;BR /&gt; status = "okay";&lt;/P&gt;&lt;P&gt;mag3110@0e {&lt;BR /&gt; compatible = "fsl,mag3110";&lt;BR /&gt; reg = &amp;lt;0x0e&amp;gt;;&lt;BR /&gt; position = &amp;lt;2&amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;fxls8471@1e {&lt;BR /&gt; compatible = "fsl,fxls8471";&lt;BR /&gt; reg = &amp;lt;0x1e&amp;gt;;&lt;BR /&gt; position = &amp;lt;0&amp;gt;;&lt;BR /&gt; interrupt-parent = &amp;lt;&amp;amp;gpio5&amp;gt;;&lt;BR /&gt; interrupts = &amp;lt;0 8&amp;gt;;&lt;BR /&gt; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;i2c2 {&lt;BR /&gt; clock_frequency = &amp;lt;100000&amp;gt;;&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_i2c2&amp;gt;;&lt;BR /&gt; status = "okay";&lt;/P&gt;&lt;P&gt;codec: wm8960@1a {&lt;BR /&gt; compatible = "wlf,wm8960";&lt;BR /&gt; reg = &amp;lt;0x1a&amp;gt;;&lt;BR /&gt; clocks = &amp;lt;&amp;amp;clks IMX6UL_CLK_SAI2&amp;gt;;&lt;BR /&gt; clock-names = "mclk";&lt;BR /&gt; wlf,shared-lrclk;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;ov5640: ov5640@3c {&lt;BR /&gt; compatible = "ovti,ov5640";&lt;BR /&gt; reg = &amp;lt;0x3c&amp;gt;;&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_csi1&amp;gt;;&lt;BR /&gt; clocks = &amp;lt;&amp;amp;clks IMX6UL_CLK_CSI&amp;gt;;&lt;BR /&gt; clock-names = "csi_mclk";&lt;BR /&gt; pwn-gpios = &amp;lt;&amp;amp;gpio_spi 6 1&amp;gt;;&lt;BR /&gt; rst-gpios = &amp;lt;&amp;amp;gpio_spi 5 0&amp;gt;;&lt;BR /&gt; csi_id = &amp;lt;0&amp;gt;;&lt;BR /&gt; mclk = &amp;lt;24000000&amp;gt;;&lt;BR /&gt; mclk_source = &amp;lt;0&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt; port {&lt;BR /&gt; ov5640_ep: endpoint {&lt;BR /&gt; remote-endpoint = &amp;lt;&amp;amp;csi1_ep&amp;gt;;&lt;BR /&gt; };&lt;BR /&gt; };&lt;BR /&gt; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;iomuxc {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_hog_1&amp;gt;;&lt;BR /&gt; imx6ul-evk {&lt;BR /&gt; pinctrl_hog_1: hoggrp-1 {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x17059 /* SD1 CD */&lt;BR /&gt; MX6UL_PAD_GPIO1_IO05__USDHC1_VSELECT 0x17059 /* SD1 VSELECT */&lt;BR /&gt; MX6UL_PAD_GPIO1_IO09__GPIO1_IO09 0x17059 /* SD1 RESET */&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_csi1: csi1grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_CSI_MCLK__CSI_MCLK 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_PIXCLK__CSI_PIXCLK 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_VSYNC__CSI_VSYNC 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_HSYNC__CSI_HSYNC 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_DATA00__CSI_DATA02 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_DATA01__CSI_DATA03 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_DATA02__CSI_DATA04 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_DATA03__CSI_DATA05 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_DATA04__CSI_DATA06 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_DATA05__CSI_DATA07 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_DATA06__CSI_DATA08 0x1b088&lt;BR /&gt; MX6UL_PAD_CSI_DATA07__CSI_DATA09 0x1b088&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_enet1: enet1grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_enet2: enet2grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_GPIO1_IO07__ENET2_MDC 0x1b0b0&lt;BR /&gt; MX6UL_PAD_GPIO1_IO06__ENET2_MDIO 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET2_RX_EN__ENET2_RX_EN 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET2_RX_ER__ENET2_RX_ER 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET2_RX_DATA0__ENET2_RDATA00 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET2_RX_DATA1__ENET2_RDATA01 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET2_TX_EN__ENET2_TX_EN 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET2_TX_DATA0__ENET2_TDATA00 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET2_TX_DATA1__ENET2_TDATA01 0x1b0b0&lt;BR /&gt; MX6UL_PAD_ENET2_TX_CLK__ENET2_REF_CLK2 0x4001b031&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_flexcan1: flexcan1grp{&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_UART3_RTS_B__FLEXCAN1_RX 0x1b020&lt;BR /&gt; MX6UL_PAD_UART3_CTS_B__FLEXCAN1_TX 0x1b020&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_flexcan2: flexcan2grp{&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_UART2_RTS_B__FLEXCAN2_RX 0x1b020&lt;BR /&gt; MX6UL_PAD_UART2_CTS_B__FLEXCAN2_TX 0x1b020&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_adc1: adc1grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_GPIO1_IO02__GPIO1_IO02 0x000000B0&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_i2c1: i2c1grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_UART4_TX_DATA__I2C1_SCL 0x4001b8b0&lt;BR /&gt; MX6UL_PAD_UART4_RX_DATA__I2C1_SDA 0x4001b8b0&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_i2c2: i2c2grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_UART5_TX_DATA__I2C2_SCL 0x4001b8b0&lt;BR /&gt; MX6UL_PAD_UART5_RX_DATA__I2C2_SDA 0x4001b8b0&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_lcdif_dat: lcdifdatgrp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_LCD_DATA00__LCDIF_DATA00 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA01__LCDIF_DATA01 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA02__LCDIF_DATA02 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA03__LCDIF_DATA03 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA04__LCDIF_DATA04 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA05__LCDIF_DATA05 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA06__LCDIF_DATA06 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA07__LCDIF_DATA07 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA08__LCDIF_DATA08 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA09__LCDIF_DATA09 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA10__LCDIF_DATA10 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA11__LCDIF_DATA11 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA12__LCDIF_DATA12 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA13__LCDIF_DATA13 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA14__LCDIF_DATA14 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA15__LCDIF_DATA15 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA16__LCDIF_DATA16 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA17__LCDIF_DATA17 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA18__LCDIF_DATA18 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA19__LCDIF_DATA19 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA20__LCDIF_DATA20 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA21__LCDIF_DATA21 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA22__LCDIF_DATA22 0x79&lt;BR /&gt; MX6UL_PAD_LCD_DATA23__LCDIF_DATA23 0x79&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_lcdif_ctrl: lcdifctrlgrp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_LCD_CLK__LCDIF_CLK 0x79&lt;BR /&gt; MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE 0x79&lt;BR /&gt; MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC 0x79&lt;BR /&gt; MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC 0x79&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_pwm1: pwm1grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_GPIO1_IO08__PWM1_OUT 0x110b0&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_qspi: qspigrp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_NAND_WP_B__QSPI_A_SCLK 0x70a1&lt;BR /&gt; MX6UL_PAD_NAND_READY_B__QSPI_A_DATA00 0x70a1&lt;BR /&gt; MX6UL_PAD_NAND_CE0_B__QSPI_A_DATA01 0x70a1&lt;BR /&gt; MX6UL_PAD_NAND_CE1_B__QSPI_A_DATA02 0x70a1&lt;BR /&gt; MX6UL_PAD_NAND_CLE__QSPI_A_DATA03 0x70a1&lt;BR /&gt; MX6UL_PAD_NAND_DQS__QSPI_A_SS0_B 0x70a1&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_sai2: sai2grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_JTAG_TDI__SAI2_TX_BCLK 0x17088&lt;BR /&gt; MX6UL_PAD_JTAG_TDO__SAI2_TX_SYNC 0x17088&lt;BR /&gt; MX6UL_PAD_JTAG_TRST_B__SAI2_TX_DATA 0x11088&lt;BR /&gt; MX6UL_PAD_JTAG_TCK__SAI2_RX_DATA 0x11088&lt;BR /&gt; MX6UL_PAD_JTAG_TMS__SAI2_MCLK 0x17088&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_uart1: uart1grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1&lt;BR /&gt; MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_uart2: uart2grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX 0x1b0b1&lt;BR /&gt; MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX 0x1b0b1&lt;BR /&gt; MX6UL_PAD_UART3_RX_DATA__UART2_DCE_RTS 0x1b0b1&lt;BR /&gt; MX6UL_PAD_UART3_TX_DATA__UART2_DCE_CTS 0x1b0b1&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_uart2dte: uart2dtegrp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_UART2_TX_DATA__UART2_DTE_RX 0x1b0b1&lt;BR /&gt; MX6UL_PAD_UART2_RX_DATA__UART2_DTE_TX 0x1b0b1&lt;BR /&gt; MX6UL_PAD_UART3_RX_DATA__UART2_DTE_CTS 0x1b0b1&lt;BR /&gt; MX6UL_PAD_UART3_TX_DATA__UART2_DTE_RTS 0x1b0b1&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_usdhc1: usdhc1grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059&lt;BR /&gt; MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10071&lt;BR /&gt; MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059&lt;BR /&gt; MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059&lt;BR /&gt; MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059&lt;BR /&gt; MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_usdhc1_100mhz: usdhc1grp100mhz {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170b9&lt;BR /&gt; MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100b9&lt;BR /&gt; MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170b9&lt;BR /&gt; MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170b9&lt;BR /&gt; MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170b9&lt;BR /&gt; MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170b9&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_usdhc1_200mhz: usdhc1grp200mhz {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170f9&lt;BR /&gt; MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100f9&lt;BR /&gt; MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170f9&lt;BR /&gt; MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170f9&lt;BR /&gt; MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170f9&lt;BR /&gt; MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170f9&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_usdhc2: usdhc2grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x10069&lt;BR /&gt; MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_usdhc2_8bit: usdhc2grp_8bit {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x10069&lt;BR /&gt; MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x17059&lt;BR /&gt; MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x17059&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_usdhc2_8bit_100mhz: usdhc2grp_8bit_100mhz {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x100b9&lt;BR /&gt; MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x170b9&lt;BR /&gt; MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x170b9&lt;BR /&gt; MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x170b9&lt;BR /&gt; MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x170b9&lt;BR /&gt; MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x170b9&lt;BR /&gt; MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x170b9&lt;BR /&gt; MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x170b9&lt;BR /&gt; MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x170b9&lt;BR /&gt; MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x170b9&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_usdhc2_8bit_200mhz: usdhc2grp_8bit_200mhz {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x100f9&lt;BR /&gt; MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x170f9&lt;BR /&gt; MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x170f9&lt;BR /&gt; MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x170f9&lt;BR /&gt; MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x170f9&lt;BR /&gt; MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x170f9&lt;BR /&gt; MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x170f9&lt;BR /&gt; MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x170f9&lt;BR /&gt; MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x170f9&lt;BR /&gt; MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x170f9&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_wdog: wdoggrp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6UL_PAD_LCD_RESET__WDOG1_WDOG_ANY 0x30b0&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;BR /&gt; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;iomuxc_snvs {&lt;BR /&gt; pinctrl-names = "default_snvs";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_hog_2&amp;gt;;&lt;BR /&gt; imx6ul-evk {&lt;BR /&gt; pinctrl_hog_2: hoggrp-2 {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6ULL_PAD_SNVS_TAMPER0__GPIO5_IO00 0x80000000&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_dvfs: dvfsgrp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6ULL_PAD_SNVS_TAMPER3__GPIO5_IO03 0x79&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;BR /&gt; &lt;BR /&gt; pinctrl_lcdif_reset: lcdifresetgrp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; /* used for lcd reset */&lt;BR /&gt; MX6ULL_PAD_SNVS_TAMPER9__GPIO5_IO09 0x79&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_spi4: spi4grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6ULL_PAD_BOOT_MODE0__GPIO5_IO10 0x70a1&lt;BR /&gt; MX6ULL_PAD_BOOT_MODE1__GPIO5_IO11 0x70a1&lt;BR /&gt; MX6ULL_PAD_SNVS_TAMPER7__GPIO5_IO07 0x70a1&lt;BR /&gt; MX6ULL_PAD_SNVS_TAMPER8__GPIO5_IO08 0x80000000&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;pinctrl_sai2_hp_det_b: sai2_hp_det_grp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6ULL_PAD_SNVS_TAMPER4__GPIO5_IO04 0x17059&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;BR /&gt; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&amp;amp;lcdif {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_lcdif_dat&lt;BR /&gt; &amp;amp;pinctrl_lcdif_ctrl&lt;BR /&gt; &amp;amp;pinctrl_lcdif_reset&amp;gt;;&lt;BR /&gt; display = &amp;lt;&amp;amp;display0&amp;gt;;&lt;BR /&gt; status = "okay";&lt;/P&gt;&lt;P&gt;display0: display {&lt;BR /&gt; bits-per-pixel = &amp;lt;16&amp;gt;;&lt;BR /&gt; bus-width = &amp;lt;24&amp;gt;;&lt;/P&gt;&lt;P&gt;display-timings {&lt;BR /&gt; native-mode = &amp;lt;&amp;amp;timing0&amp;gt;;&lt;BR /&gt; timing0: timing0 {&lt;BR /&gt; clock-frequency = &amp;lt;9200000&amp;gt;;&lt;BR /&gt; hactive = &amp;lt;480&amp;gt;;&lt;BR /&gt; vactive = &amp;lt;272&amp;gt;;&lt;BR /&gt; hfront-porch = &amp;lt;8&amp;gt;;&lt;BR /&gt; hback-porch = &amp;lt;4&amp;gt;;&lt;BR /&gt; hsync-len = &amp;lt;41&amp;gt;;&lt;BR /&gt; vback-porch = &amp;lt;2&amp;gt;;&lt;BR /&gt; vfront-porch = &amp;lt;4&amp;gt;;&lt;BR /&gt; vsync-len = &amp;lt;10&amp;gt;;&lt;/P&gt;&lt;P&gt;hsync-active = &amp;lt;0&amp;gt;;&lt;BR /&gt; vsync-active = &amp;lt;0&amp;gt;;&lt;BR /&gt; de-active = &amp;lt;1&amp;gt;;&lt;BR /&gt; pixelclk-active = &amp;lt;0&amp;gt;;&lt;BR /&gt; };&lt;BR /&gt; };&lt;BR /&gt; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;pwm1 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_pwm1&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;pxp {&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;qspi {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_qspi&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt; ddrsmp=&amp;lt;0&amp;gt;;&lt;/P&gt;&lt;P&gt;flash0: n25q256a@0 {&lt;BR /&gt; #address-cells = &amp;lt;1&amp;gt;;&lt;BR /&gt; #size-cells = &amp;lt;1&amp;gt;;&lt;BR /&gt; compatible = "micron,n25q256a";&lt;BR /&gt; spi-max-frequency = &amp;lt;29000000&amp;gt;;&lt;BR /&gt; spi-nor,ddr-quad-read-dummy = &amp;lt;6&amp;gt;;&lt;BR /&gt; reg = &amp;lt;0&amp;gt;;&lt;BR /&gt; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;sai2 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_sai2&lt;BR /&gt; &amp;amp;pinctrl_sai2_hp_det_b&amp;gt;;&lt;/P&gt;&lt;P&gt;assigned-clocks = &amp;lt;&amp;amp;clks IMX6UL_CLK_SAI2_SEL&amp;gt;,&lt;BR /&gt; &amp;lt;&amp;amp;clks IMX6UL_CLK_SAI2&amp;gt;;&lt;BR /&gt; assigned-clock-parents = &amp;lt;&amp;amp;clks IMX6UL_CLK_PLL4_AUDIO_DIV&amp;gt;;&lt;BR /&gt; assigned-clock-rates = &amp;lt;0&amp;gt;, &amp;lt;12288000&amp;gt;;&lt;/P&gt;&lt;P&gt;status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;uart1 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_uart1&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;uart2 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_uart2&amp;gt;;&lt;BR /&gt; fsl,uart-has-rtscts;&lt;BR /&gt; /* for DTE mode, add below change */&lt;BR /&gt; /* fsl,dte-mode; */&lt;BR /&gt; /* pinctrl-0 = &amp;lt;&amp;amp;pinctrl_uart2dte&amp;gt;; */&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;usbotg1 {&lt;BR /&gt; dr_mode = "otg";&lt;BR /&gt; srp-disable;&lt;BR /&gt; hnp-disable;&lt;BR /&gt; adp-disable;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;usbotg2 {&lt;BR /&gt; dr_mode = "host";&lt;BR /&gt; disable-over-current;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;usbphy1 {&lt;BR /&gt; tx-d-cal = &amp;lt;0x5&amp;gt;;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;usbphy2 {&lt;BR /&gt; tx-d-cal = &amp;lt;0x5&amp;gt;;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;usdhc1 {&lt;BR /&gt; pinctrl-names = "default", "state_100mhz", "state_200mhz";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_usdhc1&amp;gt;;&lt;BR /&gt; pinctrl-1 = &amp;lt;&amp;amp;pinctrl_usdhc1_100mhz&amp;gt;;&lt;BR /&gt; pinctrl-2 = &amp;lt;&amp;amp;pinctrl_usdhc1_200mhz&amp;gt;;&lt;BR /&gt; cd-gpios = &amp;lt;&amp;amp;gpio1 19 GPIO_ACTIVE_LOW&amp;gt;;&lt;BR /&gt; keep-power-in-suspend;&lt;BR /&gt; enable-sdio-wakeup;&lt;BR /&gt; vmmc-supply = &amp;lt;&amp;amp;reg_sd1_vmmc&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;usdhc2 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_usdhc2&amp;gt;;&lt;BR /&gt; non-removable;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;wdog1 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_wdog&amp;gt;;&lt;BR /&gt; fsl,wdog_b;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&amp;amp;adc1 {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_adc1&amp;gt;;&lt;BR /&gt; vref-supply = &amp;lt;&amp;amp;reg_vref_3v3&amp;gt;;&lt;BR /&gt; num-channels = &amp;lt;1&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I compiled kernel using&amp;nbsp;imx6ull-14x14-evk_defconfig and I wrote&amp;nbsp;zImage and&amp;nbsp;imx6ull-14x14-evk.dtb to sd partition "Boot imx6ull" .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I got the same result&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;root@imx6ull14x14evk:~# dmesg | grep "Linux version\|command\|adc" &lt;BR /&gt;[ 0.000000] Linux version 4.1.15-2.0.1-ge591809 (carlos@carlos-HP-ProBook-6560b) (gcc version 5.3.0 (GCC) ) #1 SMP PREEMPT Mon Apr 27 19:23:24 CEST 2020&lt;BR /&gt;[ 0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw &lt;BR /&gt;[ 1.765586] vf610-adc 2198000.adc: vf610_adc_calibration start &lt;BR /&gt;[ 1.770258] vf610-adc 2198000.adc: VF610_REG_ADC_HC0 = 1f &lt;BR /&gt;[ 1.774664] vf610-adc 2198000.adc: VF610_REG_ADC_HC1 = 1f &lt;BR /&gt;[ 1.778901] vf610-adc 2198000.adc: VF610_REG_ADC_HS = 0 &lt;BR /&gt;[ 1.783114] vf610-adc 2198000.adc: VF610_REG_ADC_R0 = 0&lt;BR /&gt;[ 1.787179] vf610-adc 2198000.adc: VF610_REG_ADC_R1 = 0&lt;BR /&gt;[ 1.791214] vf610-adc 2198000.adc: VF610_REG_ADC_CFG = 104e8&lt;BR /&gt;[ 1.795810] vf610-adc 2198000.adc: VF610_REG_ADC_GC = 20&lt;BR /&gt;[ 1.799939] vf610-adc 2198000.adc: VF610_REG_ADC_GS = 0&lt;BR /&gt;[ 1.804109] vf610-adc 2198000.adc: VF610_REG_ADC_CV = 0&lt;BR /&gt;[ 1.808161] vf610-adc 2198000.adc: VF610_REG_ADC_OFS = 0&lt;BR /&gt;[ 1.812282] vf610-adc 2198000.adc: VF610_REG_ADC_CAL = 0&lt;BR /&gt;[ 1.816527] vf610-adc 2198000.adc: VF610_REG_ADC_PCTL = 0&lt;BR /&gt;[ 1.827813] vf610-adc 2198000.adc: vf610_adc_calibration end&lt;BR /&gt;[ 1.835421] vf610-adc 2198000.adc: VF610_REG_ADC_HC0 = 9f&lt;BR /&gt;[ 1.839558] vf610-adc 2198000.adc: VF610_REG_ADC_HC1 = 1f&lt;BR /&gt;[ 1.849920] vf610-adc 2198000.adc: VF610_REG_ADC_HS = 0&lt;BR /&gt;[ 1.858617] vf610-adc 2198000.adc: VF610_REG_ADC_R0 = 1&lt;BR /&gt;[ 1.866269] vf610-adc 2198000.adc: VF610_REG_ADC_R1 = 0&lt;BR /&gt;[ 1.870242] vf610-adc 2198000.adc: VF610_REG_ADC_CFG = 104e8&lt;BR /&gt;[ 1.874884] vf610-adc 2198000.adc: VF610_REG_ADC_GC = 20&lt;BR /&gt;[ 1.878930] vf610-adc 2198000.adc: VF610_REG_ADC_GS = 0&lt;BR /&gt;[ 1.883008] vf610-adc 2198000.adc: VF610_REG_ADC_CV = 0&lt;BR /&gt;[ 1.886964] vf610-adc 2198000.adc: VF610_REG_ADC_OFS = 0&lt;BR /&gt;[ 1.891002] vf610-adc 2198000.adc: VF610_REG_ADC_CAL = 8&lt;BR /&gt;[ 1.895140] vf610-adc 2198000.adc: VF610_REG_ADC_PCTL = 0&lt;BR /&gt;[ 2.102923] can: broadcast manager protocol (rev 20120528 t)&lt;BR /&gt;root@imx6ull14x14evk:~# cd /sys/bus/iio/devices/iio:device0&lt;BR /&gt;root@imx6ull14x14evk:/sys/bus/iio/devices/iio:device0# ls -l&lt;BR /&gt;total 0&lt;BR /&gt;-r--r--r-- 1 root root 4096 Nov 5 06:28 dev&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Nov 5 06:28 in_voltage0_raw&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Nov 5 06:28 in_voltage_sampling_frequency&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Nov 5 06:28 in_voltage_scale&lt;BR /&gt;-r--r--r-- 1 root root 4096 Nov 5 06:28 name&lt;BR /&gt;lrwxrwxrwx 1 root root 0 Nov 5 06:28 of_node -&amp;gt; ../../../../../../firmware/devicetree/base/soc/aips-bus@02100000/adc@02198000&lt;BR /&gt;drwxr-xr-x 2 root root 0 Nov 5 06:28 power&lt;BR /&gt;-r--r--r-- 1 root root 4096 Nov 5 06:28 sampling_frequency_available&lt;BR /&gt;lrwxrwxrwx 1 root root 0 Nov 5 06:28 subsystem -&amp;gt; ../../../../../../bus/iio&lt;BR /&gt;-rw-r--r-- 1 root root 4096 Jan 1 1970 uevent&lt;BR /&gt;root@imx6ull14x14evk:/sys/bus/iio/devices/iio:device0# cat in_voltage0_raw&lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;4089&lt;BR /&gt;root@imx6ull14x14evk:/sys/bus/iio/devices/iio:device0# cat in_voltage_sampling_frequency&lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;69915&lt;BR /&gt;root@imx6ull14x14evk:/sys/bus/iio/devices/iio:device0# cat in_voltage_scale&lt;BR /&gt;vf610-adc 2198000.adc: vf610_read_raw &lt;BR /&gt;0.805664062&lt;BR /&gt;root@imx6ull14x14evk:/sys/bus/iio/devices/iio:device0#&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I placed resistor R1719 (SPF-28616_C2_base.pdf) and I measured voltage in J1706.pin3 = 0x02V, which doesn't correspond with value read by adc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Carlos Barreiro&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Apr 2020 18:33:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/imx6ull-ADC-read-count-values-error/m-p/1057954#M155562</guid>
      <dc:creator>carbar</dc:creator>
      <dc:date>2020-04-27T18:33:52Z</dc:date>
    </item>
  </channel>
</rss>

