diff options
Diffstat (limited to 'examples')
-rwxr-xr-x | examples/mdev.conf.change_blockdev.sh | 24 | ||||
-rw-r--r-- | examples/mdev_fat.conf | 30 |
2 files changed, 54 insertions, 0 deletions
diff --git a/examples/mdev.conf.change_blockdev.sh b/examples/mdev.conf.change_blockdev.sh new file mode 100755 index 000000000..a479a9630 --- /dev/null +++ b/examples/mdev.conf.change_blockdev.sh | |||
@@ -0,0 +1,24 @@ | |||
1 | #!/bin/sh | ||
2 | |||
3 | # Seconds to try to reread partition table | ||
4 | cnt=60 | ||
5 | |||
6 | exec </dev/null | ||
7 | exec >"/tmp/${0##*/}.$$.out" | ||
8 | exec 2>&1 | ||
9 | |||
10 | ( | ||
11 | echo "Running: $0" | ||
12 | echo "Env:" | ||
13 | env | sort | ||
14 | |||
15 | while sleep 1; test $cnt != 0; do | ||
16 | echo "Trying to rereat partition table on $DEVNAME ($cnt)" | ||
17 | : $((cnt--)) | ||
18 | test -e "$DEVNAME" || { echo "$DEVNAME doesn't exist, aborting"; exit 1; } | ||
19 | #echo "$DEVNAME exists" | ||
20 | blockdev --rereadpt "$DEVNAME" && break | ||
21 | echo "blockdev --rereadpt failed, exit code: $?" | ||
22 | done | ||
23 | echo "blockdev --rereadpt succeeded" | ||
24 | ) & | ||
diff --git a/examples/mdev_fat.conf b/examples/mdev_fat.conf index bceddb2d7..f2a15f35d 100644 --- a/examples/mdev_fat.conf +++ b/examples/mdev_fat.conf | |||
@@ -112,3 +112,33 @@ usbdev[0-9].[0-9]_.* root:root 660 | |||
112 | # zaptel devices | 112 | # zaptel devices |
113 | zap(.*) root:dialout 660 =zap/%1 | 113 | zap(.*) root:dialout 660 =zap/%1 |
114 | dahdi!(.*) root:dialout 660 =dahdi/%1 | 114 | dahdi!(.*) root:dialout 660 =dahdi/%1 |
115 | |||
116 | # HTC Android | ||
117 | # Attaching it via USB cable causes a flurry of activity: | ||
118 | # | ||
119 | # mdev[1271]: 48.639459 ACTION:add SUBSYSTEM:usb DEVNAME:bus/usb/001/009 DEVPATH:/devices/pci0000:00/0000:00:02.1/usb1/1-5 | ||
120 | # mdev[1271]: mknod bus/usb/001/009 (189,8) 20660 0:0 | ||
121 | # mdev[1272]: 48.642354 ACTION:add SUBSYSTEM:usb DEVNAME:(null) DEVPATH:/devices/pci0000:00/0000:00:02.1/usb1/1-5/1-5:1.0 | ||
122 | # mdev[1272]: running: modprobe "$MODALIAS" | ||
123 | # mdev[1273]: 48.650078 ACTION:add SUBSYSTEM:scsi DEVNAME:(null) DEVPATH:/devices/pci0000:00/0000:00:02.1/usb1/1-5/1-5:1.0/host11 | ||
124 | # mdev[1274]: 48.651297 ACTION:add SUBSYSTEM:scsi_host DEVNAME:(null) DEVPATH:/devices/pci0000:00/0000:00:02.1/usb1/1-5/1-5:1.0/host11/scsi_host/host11 | ||
125 | # mdev[1275]: 49.649422 ACTION:add SUBSYSTEM:scsi DEVNAME:(null) DEVPATH:/devices/pci0000:00/0000:00:02.1/usb1/1-5/1-5:1.0/host11/target11:0:0 | ||
126 | # mdev[1276]: 49.650703 ACTION:add SUBSYSTEM:scsi DEVNAME:(null) DEVPATH:/devices/pci0000:00/0000:00:02.1/usb1/1-5/1-5:1.0/host11/target11:0:0/11:0:0:0 | ||
127 | # mdev[1276]: running: modprobe "$MODALIAS" | ||
128 | # modprobe: module scsi:t-0x00 not found in modules.dep | ||
129 | # mdev[1277]: 49.658002 ACTION:add SUBSYSTEM:scsi_disk DEVNAME:(null) DEVPATH:/devices/pci0000:00/0000:00:02.1/usb1/1-5/1-5:1.0/host11/target11:0:0/11:0:0:0/scsi_disk/11:0:0:0 | ||
130 | # mdev[1278]: 49.659244 ACTION:add SUBSYSTEM:scsi_device DEVNAME:(null) DEVPATH:/devices/pci0000:00/0000:00:02.1/usb1/1-5/1-5:1.0/host11/target11:0:0/11:0:0:0/scsi_device/11:0:0: | ||
131 | # mdev[1279]: 49.660535 ACTION:add SUBSYSTEM:bsg DEVNAME:bsg/11:0:0:0 DEVPATH:/devices/pci0000:00/0000:00:02.1/usb1/1-5/1-5:1.0/host11/target11:0:0/11:0:0:0/bsg/11:0:0:0 | ||
132 | # mdev[1279]: mknod bsg/11:0:0:0 (253,1) 20660 0:0 | ||
133 | # mdev[1280]: 49.663516 ACTION:add SUBSYSTEM:bdi DEVNAME:(null) DEVPATH:/devices/virtual/bdi/8:16 | ||
134 | # mdev[1281]: 49.664748 ACTION:add SUBSYSTEM:block DEVNAME:sdb DEVPATH:/block/sdb | ||
135 | # mdev[1281]: mknod sdb (8,16) 60660 0:0 | ||
136 | # mdev[1282]: 49.677597 ACTION:change SUBSYSTEM:block DEVNAME:sdb DEVPATH:/block/sdb | ||
137 | # mdev[1283]: 50.692936 ACTION:change SUBSYSTEM:block DEVNAME:sdb DEVPATH:/block/sdb | ||
138 | # | ||
139 | # We are hooking to the last events. To avoid having two scripts running, | ||
140 | # we check for DISK_MEDIA_CHANGE=1 (prev to last event has it, | ||
141 | # and it's the _only_ difference in env for these two events as of kernel 3.7.7) | ||
142 | # Unfortunately, there is no event for "user pressed [Turn USB storage] btn"! | ||
143 | # Script merely backgrounds and tries to rescan partition table for 1 minute: | ||
144 | ACTION=change;SUBSYSTEM=block;DISK_MEDIA_CHANGE=1;.* 0:0 660 */etc/mdev.conf.change_blockdev.sh | ||