e2f16045424ef880d62ed8f8942b5e4696d1c598
[openwrt/openwrt.git] / package / system / procd / files / hotplug.json
1 [
2 [ "case", "ACTION", {
3 "add": [
4 [ "if",
5 [ "and",
6 [ "has", "MAJOR" ],
7 [ "has", "MINOR" ],
8 ],
9 [
10 [ "if",
11 [ "or",
12 [ "eq", "DEVNAME",
13 [ "null", "full", "ptmx", "zero" ],
14 ],
15 [ "regex", "DEVNAME",
16 [ "^gpio", "^hvc" ],
17 ],
18 ],
19 [
20 [ "makedev", "/dev/%DEVNAME%", "0666" ],
21 [ "return" ],
22 ]
23 ],
24 [ "if",
25 [ "or",
26 [ "eq", "DEVNAME", "mapper/control" ],
27 [ "regex", "DEVPATH", "^ppp" ],
28 ],
29 [
30 [ "makedev", "/dev/%DEVNAME%", "0600" ],
31 [ "return" ],
32 ],
33 ],
34 [ "if",
35 [ "has", "DEVNAME" ],
36 [ "makedev", "/dev/%DEVNAME%", "0644" ],
37 ],
38 ],
39 ],
40 [ "if",
41 [ "has", "FIRMWARE" ],
42 [
43 [ "exec", "/sbin/hotplug-call", "%SUBSYSTEM%" ],
44 [ "load-firmware", "/lib/firmware" ],
45 [ "return" ]
46 ]
47 ],
48 ],
49 "remove" : [
50 [ "if",
51 [ "and",
52 [ "has", "DEVNAME" ],
53 [ "has", "MAJOR" ],
54 [ "has", "MINOR" ],
55 ],
56 [ "rm", "/dev/%DEVNAME%" ]
57 ]
58 ]
59 } ],
60 [ "if",
61 [ "and",
62 [ "has", "BUTTON" ],
63 [ "eq", "SUBSYSTEM", "button" ],
64 ],
65 [ "button", "/etc/rc.button/%BUTTON%" ]
66 ],
67 [ "if",
68 [ "and",
69 [ "eq", "SUBSYSTEM", "usb-serial" ],
70 [ "regex", "DEVNAME",
71 [ "^ttyUSB", "^ttyACM" ]
72 ]
73 ],
74 [ "exec", "/sbin/hotplug-call", "tty" ],
75 [ "if",
76 [ "isdir", "/etc/hotplug.d/%SUBSYSTEM%" ],
77 [ "exec", "/sbin/hotplug-call", "%SUBSYSTEM%" ]
78 ]
79 ],
80 ]