Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2014-03-01 08:05:00

  pioki - Użytkownik

pioki
Użytkownik
Zarejestrowany: 2010-04-10

kernel i acpi - problem z konfiguracją

Witam,

Ostatnio bawię się trochę z LFS 7.4 i w związku z tym stanąłem przed zadaniem samodzielnego skompilowania jądra Linuksa. Mam problem z właściwą konfiguracją acpi - wykrywanie wciśnięcia przycisków. Mój sprzęt to Toshiba 650C-15J.

Poniżej zamieszczam wyniki polecenia acpi_listen:

Jak to wygląda w Debianie.

Wersja stabilna:

Kod:

button/sleep SBTN 00000080 00000000 K
video/switchmode VMOD 00000080 00000000
video/brightnessdown BRTDN 00000087 00000000
video/brightnessup BRTUP 00000086 00000000
button/volumedown VOLDN 00000080 00000000 K
button/volumeup VOLUP 00000080 00000000 K

Regulacja podświetlania w powłoce działa.

Kernel z backportów:

Kod:

button/screenlock SCRNLCK 00000080 00000000 K
button/battery BAT 00000080 00000000 K
button/sleep SBTN 00000080 00000000 K
button/suspend SUSP 00000080 00000000 K
video/switchmode VMOD 00000080 00000000 K
video/brightnessdown BRTDN 00000087 00000000 K
video/brightnessup BRTUP 00000086 00000000 K
button/wlan WLAN 00000080 00000000 K
button/volumedown VOLDN 00000080 00000000 K
button/volumeup VOLUP 00000080 00000000 K

Regulacja podświetlania w powłoce nie działa.

Teraz moje próby.

Kernel 3.10.31 plik config

Kod:

video 0VGA 00000080 00000000
video DD03 00000087 00000000
video DD03 00000086 00000000

Regulacja podświetlenia działa

Kernel 3.10.32 zmiany w stosunku do poprzedniego pliku config

I acpi_listen nie wykrywa wciśnięcia przycisków (puste wyjście), jak się można spodziewać regulacja podświetlenia nie działa.

Moje pytanie, na co w tym wypadku zwrócić uwagę przy konfiguracji kernela? Bo ja prawdę mówiąc to już się pogubiłem co od czego zależy.

Offline

 

#2  2014-03-01 11:14:08

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: kernel i acpi - problem z konfiguracją

Rzuć okiem na ten wątek (cały):
http://forum.dug.net.pl/viewtopic.php?id=20515

Chyba powinien pomóc.


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#3  2014-03-05 07:12:04

  pioki - Użytkownik

pioki
Użytkownik
Zarejestrowany: 2010-04-10

Re: kernel i acpi - problem z konfiguracją

Jacekalex napisał(-a):

Rzuć okiem na ten wątek (cały):
http://forum.dug.net.pl/viewtopic.php?id=20515

Chyba powinien pomóc.

Pobieżnie przejrzałem. Nie do końca chyba dotyczy mego problemu...

W każdym bądź razie, ściągnąłem źródła kernela 3.12.13, bazując na jądrze z backportów (i jego configu) dokonałem drobnych zmian - wyrzuciłem niezaładowane moduły, kilka zostało wkompilowanych na stałe. Obecnie acpi_listen pokazuje coś podobnego do kernela z backportów na Wheezy.

Podświetlenie w konsoli po załadowaniu systemu nie działa. Działa natomiast po załadowaniu sterownika karty graficznej, a przed tworzeniem listy urządzeń w /dev (LFS 7.4 ma trochę inny porządek startu niż Debian), potem przestaje.

Z testów na jądrze z backportów w Debianie, regulacja podświetlenia działa po zalogowaniu w XFCE (w Openboksie, Trinity i powłoce już nie). Natomiast na jądrze z wersji stabilnej (3.2) działa wszędzie.

Ja już nie mam pomysłów, jakieś sugestie? Ewentualnie gdzie można doczytać o tym acpi?

W sumie bardziej mi zależy żeby się czegoś dowiedzieć, niż żeby mi to zaczęło działać ;)

Dopisek. Podświetlenie w sensie "regulacja jasności podświetlenia".

Ostatnio edytowany przez pioki (2014-03-05 07:22:09)

Offline

 

#4  2014-03-05 09:16:45

  yossarian - Szczawiożerca

yossarian
Szczawiożerca
Skąd: Shangri-La
Zarejestrowany: 2011-04-25

Re: kernel i acpi - problem z konfiguracją

Sprawdź który sterownik za to u Ciebie odpowiada:

Kod:

[    2.461668] thinkpad_acpi: detected a 8-level brightness capable ThinkPad
[    2.827720] thinkpad_acpi: This ThinkPad has standard ACPI backlight brightness control, supported by the ACPI video driver
[    2.827721] thinkpad_acpi: Disabling thinkpad-acpi brightness events by default...
[    3.602399] thinkpad_acpi: Standard ACPI backlight interface available, not loading native one

Z testów na jądrze z backportów w Debianie, regulacja podświetlenia działa po zalogowaniu w XFCE (w Openboksie, Trinity i powłoce już nie). Natomiast na jądrze z wersji stabilnej (3.2) działa wszędzie.

Domyślam się, że w pierwszym przypadku działa sterownik producenta, w drugim standardowy sterownik acpi.

Pobaw się wpisem w Grubie acpi_backlight=

Offline

 

#5  2014-03-05 21:16:14

  pioki - Użytkownik

pioki
Użytkownik
Zarejestrowany: 2010-04-10

Re: kernel i acpi - problem z konfiguracją

Wygląda na to, że miałeś rację.  Sprawcą zamieszania wydaje się być moduł "toshiba_acpi". Po dodaniu go do czarnej listy (samo wyładowanie nie pomaga) na nowszym kernelu acpi_listen pokazuje podobne zdarzenia do wersji stabilnej (gdzie mimo, że jest załadowany wydaje się nie działać) i regulacja podświetlenia działa. Co prawda po tej czynności tracę dostęp do zdarzeń SCRNLCK, BAT, SUSP, VMOD, WLAN.... Nie wiem na ile poprawne jest to rozwiązanie.

Jeśli chodzi o parametr acpi_backlight to jak wyczytałem może przyjmować dwie wartości: vendor bądź video. W moim przypadku nie przyniosło to pozytywnych rezultatów: pierwszy parametr powodował "całkowite" wyłączenie możliwości regulacji podświetlenia, drugi nic nie zmieniał.

Pozdrawiam.

Offline

 

#6  2014-03-05 21:31:22

  yossarian - Szczawiożerca

yossarian
Szczawiożerca
Skąd: Shangri-La
Zarejestrowany: 2011-04-25

Re: kernel i acpi - problem z konfiguracją

Pokaż co  tam tym steruje:

Kod:

ls /sys/class/backlight/

Wrzuć gdzieś cały dmesg
Jaka masz kartę graficzną?
Sprawdź jeszcze taki parametr:

Kod:

video.use_native_backlight=1

Ostatnio edytowany przez yossarian (2014-03-05 21:33:14)

Offline

 

#7  2014-03-06 09:07:23

  pioki - Użytkownik

pioki
Użytkownik
Zarejestrowany: 2010-04-10

Re: kernel i acpi - problem z konfiguracją

Karta graficzna to intel 4500m, sterownik i915.

Wynik polecenia `ls /sys/class/backlight` to dla jądra 3.2 (z Debiana stabilnego): acpi_video0  intel_backlight toshiba, dla jądra z backportów tylko dwa pierwsze.

Dmesg: 3.2 Wheezy, 3.12 backporty, 3.12.13 LFS 7.4 i915 wbudowany na stałe.

Ten parametr nic nie robi, albo ja coś robię źle.

Offline

 

#8  2014-03-06 20:37:29

  yossarian - Szczawiożerca

yossarian
Szczawiożerca
Skąd: Shangri-La
Zarejestrowany: 2011-04-25

Re: kernel i acpi - problem z konfiguracją

Sprawdź jeszcze czy da się to kontrolować za pomocą pliku brightness w katalogach acpi_video0 lub intel_backlight (to przy używaniu standardowego sterownika acpi).
Ja nie zadziała to trzeba będzie pokombinować z tym modułem toshiba_acpi i ustawieniu acpi_backlight=vendor. Widać, że brakuje tam katalogu /sys/class/backlight/toshiba.
Wywal z Gruba wpisy acpi_osi=xxx To rzadko działa, a może powodować problemy.

[Firmware Bug]: ACPI: BIOS _OSI(Linux) query ignored

Offline

 

#9  2014-03-07 08:57:24

  pioki - Użytkownik

pioki
Użytkownik
Zarejestrowany: 2010-04-10

Re: kernel i acpi - problem z konfiguracją

Użytkownik root przy pomocy komendy `echo 4 > /sys/class/backlight/acpi_video0/brightness` może kontrolować wartość podświetlenia (z zakresu 0-7).

Jeśli chodzi o acpi_osi to nie mam takich wpisów w grubie, chyba że dodają się jakoś automagicznie...

Zastanawia mnie to działanie zmiany podświetlenia po zalogowaniu w xfce: przed załadowaniem modułu toshiba_acpi naciśnięcie przycisku zmienia poziom o 2 jednostki, po załadowaniu o 1). I czemu po jego załadowaniu w acpi_listen pojawia się na końcu znak "K" (jak w logach w pierwszym poście).

Offline

 

#10  2014-03-07 16:27:38

  yossarian - Szczawiożerca

yossarian
Szczawiożerca
Skąd: Shangri-La
Zarejestrowany: 2011-04-25

Re: kernel i acpi - problem z konfiguracją

pioki napisał(-a):

Użytkownik root przy pomocy komendy `echo 4 > /sys/class/backlight/acpi_video0/brightness` może kontrolować wartość podświetlenia (z zakresu 0-7).

Sprawdź czy masz jakieś specjalne ustawienia dla Toshiby w  /etc/acpi.
W sumie możesz sobie sam je dorobić wg tego przykładu:
https://github.com/codingtony/acer-brightness-linux-acpi

Zastanawia mnie to działanie zmiany podświetlenia po zalogowaniu w xfce: przed załadowaniem modułu toshiba_acpi naciśnięcie przycisku zmienia poziom o 2 jednostki, po załadowaniu o 1). I czemu po jego załadowaniu w acpi_listen pojawia się na końcu znak "K" (jak w logach w pierwszym poście).

Skoro zarządzają tym dwa różne narzędzia, to zachowanie też jest różne.

Tu piszą, że parametr video.use_native_backlight=1 działa od 3.13.
W ogóle pokombinuj z różnymi wersjami kernela bo wygląda na jakiś problem z tym modułem toshiba_acpi. Może na innych/nowszych wersjach jądra działa to lepiej.
Tam na wiki masz trochę więcej informacji o tym.

Ostatnio edytowany przez yossarian (2014-03-07 16:40:37)

Offline

 

#11  2014-03-07 21:56:16

  pioki - Użytkownik

pioki
Użytkownik
Zarejestrowany: 2010-04-10

Re: kernel i acpi - problem z konfiguracją

Na razie przerobiłem trochę podane przez Ciebie skryty i tak:

c650_jasniej

Kod:

event=video/brightnessup BRTUP 00000086 00000000 K
action=/etc/acpi/c650-jasniej.sh

c650_ciemniej

Kod:

event=video/brightnessdown BRTDN 00000087 00000000 K
action=/etc/acpi/c650-ciemniej.sh

i analogiczne skrypty:

c650-jasniej.sh

Kod:

#!/bin/bash
max=$(cat /sys/class/backlight/acpi_video0/max_brightness)
poziom=$(cat /sys/class/backlight/acpi_video0/actual_brightness)
if [ $poziom -lt $max ];
then
poziom=$((poziom+1))
else
poziom=$max
fi
echo $poziom > /sys/class/backlight/acpi_video0/brightness

c650-ciemniej.sh

Kod:

#!/bin/bash
poziom=$(cat /sys/class/backlight/acpi_video0/actual_brightness)
if [ $poziom -gt 0 ];
then
poziom=$((poziom-1))
else
poziom=0
fi
echo $poziom > /sys/class/backlight/acpi_video0/brightness

I wydaje się działać - no tym razem z wyjątkiem xfce gdzie zachowuje się odrobinę nieprzewidywalnie.

Jeśli chodzi o konfigurację Debiana, to obawiam się, że jest ona dla mnie zbyt mądra...

To może nie do końca wina modułu toshiba_acpi, co serii C650 - od początku były z nią problemy. Przykładowo "normalne" modele toshiby obsługują moduły acpi: toshiba i toshiba_acpi - u mnie załadowanie modułu toshiba powoduje błąd (niezgodność biosu czy coś takiego). W sumie dziwię się, że ten drugi jakoś działa ;)

Na razie testowałem 3.2, 3.10 i 3.12.

No nic, będę się musiał w to jeszcze trochę wgryźć.

Dzięki za pomoc.

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)