ADC is not showing up in Apalis V1.1Z (but shows up in V1.1C)

Hi all,

I’ve been developing my application using an Apalis iMX6Q 2GB IT V1.1C module. As we’re building more units, we recently got an additional shipment of Apalis modules that were a different version, V1.1Z.

ADC channels show up on the V1.1C module but not the V1.1Z module. I don’t see any IIO devices listed on the Z module at all. Did the ADC interface move to a different I2C bus with this new version?

Both installations of TorizonCore are identical. My device tree is slightly customized (although nothing that would affect ADC, I don’t think), and it is largely identical to imx6q-apalis-ixora-v1.2.dts. I’m using torizoncore-builder with the base image torizon-core-docker-apalis-imx6-Tezi_5.5.0+build.11.tar.

See below, output from two identical installations (only difference is Apalis module version number).

V1.1C Module:

lari200:~$ ls /sys/bus/iio/devices/iio:device0
dev             in_voltage4_raw  in_voltage6_raw  in_voltage_scale  of_node  subsystem
in_temp8_input  in_voltage5_raw  in_voltage7_raw  name              power    uevent

lari200:~$ ls /dev/apalis-adc*
/dev/apalis-adc0  /dev/apalis-adc1  /dev/apalis-adc2  /dev/apalis-adc3

lari200:~$ ls /sys/devices/soc0/soc/2100000.aips-bus/21a4000.i2c/i2c-2/2-0041
driver  modalias  name  of_node  power  stmpe-adc  subsystem  uevent

On the Z module, there are no IIO devices listed, stmpe-adc isn’t listed on the I2C-2 bus, and no apalis-adc symlinks are present:

V1.1Z Module:

lari203:~$ ls /sys/bus/iio/devices/iio:device0
ls: cannot access '/sys/bus/iio/devices/iio:device0': No such file or directory

lari203:~$ ls /sys/bus
ac97  clockevents  coresight     genpd  i2c       mmc       pci          scsi    serio  tee   usb-serial
amba  clocksource  cpu           gpio   mdio_bus  mmc_rpmb  pci_express  sdio    soc    ulpi  virtio
cec   container    event_source  hid    media     nvmem     platform     serial  spi    usb   workqueue

lari203:~$ ls /dev/apalis-adc*
ls: cannot access '/dev/apalis-adc*': No such file or directory

lari203:~$ ls /sys/devices/soc0/soc/2100000.aips-bus/21a4000.i2c/i2c-2/2-0041
modalias  name  of_node  power  subsystem  uevent

I also don’t see the stmpe-adc module listed in dmesg on the Z module:

V1.1C Module:

lari200:~$ dmesg | grep adc
[   11.025061] stmpe-adc stmpe-adc: DMA mask not set

V1.1Z Module:

lari203:~$ dmesg | grep adc

Ok, I’ve answered my own question. It looks like Toradex is shipping Apalis V1.1Z and V1.1Y modules where the SMTPE811 ADC/touchscreen driver chip has been left off due to “supply chain issues”. I’m pretty upset about this, as we were never told these modules would not include ADCs when we purchased them, and this is a critical component for us. This has cost us time and delayed delivering these units to the client.

This fact is clearly indicated in the revision history.

Excuse me, no. Unacceptable. Your Apalis datasheet lists 4 ADC channels. You sold us Apalis modules that do not meet that specification. Period. Furthermore, your web shop lists a “V1.1C” badge over the product (as it did back in January, when I placed this order). The invoice I have from you also lists V1.1C. We received V1.1Z modules instead, with no advance warning that these would not meet specification. And now you are pointing me to a revision history document as justification. This is actually infuriating. Major changes to specifications (such as removing a major peripheral) do not constitute a revision changes–this is an entirely different product and it should not be sold under the same part number with the same datasheet.

I’m a technical support engineer and not directly involved in sales process. If you Purchase Order stated V1.1C version but you received a V 1.1Z its a contract violation and I’m deeply sorry about it. Could you please privately share with me your PO and I will escalate this issue to an upper management.