Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / iio / light / capella,cm3605.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/iio/light/capella,cm3605.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title:
8   Capella Microsystems CM3605 Ambient Light and Short Distance Proximity Sensor
9
10 maintainers:
11   - Linus Walleij <linus.walleij@linaro.org>
12   - Kevin Tsai <ktsai@capellamicro.com>
13
14 description: |
15   The CM3605 is an entirely analog part. However, it requires quite a bit of
16   software logic to interface a host operating system.
17
18   This ALS and proximity sensor was one of the very first deployed in mobile
19   handsets, notably it is used in the very first Nexus One Android phone from
20   2010.
21
22 properties:
23   compatible:
24     const: capella,cm3605
25
26   aset-gpios:
27     maxItems: 1
28     description:
29       ASET line (drive low to activate the ALS, should be flagged
30       GPIO_ACTIVE_LOW)
31
32   interrupts:
33     maxItems: 1
34     description:
35       Connected to the POUT (proximity sensor out) line. The edge
36       detection must be set to IRQ_TYPE_EDGE_BOTH so as to detect
37       movements toward and away from the proximity sensor.
38
39   io-channels:
40     maxItems: 1
41     description:
42       ADC channel used for converting the voltage from AOUT to a digital
43       representation.
44
45   io-channel-names:
46     const: aout
47
48   vdd-supply: true
49
50   capella,aset-resistance-ohms:
51     $ref: /schemas/types.yaml#/definitions/uint32
52     enum: [50000, 100000, 300000, 600000]
53     description: >
54       Sensitivity calibration resistance. Note that calibration curves
55       are only provided for specific allowed values. Default: 100 kOhms.
56
57 required:
58   - compatible
59   - aset-gpios
60   - interrupts
61   - io-channels
62   - io-channel-names
63
64 additionalProperties: false
65
66 examples:
67   - |
68     #include <dt-bindings/gpio/gpio.h>
69     #include <dt-bindings/interrupt-controller/irq.h>
70     light-sensor {
71         compatible = "capella,cm3605";
72         vdd-supply = <&foo_reg>;
73         aset-gpios = <&foo_gpio 1 GPIO_ACTIVE_LOW>;
74         capella,aset-resistance-ohms = <100000>;
75         interrupts = <1 IRQ_TYPE_EDGE_BOTH>;
76         io-channels = <&adc 0x01>;
77         io-channel-names = "aout";
78     };
79 ...