Staging
v0.8.1
https://github.com/torvalds/linux
Raw File
Tip revision: 5816b3e6577eaa676ceb00a848f0fd65fe2adc29 authored by Linus Torvalds on 26 September 2021, 21:08:19 UTC
Linux 5.15-rc3
Tip revision: 5816b3e
sharp,gp2ap002.yaml
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/light/sharp,gp2ap002.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Sharp GP2AP002A00F and GP2AP002S00F proximity and ambient light sensors

maintainers:
  - Linus Walleij <linus.walleij@linaro.org>

description: |
  Proximity and ambient light sensor with IR LED for the proximity
  sensing and an analog output for light intensity. The ambient light
  sensor output is not available on the GP2AP002S00F variant.

properties:
  compatible:
    enum:
      - sharp,gp2ap002a00f
      - sharp,gp2ap002s00f

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1
    description: an interrupt for proximity, usually a GPIO line

  vdd-supply:
    description: VDD power supply a phandle to a regulator

  vio-supply:
    description: VIO power supply a phandle to a regulator

  io-channels:
    maxItems: 1
    description: ALSOUT ADC channel to read the ambient light

  io-channel-names:
    const: alsout

  sharp,proximity-far-hysteresis:
    $ref: /schemas/types.yaml#/definitions/uint8
    description: |
      Hysteresis setting for "far" object detection, this setting is
      device-unique and adjust the optical setting for proximity detection
      of a "far away" object in front of the sensor.

  sharp,proximity-close-hysteresis:
    $ref: /schemas/types.yaml#/definitions/uint8
    description: |
      Hysteresis setting for "close" object detection, this setting is
      device-unique and adjust the optical setting for proximity detection
      of a "close" object in front of the sensor.

required:
  - compatible
  - reg
  - interrupts
  - sharp,proximity-far-hysteresis
  - sharp,proximity-close-hysteresis

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>

    i2c {
      #address-cells = <1>;
      #size-cells = <0>;

      light-sensor@44 {
        compatible = "sharp,gp2ap002a00f";
        reg = <0x44>;
        interrupts = <18 IRQ_TYPE_EDGE_FALLING>;
        vdd-supply = <&vdd_regulator>;
        vio-supply = <&vio_regulator>;
        io-channels = <&adc_channel>;
        io-channel-names = "alsout";
        sharp,proximity-far-hysteresis = /bits/ 8 <0x2f>;
        sharp,proximity-close-hysteresis = /bits/ 8 <0x0f>;
      };
    };

...
back to top