summaryrefslogtreecommitdiff
path: root/Documentation/iio/ep93xx_adc.rst
blob: 4fd8dea3f6b8c7f26c8aac8ae5b1fcc335d49719 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
==============================
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            |
  +-----------------+---------------+