xref: /freebsd/sys/contrib/device-tree/Bindings/input/input-reset.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotInput: sysrq reset sequence
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotA simple binding to represent a set of keys as described in
4*c66ec88fSEmmanuel Vadotinclude/uapi/linux/input.h. This is to communicate a sequence of keys to the
5*c66ec88fSEmmanuel Vadotsysrq driver. Upon holding the keys for a specified amount of time (if
6*c66ec88fSEmmanuel Vadotspecified) the system is sync'ed and reset.
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel VadotKey sequences are global to the system but all the keys in a set must be coming
9*c66ec88fSEmmanuel Vadotfrom the same input device.
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel VadotThe /chosen node should contain a 'linux,sysrq-reset-seq' child node to define
12*c66ec88fSEmmanuel Vadota set of keys.
13*c66ec88fSEmmanuel Vadot
14*c66ec88fSEmmanuel VadotRequired property:
15*c66ec88fSEmmanuel Vadotkeyset: array of Linux keycodes, one keycode per cell.
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel VadotOptional property:
18*c66ec88fSEmmanuel Vadottimeout-ms: duration keys must be pressed together in milliseconds before
19*c66ec88fSEmmanuel Vadotgenerating a sysrq. If omitted the system is rebooted immediately when a valid
20*c66ec88fSEmmanuel Vadotsequence has been recognized.
21*c66ec88fSEmmanuel Vadot
22*c66ec88fSEmmanuel VadotExample:
23*c66ec88fSEmmanuel Vadot
24*c66ec88fSEmmanuel Vadot chosen {
25*c66ec88fSEmmanuel Vadot                linux,sysrq-reset-seq {
26*c66ec88fSEmmanuel Vadot                        keyset = <0x03
27*c66ec88fSEmmanuel Vadot                                  0x04
28*c66ec88fSEmmanuel Vadot                                  0x0a>;
29*c66ec88fSEmmanuel Vadot                        timeout-ms = <3000>;
30*c66ec88fSEmmanuel Vadot                };
31*c66ec88fSEmmanuel Vadot         };
32*c66ec88fSEmmanuel Vadot
33*c66ec88fSEmmanuel VadotWould represent KEY_2, KEY_3 and KEY_9.
34