blog.garaż.net

08 maj 2009

FGLRX i DPMS

W zamkniętych sterownikach ATI poprawiono ostatnio wiele błędów i da się obecnie korzystać z nich nawet na laptopach (tak, działa wreszcie uśpienie :)). Nadal nie działa jednak poprawnie wyłączenie urządzeń wyświetlających, dzięki czemu podświetlenie ekranu cały czas działa.

Da się to jednak obejść tymczasowo dzięki vbetool, niestety powtórne włączenie ekranu musi także nastąpić poprzez wywołanie odpowiedniej komendy:

vbetool dpms suspend
vbetool dpms on

Rozwiązanie to jest mało eleganckie i nie da się łatwo zintegrować chociażby z wygaszaczem ekranu czy wtyczką do zarządzania energią. Można jednak podpiąć odpowiednie akcje pod demona ACPI i zdarzenie otwarcia/zamknięcia pokrywy ekranu. Jeśli mamy zainstalowane sterowniki własnościowe to teoretycznie (najnowsze sterowniki ATI instalowałem ręcznie, być może dostępne w konkretnych dystrybucjach paczki inaczej rozmieszczają pliki lub nawet, niektóre pomijają) powinniśmy posiadać plik /etc/acpi/ati-powermode.sh. W takim przypadku wystarczy rozszerzyć odpowiednie fragmenty o wspomniane dwie linijki. Odpowiedni fragment wraz z modyfikacją wygląda tak:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
#!/bin/bash
grep -q closed /proc/acpi/button/lid/*/state
if [ $? = 0 ]; then
 lid_closed=1
 echo "Lid Closed"
 /usr/sbin/vbetool dpms suspend
else
 lid_closed=0
 echo "Lid Open"
 /usr/sbin/vbetool dpms on
fi

Jeśli nie posiadamy wspomnianego pliku, tworzymy go i zapisujemy z prawem wykonania. Następnie dodajemy plik do katalogu /etc/acpi/events odpowiedzialny za obsługę odpowiedniego zdarzenia i wykonanie powyższego skryptu z następującą zawartością:

event=button[ /]lid
action=/etc/acpi/ati-powermode.sh

Dla pewności uruchamiamy ponownie demona i testujemy. Należy także pamiętać o zainstalowaniu narzędzia vbetool i dodaniu skryptu startowego demona ACPI.

Jak widać rozwiązanie to tylko obejście problemu i nie pozostaje nic innego jak poczekać na odpowiednie poprawki w sterownikach, jednak „lepszy rydz niż nic". ;)

Komentarze

  • Michał Górny (2009-05-08 12:25:50):

    Znaczy się, ‘xset dpms force off’ nie działa?

  • SebaS86 (2009-05-08 12:28:30):

    Michał, niestety to nie działa.

    Prawdopodobnie dzieje się tak tylko z włączoną obsługą xrandr i/lub na wielu wyświetlaczach, ale nie chce mi się wyłączać tego pierwszego.

    „Googlałem” trochę i właściwie nie znalazłem nic, poza potwierdzeniami tego problemu.

  • LevelB (2009-05-20 12:03:48):

    Kolejna wersja sterownika FGLRX

    Pojawiła się kolejna wersja własnościowego sterownika dla kart graficznych Radeon. Chociaż w wydaniu nie ma informacji o poprawie błędu z podświetleniem („FGLRX i DPMS”), wygląda na to, że problem został rozwiązany.
    Jak zwyk[...]

Comments !