cypress,tm2-touchkey.yaml 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/input/cypress,tm2-touchkey.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Samsung TM2 touch key controller
  7. maintainers:
  8. - Stephan Gerhold <stephan@gerhold.net>
  9. description: |
  10. Touch key controllers similar to the TM2 can be found in a wide range of
  11. Samsung devices. They are implemented using many different MCUs, but use
  12. a similar I2C protocol.
  13. allOf:
  14. - $ref: input.yaml#
  15. properties:
  16. compatible:
  17. enum:
  18. - cypress,tm2-touchkey
  19. - cypress,midas-touchkey
  20. - cypress,aries-touchkey
  21. - coreriver,tc360-touchkey
  22. reg:
  23. maxItems: 1
  24. interrupts:
  25. maxItems: 1
  26. vdd-supply:
  27. description: Optional regulator for LED voltage, 3.3V.
  28. vcc-supply:
  29. description: Optional regulator for MCU, 1.8V-3.3V (depending on MCU).
  30. vddio-supply:
  31. description: |
  32. Optional regulator that provides digital I/O voltage,
  33. e.g. for pulling up the interrupt line or the I2C pins.
  34. linux,keycodes:
  35. minItems: 1
  36. maxItems: 4
  37. required:
  38. - compatible
  39. - reg
  40. - interrupts
  41. additionalProperties: false
  42. examples:
  43. - |
  44. #include <dt-bindings/input/input.h>
  45. #include <dt-bindings/interrupt-controller/irq.h>
  46. i2c {
  47. #address-cells = <1>;
  48. #size-cells = <0>;
  49. touchkey@20 {
  50. compatible = "cypress,tm2-touchkey";
  51. reg = <0x20>;
  52. interrupt-parent = <&gpa3>;
  53. interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
  54. vcc-supply = <&ldo32_reg>;
  55. vdd-supply = <&ldo33_reg>;
  56. linux,keycodes = <KEY_MENU KEY_BACK>;
  57. };
  58. };