Merge tag 'rproc-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/andersson...
[platform/kernel/linux-starfive.git] / Documentation / iio / ep93xx_adc.rst
1 ==============================
2 Cirrus Logic EP93xx ADC driver
3 ==============================
4
5 1. Overview
6 ===========
7
8 The driver is intended to work on both low-end (EP9301, EP9302) devices with
9 5-channel ADC and high-end (EP9307, EP9312, EP9315) devices with 10-channel
10 touchscreen/ADC module.
11
12 2. Channel numbering
13 ====================
14
15 Numbering scheme for channels 0..4 is defined in EP9301 and EP9302 datasheets.
16 EP9307, EP9312 and EP9315 have 3 channels more (total 8), but the numbering is
17 not defined. So the last three are numbered randomly, let's say.
18
19 Assuming ep93xx_adc is IIO device0, you'd find the following entries under
20 /sys/bus/iio/devices/iio:device0/:
21
22   +-----------------+---------------+
23   | sysfs entry     | ball/pin name |
24   +=================+===============+
25   | in_voltage0_raw | YM            |
26   +-----------------+---------------+
27   | in_voltage1_raw | SXP           |
28   +-----------------+---------------+
29   | in_voltage2_raw | SXM           |
30   +-----------------+---------------+
31   | in_voltage3_raw | SYP           |
32   +-----------------+---------------+
33   | in_voltage4_raw | SYM           |
34   +-----------------+---------------+
35   | in_voltage5_raw | XP            |
36   +-----------------+---------------+
37   | in_voltage6_raw | XM            |
38   +-----------------+---------------+
39   | in_voltage7_raw | YP            |
40   +-----------------+---------------+