summarylogtreecommitdiffstats
path: root/displaylink-sleep.sh
diff options
context:
space:
mode:
authorendorfina2023-11-12 15:38:43 +0100
committerendorfina2023-11-12 15:43:12 +0100
commitdeaf6c7bff49c3d31b47d0fa55c329ae8bf31cc4 (patch)
tree01eb112f40ff7e75a8c93994493521e2dd0f98df /displaylink-sleep.sh
parent40add07ab86fdef786572757df689c69c22cf9de (diff)
downloadaur-deaf6c7bff49c3d31b47d0fa55c329ae8bf31cc4.tar.gz
Actually update udev.sh and suspend.sh to 5.8
Diffstat (limited to 'displaylink-sleep.sh')
-rw-r--r--displaylink-sleep.sh41
1 files changed, 32 insertions, 9 deletions
diff --git a/displaylink-sleep.sh b/displaylink-sleep.sh
index b47d5fd2d45d..9ffa6c47f831 100644
--- a/displaylink-sleep.sh
+++ b/displaylink-sleep.sh
@@ -1,7 +1,7 @@
-#!/bin/bash
-# Copyright (c) 2015 - 2016 DisplayLink (UK) Ltd.
+#!/usr/bin/env bash
+# Copyright (c) 2015 - 2019 DisplayLink (UK) Ltd.
-suspend_dlm()
+suspend_displaylink-driver()
{
#flush any bytes in pipe
while read -n 1 -t 1 SUSPEND_RESULT < /tmp/PmMessagesPort_out; do : ; done;
@@ -9,24 +9,47 @@ suspend_dlm()
#suspend DisplayLinkManager
echo "S" > /tmp/PmMessagesPort_in
- if [ -f /tmp/PmMessagesPort_out ]; then
+ if [[ -p /tmp/PmMessagesPort_out ]]; then
#wait until suspend of DisplayLinkManager finish
read -n 1 -t 10 SUSPEND_RESULT < /tmp/PmMessagesPort_out
fi
}
-resume_dlm()
+resume_displaylink-driver()
{
#resume DisplayLinkManager
echo "R" > /tmp/PmMessagesPort_in
}
-case "\$1/\$2" in
+main_systemd()
+{
+ case "$1/$2" in
pre/*)
- suspend_dlm
+ suspend_displaylink-driver
;;
post/*)
- resume_dlm
+ resume_displaylink-driver
;;
-esac
+ esac
+}
+main_pm()
+{
+ case "$1" in
+ suspend|hibernate)
+ suspend_displaylink-driver
+ ;;
+ resume|thaw)
+ resume_displaylink-driver
+ ;;
+ esac
+ true
+}
+
+DIR=$(cd "$(dirname "$0")" && pwd)
+
+if [[ $DIR == *systemd* ]]; then
+ main_systemd "$@"
+elif [[ $DIR == *pm* ]]; then
+ main_pm "$@"
+fi