ads7846.txt 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. Device tree bindings for TI's ADS7843, ADS7845, ADS7846, ADS7873, TSC2046
  2. SPI driven touch screen controllers.
  3. The node for this driver must be a child node of a SPI controller, hence
  4. all mandatory properties described in
  5. Documentation/devicetree/bindings/spi/spi-bus.txt
  6. must be specified.
  7. Additional required properties:
  8. compatible Must be one of the following, depending on the
  9. model:
  10. "ti,tsc2046"
  11. "ti,ads7843"
  12. "ti,ads7845"
  13. "ti,ads7846"
  14. "ti,ads7873"
  15. interrupts An interrupt node describing the IRQ line the chip's
  16. !PENIRQ pin is connected to.
  17. vcc-supply A regulator node for the supply voltage.
  18. Optional properties:
  19. ti,vref-delay-usecs vref supply delay in usecs, 0 for
  20. external vref (u16).
  21. ti,vref-mv The VREF voltage, in millivolts (u16).
  22. Set to 0 to use internal references
  23. (ADS7846).
  24. ti,keep-vref-on set to keep vref on for differential
  25. measurements as well
  26. ti,swap-xy swap x and y axis
  27. ti,settle-delay-usec Settling time of the analog signals;
  28. a function of Vcc and the capacitance
  29. on the X/Y drivers. If set to non-zero,
  30. two samples are taken with settle_delay
  31. us apart, and the second one is used.
  32. ~150 uSec with 0.01uF caps (u16).
  33. ti,penirq-recheck-delay-usecs If set to non-zero, after samples are
  34. taken this delay is applied and penirq
  35. is rechecked, to help avoid false
  36. events. This value is affected by the
  37. material used to build the touch layer
  38. (u16).
  39. ti,x-plate-ohms Resistance of the X-plate,
  40. in Ohms (u16).
  41. ti,y-plate-ohms Resistance of the Y-plate,
  42. in Ohms (u16).
  43. ti,x-min Minimum value on the X axis (u16).
  44. ti,y-min Minimum value on the Y axis (u16).
  45. ti,x-max Maximum value on the X axis (u16).
  46. ti,y-max Minimum value on the Y axis (u16).
  47. ti,pressure-min Minimum reported pressure value
  48. (threshold) - u16.
  49. ti,pressure-max Maximum reported pressure value (u16).
  50. ti,debounce-max Max number of additional readings per
  51. sample (u16).
  52. ti,debounce-tol Tolerance used for filtering (u16).
  53. ti,debounce-rep Additional consecutive good readings
  54. required after the first two (u16).
  55. ti,pendown-gpio-debounce Platform specific debounce time for the
  56. pendown-gpio (u32).
  57. pendown-gpio GPIO handle describing the pin the !PENIRQ
  58. line is connected to.
  59. wakeup-source use any event on touchscreen as wakeup event.
  60. (Legacy property support: "linux,wakeup")
  61. Example for a TSC2046 chip connected to an McSPI controller of an OMAP SoC::
  62. spi_controller {
  63. tsc2046@0 {
  64. reg = <0>; /* CS0 */
  65. compatible = "ti,tsc2046";
  66. interrupt-parent = <&gpio1>;
  67. interrupts = <8 0>; /* BOOT6 / GPIO 8 */
  68. spi-max-frequency = <1000000>;
  69. pendown-gpio = <&gpio1 8 0>;
  70. vcc-supply = <&reg_vcc3>;
  71. ti,x-min = /bits/ 16 <0>;
  72. ti,x-max = /bits/ 16 <8000>;
  73. ti,y-min = /bits/ 16 <0>;
  74. ti,y-max = /bits/ 16 <4800>;
  75. ti,x-plate-ohms = /bits/ 16 <40>;
  76. ti,pressure-max = /bits/ 16 <255>;
  77. wakeup-source;
  78. };
  79. };