xref: /freebsd/sys/contrib/device-tree/Bindings/mfd/stmpe.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot* ST Microelectronics STMPE Multi-Functional Device
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotSTMPE is an MFD device which may expose the following inbuilt devices: gpio,
4*c66ec88fSEmmanuel Vadotkeypad, touchscreen, adc, pwm, rotator.
5*c66ec88fSEmmanuel Vadot
6*c66ec88fSEmmanuel VadotRequired properties:
7*c66ec88fSEmmanuel Vadot - compatible			: "st,stmpe[610|801|811|1600|1601|2401|2403]"
8*c66ec88fSEmmanuel Vadot - reg				: I2C/SPI address of the device
9*c66ec88fSEmmanuel Vadot
10*c66ec88fSEmmanuel VadotOptional properties:
11*c66ec88fSEmmanuel Vadot - interrupts			: The interrupt outputs from the controller
12*c66ec88fSEmmanuel Vadot - interrupt-controller		: Marks the device node as an interrupt controller
13*c66ec88fSEmmanuel Vadot - wakeup-source		: Marks the input device as wakable
14*c66ec88fSEmmanuel Vadot - st,autosleep-timeout		: Valid entries (ms); 4, 16, 32, 64, 128, 256, 512 and 1024
15*c66ec88fSEmmanuel Vadot - irq-gpio			: If present, which GPIO to use for event IRQ
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel VadotOptional properties for devices with touch and ADC (STMPE811|STMPE610):
18*c66ec88fSEmmanuel Vadot - st,sample-time		: ADC conversion time in number of clock.
19*c66ec88fSEmmanuel Vadot					0 -> 36 clocks		4 -> 80 clocks (recommended)
20*c66ec88fSEmmanuel Vadot					1 -> 44 clocks		5 -> 96 clocks
21*c66ec88fSEmmanuel Vadot					2 -> 56 clocks		6 -> 124 clocks
22*c66ec88fSEmmanuel Vadot					3 -> 64 clocks
23*c66ec88fSEmmanuel Vadot - st,mod-12b			: ADC Bit mode
24*c66ec88fSEmmanuel Vadot					0 -> 10bit ADC		1 -> 12bit ADC
25*c66ec88fSEmmanuel Vadot - st,ref-sel			: ADC reference source
26*c66ec88fSEmmanuel Vadot					0 -> internal		1 -> external
27*c66ec88fSEmmanuel Vadot - st,adc-freq			: ADC Clock speed
28*c66ec88fSEmmanuel Vadot					0 -> 1.625 MHz		2 || 3 -> 6.5 MHz
29*c66ec88fSEmmanuel Vadot					1 -> 3.25 MHz
30*c66ec88fSEmmanuel Vadot
31*c66ec88fSEmmanuel VadotExample:
32*c66ec88fSEmmanuel Vadot
33*c66ec88fSEmmanuel Vadot	stmpe1601: stmpe1601@40 {
34*c66ec88fSEmmanuel Vadot		compatible = "st,stmpe1601";
35*c66ec88fSEmmanuel Vadot		reg = <0x40>;
36*c66ec88fSEmmanuel Vadot		interrupts = <26 0x4>;
37*c66ec88fSEmmanuel Vadot		interrupt-parent = <&gpio6>;
38*c66ec88fSEmmanuel Vadot		interrupt-controller;
39*c66ec88fSEmmanuel Vadot
40*c66ec88fSEmmanuel Vadot		wakeup-source;
41*c66ec88fSEmmanuel Vadot		st,autosleep-timeout = <1024>;
42*c66ec88fSEmmanuel Vadot	};
43