summarylogtreecommitdiffstats
path: root/displaylink-sleep.sh
diff options
context:
space:
mode:
Diffstat (limited to 'displaylink-sleep.sh')
-rw-r--r--displaylink-sleep.sh32
1 files changed, 32 insertions, 0 deletions
diff --git a/displaylink-sleep.sh b/displaylink-sleep.sh
new file mode 100644
index 000000000000..b47d5fd2d45d
--- /dev/null
+++ b/displaylink-sleep.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+# Copyright (c) 2015 - 2016 DisplayLink (UK) Ltd.
+
+suspend_dlm()
+{
+ #flush any bytes in pipe
+ while read -n 1 -t 1 SUSPEND_RESULT < /tmp/PmMessagesPort_out; do : ; done;
+
+ #suspend DisplayLinkManager
+ echo "S" > /tmp/PmMessagesPort_in
+
+ if [ -f /tmp/PmMessagesPort_out ]; then
+ #wait until suspend of DisplayLinkManager finish
+ read -n 1 -t 10 SUSPEND_RESULT < /tmp/PmMessagesPort_out
+ fi
+}
+
+resume_dlm()
+{
+ #resume DisplayLinkManager
+ echo "R" > /tmp/PmMessagesPort_in
+}
+
+case "\$1/\$2" in
+ pre/*)
+ suspend_dlm
+ ;;
+ post/*)
+ resume_dlm
+ ;;
+esac
+