Advertisement
Guest User

Untitled

a guest
Dec 5th, 2011
41
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.99 KB | None | 0 0
  1. --- ati-powermodes.sh.old 2011-12-05 15:17:11.000000000 +0400
  2. +++ /etc/acpi/ati-powermode.sh 2011-11-19 15:00:16.000000000 +0400
  3. @@ -1,65 +1,75 @@
  4. -#!/bin/sh
  5. +#!/bin/bash
  6.  
  7. #
  8. # Control script for ACPI lid state and AC adapter state
  9. #
  10.  
  11. -FGLRX_ACPI_SWITCH_POWERSTATES=false
  12. -
  13. -[ -f /etc/default/fglrx-driver ] && . /etc/default/fglrx-driver
  14. -
  15. -[ "${FGLRX_ACPI_SWITCH_POWERSTATES}" != true ] && exit 0
  16. -
  17. getXuser() {
  18. - user=`finger| grep -m1 ":$displaynum " | awk '{print $1}'`
  19. - if [ x"$user" = x"" ]; then
  20. - user=`finger| grep -m1 ":$displaynum" | awk '{print $1}'`
  21. - fi
  22. - if [ x"$user" != x"" ]; then
  23. - userhome=`getent passwd $user | cut -d: -f6`
  24. - export XAUTHORITY=$userhome/.Xauthority
  25. - else
  26. - export XAUTHORITY=""
  27. - fi
  28. + user=`finger| grep -m1 ":$displaynum " | awk '{print $1}'`
  29. + if [ x"$user" = x"" ]; then
  30. + user=`finger| grep -m1 ":$displaynum" | awk '{print $1}'`
  31. + fi
  32. + if [ x"$user" != x"" ]; then
  33. + userhome=`getent passwd $user | cut -d: -f6`
  34. + export XAUTHORITY=$userhome/.Xauthority
  35. + else
  36. + export XAUTHORITY=""
  37. + fi
  38. }
  39.  
  40. -if grep -q closed /proc/acpi/button/lid/*/state; then
  41. - lid_closed=1
  42. +
  43. +grep -q closed /proc/acpi/button/lid/*/state
  44. +if [ $? = 0 ]; then
  45. + lid_closed=1
  46. + echo "Lid Closed"
  47. else
  48. - lid_closed=0
  49. + lid_closed=0
  50. + echo "Lid Open"
  51. fi
  52.  
  53. -if grep -q off-line /proc/acpi/ac_adapter/*/state; then
  54. - on_dc=1
  55. +grep -q off-line /proc/acpi/ac_adapter/*/state
  56. +
  57. +if [ $? = 0 ]; then
  58. + echo "On DC"
  59. + on_dc=1
  60. else
  61. - on_dc=0
  62. + echo "On AC"
  63. + on_dc=0
  64. fi
  65.  
  66. -if [ ${lid_closed} -eq 1 ] || [ ${on_dc} -eq 1 ]; then
  67. - echo "fglrx: setting low power"
  68. - for x in /tmp/.X11-unix/*; do
  69. - displaynum=`echo $x | sed s#/tmp/.X11-unix/X##`
  70. - getXuser;
  71. - if [ x"$XAUTHORITY" != x"" ]; then
  72. - export DISPLAY=":$displaynum"
  73. - powermode=`/usr/bin/aticonfig --lsp | grep -m1 low | cut -b 3-3`
  74. - if [ x"$powermode" != x"" ]; then
  75. - su $user -c "/usr/bin/aticonfig --set-powerstate=$powermode --effective=now" >/dev/null 2>&1
  76. - fi
  77. - fi
  78. - done
  79. +#Find the right XServer to be configured.
  80. +for x in /tmp/.X11-unix/*; do
  81. + displaynum=`echo $x | sed s#/tmp/.X11-unix/X##`
  82. + getXuser;
  83. + if [ x"$XAUTHORITY" != x"" ]; then
  84. + export DISPLAY=":$displaynum"
  85. + fi
  86. +done
  87. +
  88. +#If PPLIB is enabled
  89. +su $user -c '/usr/bin/aticonfig --pplib-cmd="get version"' | grep PPLIB
  90. +if [ $? = 0 ]; then
  91. + echo "Has PPLIB"
  92. + has_pplib=1
  93. else
  94. - echo "fglrx: setting default powermode"
  95. - for x in /tmp/.X11-unix/*; do
  96. - displaynum=`echo $x | sed s#/tmp/.X11-unix/X##`
  97. - getXuser;
  98. - if [ x"$XAUTHORITY" != x"" ]; then
  99. - export DISPLAY=":$displaynum"
  100. - powermode=`/usr/bin/aticonfig --lsp | grep -m1 default | cut -b 3-3`
  101. - if [ x"$powermode" != x"" ]; then
  102. - su $user -c "/usr/bin/aticonfig --set-powerstate=$powermode --effective=now" >/dev/null 2>&1
  103. - fi
  104. - fi
  105. - done
  106. + echo "No PPLIB"
  107. + has_pplib=0
  108. fi
  109.  
  110. +
  111. +
  112. +if [ ${lid_closed} -eq 1 -o ${on_dc} -eq 1 ]; then
  113. + echo "Low power"
  114. + if [ ${has_pplib} -eq 1 ]; then
  115. + su $user -c '/usr/bin/aticonfig --pplib-cmd="notify psrc dc"'
  116. + else
  117. + su $user -c "/usr/bin/aticonfig --set-powerstate=1 --effective=now"
  118. + fi
  119. +else
  120. + echo "high power"
  121. + if [ ${has_pplib} -eq 1 ]; then
  122. + su $user -c '/usr/bin/aticonfig --pplib-cmd="notify psrc ac"'
  123. + else
  124. + su $user -c "/usr/bin/aticonfig --set-powerstate=3 --effective=now"
  125. + fi
  126. +fi
  127.  
  128.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement