Cirrus Logic EP93xx ADC driver.

1. Overview

The driver is intended to work on both low-end (EP9301, EP9302) devices with
5-channel ADC and high-end (EP9307, EP9312, EP9315) devices with 10-channel
touchscreen/ADC module.

2. Channel numbering

Numbering scheme for channels 0..4 is defined in EP9301 and EP9302 datasheets.
EP9307, EP9312 and EP9312 have 3 channels more (total 8), but the numbering is
not defined. So the last three are numbered randomly, let's say.

Assuming ep93xx_adc is IIO device0, you'd find the following entries under
/sys/bus/iio/devices/iio:device0/:

  +-----------------+---------------+
  | sysfs entry     | ball/pin name |
  +-----------------+---------------+
  | in_voltage0_raw | YM            |
  | in_voltage1_raw | SXP           |
  | in_voltage2_raw | SXM           |
  | in_voltage3_raw | SYP           |
  | in_voltage4_raw | SYM           |
  | in_voltage5_raw | XP            |
  | in_voltage6_raw | XM            |
  | in_voltage7_raw | YP            |
  +-----------------+---------------+
