CHROMIUM: HACK: ignore error in set up of cros_ec_sensor_ring iio_device

cros-ec-ring exposes attributes that are tricky for libiio to parse due to
its use of extended_name on a few of its channels. Since this driver is
slated for removal, and the correct fix for this general issue is tricky
and likely to require design work, the path of least friction is a
temporary hack in our internal repo to allow the iio_context to proceed
to being created even if cros-ec-ring causes a parse error

TEST=run mems_setup with the sensor ring driver loaded,
     observe it ignore the device instead of failing

Change-Id: I51f825c6797a23f469703aaba4a5551bf5a60b61
Signed-off-by: Enrico Granata <>
Commit-Ready: ChromeOS CL Exonerator Bot <>
Reviewed-by: Gwendal Grignou <>
1 file changed
tree: c833ec48adce0fbdc24fecae3fdd12eabf61b604
  1. .gitignore
  2. .gitmodules
  3. .travis.yml
  4. CI/
  5. CMakeLists.txt
  6. COPYING.txt
  7. Distribution.xml.cmakein
  10. README.chromium
  12. appveyor.yml
  13. backend.c
  14. bindings/
  15. buffer.c
  16. channel.c
  17. cmake/
  18. context.c
  19. debug.h
  20. deps/
  21. device.c
  22. doc/
  23. examples/
  24. iio-config.h.cmakein
  25. iio-lock.h
  26. iio-private.h
  27. iio.h
  28. iiod-client.c
  29. iiod-client.h
  30. iiod/
  31. libiio.iss.cmakein
  32. libiio.pc.cmakein
  33. libiio.rules.cmakein
  34. local.c
  35. lock.c
  36. mainpage.dox
  37. network.c
  38. properties.rc.cmakein
  39. scan.c
  40. serial.c
  41. sort.c
  42. sort.h
  43. tests/
  44. usb.c
  45. utilities.c
  46. xml.c
  47. xml/


Library for interfacing with Linux IIO devices

libiio is used to interface to the Linux Industrial Input/Output (IIO) Subsystem. The Linux IIO subsystem is intended to provide support for devices that in some sense are analog to digital or digital to analog converters (ADCs, DACs). This includes, but is not limited to ADCs, Accelerometers, Gyros, IMUs, Capacitance to Digital Converters (CDCs), Pressure Sensors, Color, Light and Proximity Sensors, Temperature Sensors, Magnetometers, DACs, DDS (Direct Digital Synthesis), PLLs (Phase Locked Loops), Variable/Programmable Gain Amplifiers (VGA, PGA), and RF transceivers. You can use libiio natively on an embedded Linux target (local mode), or use libiio to communicate remotely to that same target from a host Linux, Windows or MAC over USB or Ethernet or Serial.

Although libiio was primarily developed by Analog Devices Inc., it is an active open source library, which many people have contributed to. It released under the GNU Lesser General Public License, version 2.1 or later, this open-source license allows anyone to use the library, on any vendors processor/FPGA/SoC, which may be controlling any vendors peripheral device (ADC, DAC, etc) either locally or remotely. This includes closed or open-source, commercial or non-commercial applications (subject to the LGPL license freedoms, obligations and restrictions).

License : License Latest Release : GitHub release Downloads : Github All Releases

Scans : Coverity Scan Build Status Release docs: Documentation Issues : open bugs closed bugs

If you have a question about libiio and an Analog Devices IIO kernel driver please ask on : EngineerZone. If you have a question about a non-ADI devices, please ask it on github.

As with many open source packages, we use GitHub to do develop and maintain the source, and Travis CI and Appveyor for continuous integration.

  • If you want to just use libiio, we suggest using the latest release.
  • If you think you have found a bug in the release, or need a feature which isn't in the release, try the latest untested binaries from the master branch and check out the documentation based on the master branch. We provide builds for a few operating systems. If you need something else, we can most likely add that -- just ask.
Operating SystemGitHub master statusVersionPrimary Installer PackageAlternative Package, tarball or zip
WindowsWindows StatusWindows 10
Windows 8.1
Windows 8
Windows 7
Latest Windows installerLatest Windows zip
OS XOSX StatusOS X High Sierra
(v 10.13)
OS-X package 10.13OS-X tarball 10.10
macOS Sierra
(v 10.12)
OS-X package 10.12OS-X tarball 10.12
OS X El Capitan
(v 10.11)
OS-X package 10.11OS-X tarball 10.11
LinuxLinux StatusUbuntu Bionic Beaver
(v 18.04)1
DebianRPM File tar.gz
Ubuntu Xenial Xerus
(v 16.04)1
DebianRPM File tar.gz file
Ubuntu Trusty Tahr
(v 14.04)1
DebianRPM File tar.gz file
CentOS 7RPM FileDebian tar.gz
CentOS 6RPM FileDebian tar.gz

If you use it, and like it - please let us know. If you use it, and hate it - please let us know that too. The goal of the project is to try to make Linux IIO devices easier to use on a variety of platforms. If we aren't doing that - we will try to make it better.

Feedback is appreciated (in order of preference):


  1. The Ubuntu packages are known to work on their Debian counterpart releases.