hid-over-i2c.yaml 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/input/hid-over-i2c.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: HID over I2C Devices
  7. maintainers:
  8. - Benjamin Tissoires <benjamin.tissoires@redhat.com>
  9. - Jiri Kosina <jkosina@suse.cz>
  10. description: |+
  11. HID over I2C provides support for various Human Interface Devices over the
  12. I2C bus. These devices can be for example touchpads, keyboards, touch screens
  13. or sensors.
  14. The specification has been written by Microsoft and is currently available here:
  15. https://msdn.microsoft.com/en-us/library/windows/hardware/hh852380.aspx
  16. If this binding is used, the kernel module i2c-hid will handle the communication
  17. with the device and the generic hid core layer will handle the protocol.
  18. allOf:
  19. - $ref: /schemas/input/touchscreen/touchscreen.yaml#
  20. properties:
  21. compatible:
  22. oneOf:
  23. - items:
  24. - enum:
  25. - wacom,w9013
  26. - const: hid-over-i2c
  27. - description: Just "hid-over-i2c" alone is allowed, but not recommended.
  28. const: hid-over-i2c
  29. reg:
  30. maxItems: 1
  31. interrupts:
  32. maxItems: 1
  33. hid-descr-addr:
  34. description: HID descriptor address
  35. $ref: /schemas/types.yaml#/definitions/uint32
  36. panel: true
  37. post-power-on-delay-ms:
  38. description: Time required by the device after enabling its regulators
  39. or powering it on, before it is ready for communication.
  40. touchscreen-inverted-x: true
  41. touchscreen-inverted-y: true
  42. vdd-supply:
  43. description: 3.3V supply
  44. vddl-supply:
  45. description: 1.8V supply
  46. wakeup-source: true
  47. required:
  48. - compatible
  49. - reg
  50. - interrupts
  51. additionalProperties: false
  52. examples:
  53. - |
  54. i2c {
  55. #address-cells = <1>;
  56. #size-cells = <0>;
  57. hid@2c {
  58. compatible = "hid-over-i2c";
  59. reg = <0x2c>;
  60. hid-descr-addr = <0x0020>;
  61. interrupts = <3 2>;
  62. };
  63. };
  64. ...