Portál AbcLinuxu, 16. prosince 2025 08:51

Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37

3.11.2010 02:14 | Přečteno: 944×

Thikpad R400 mi naposledy bez jakýchkoli otravných jaderých bugů fungoval s jádrem 2.6.32. Od té doby, po přechodu na Ubuntu 10.10, se objevovaly a mizely bugy jako např. ztráta scrollování trackpointem po probuzení a potíže s ovladačem iwlagn v režimu n (to teď neřeším, protože už je na to patch, tak ho snad brzo začlení).

S jádrem 2.6.36 jsem neměl problém až na to že jsem s ním často zažíval nesnesitelné záseky, a tak dneska přišlo na řadu vyzkoušet jádro 2.6.37-rc1-maverick odsud. S ním se sice, zdá se, velmi zlepšila interaktivita (nedochází k oním zásekům) a zatím jsem nenarazil ani na žádný nový problém, kromě toho, že s ním nešel zkompilovat modul tp-smapi, bez něhož si neumím představit starost o baterku.

Googlování toho moc nepřineslo, až na tento odkaz, kde kdosi informuje o tom, že upravil zdroják modulu tp-smapi, aby šel zkompilovat s jádrem .31.12-rt20. Chyby v mém make.log ukazovaly na podobný problém. Takže jsem zkusil tp-smapi upravit, a opravdu, kompilace i instalace s 2.6.37 proběhla a tp-smapi zatím, patrně, doufám, funguje jak má.

Stačilo vzít archív /usr/src/tp-smapi.tar.bz2, editovat soubor tp_smapi.c a na řádce 112 přepsat

static DECLARE_MUTEX(smapi_mutex);

na

static DEFINE_SEMAPHORE(smapi_mutex);

a v souboru thinkpad_ec.c

a podobně static DECLARE_MUTEX(thinkpad_ec_mutex); přepsat na static DEFINE_SEMAPHORE(thinkpad_ec_mutex);

na řádce 91.

Má pro mě někdo vysvětlení, co jsem vlastně udělal a proč to teďka jde a před tím ne? Já jsem totiž ouplně bez ánungu.        

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

mirec avatar 3.11.2010 08:43 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
Odpovědět | Sbalit | Link | Blokovat | Admin
Scrollovanie trackpointom sa nerieši náhodou niekde v xorg.conf.d tj. jadro s tým nič spoločné nemá?

Časť /etc/X11/xorg.conf.d/99-input.conf zodpovedná za scrollovanie:
Section "InputClass"
        Identifier "TPPS/2 IBM TrackPoint"
        MatchIsPointer "on"
        MatchProduct "TrackPoint"
        Option "EmulateWheel" "on"
        Option "EmulateWheelButton" "2"
        Option "Emulate3Buttons" "on"
        Option "YAxisMapping" "4 5"
        Option "XAxisMapping" "6 7"
        Option "ZAxisMapping" "4 5"
        Option "EmulateWheelTimeOut" "200"
EndSection
LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
3.11.2010 09:02 frdrx | skóre: 29 | blog: frdrx
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
Ten problém byl, že scrollování přestalo fungovat po probuzení ze suspendu. Žádný cvičení s konfiguráky nepomohlo. Když nabootuju s jakýmkoli jádrem co bylo v Ubuntu nebo mainline ppa od 2.6.33 až 2.6.35, rozbije se to. S 2.6.36=< а <=2.6.32 to nezlobí.
Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.
3.11.2010 11:13 eks
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
Ad Trackpoint: U mě (R61i) funguje (i po suspendu) přidat konfigurační soubor 1) v 10.04 do /usr/lib/X11/xorg.conf.d/ 2) v 10.10 do /usr/share/X11/xorg.conf.d/ s názvem např. 20-trackpoint.conf s obsahem: Section "InputClass" Identifier "Trackpoint Wheel Emulation" MatchIsPointer "true" MatchProduct "TrackPoint|DualPoint Stick" MatchDevicePath "/dev/input/event*" Option "Emulate3Buttons" "true" Option "EmulateWheel" "true" Option "EmulateWheelButton" "2" Option "XAxisMapping" "6 7" Option "YAxisMapping" "4 5" EndSection
3.11.2010 11:14 eks
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
pardon
3.11.2010 12:15 frdrx | skóre: 29 | blog: frdrx
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
Nic se neděje. Tohle a různé variace jsem zkoušel, ale pomáhá jenom upgrade nebo downgrade jádra. Asi je můj stroj v něčem jiný. Každopádně, tohle už je vyřešená věc.
Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.
mirec avatar 4.11.2010 12:45 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
Aj tak mi to nejde do hlavy. Jedine ak by sa rozhodli v novej verzii jadra premenovať zariadenie trackpointu (potom by mohol prestať fungovať konfigurák), alebo prostredné myšítko neposiela eventy. Inak by to mala byť záležitosť 100% v réžii Xorg-u.
LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
4.11.2010 12:54 frdrx | skóre: 29 | blog: frdrx
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
Ono to s těmi jádry funguje, dokud se neuspí počítač. Dokonce nepomáhálo ani odebrat a znovu nahrát modul myši. Hádám, že byla nějaká zrada v tom jak jádro interaguje s udevem nebo kdoví jaká čertovina. Jsem hodně rád, že to je v nových jádrech pryč.
Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.
4.11.2010 22:26 Tojaj
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
Kdysi jsem řešil stejný problém u svého ThinkPadu R61i. Pomohlo mi použít starší verzi xf86-input-evdev:
git clone git://git.freedesktop.org/git/xorg/driver/xf86-input-evdev
cd xf86-input-evdev
git reset --hard 5f2c8a2dcdf98b39997ee5e7c9a9ace3b640bfa3
./autogen.sh --prefix=/usr
make
sudo make install
Protože bych si ten postup při dalších reinstalacích nepamatoval, udělal jsem si zápisek na: http://tojaj.com/jak-na-to/62-lenovo-thinkpad-prostredni-tlacitko-na-kubuntu
3.11.2010 14:02 kapo | skóre: 16 | blog: runtime
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
Odpovědět | Sbalit | Link | Blokovat | Admin
Co se týče úprav modulu tp_smapi, tak tipuju, že v jádře mění zamykací primitiva kvůli škálovatelnosti/BKL/vím já?. Takže stačilo změnit jejich typ a už to jede.
Why make things difficult, when it is possible to make them cryptic... - Aksel Peter Jorgensen
default avatar 4.11.2010 15:30 default | skóre: 22 | Madrid
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
Odpovědět | Sbalit | Link | Blokovat | Admin
Která že to byla kotva? :-D
4.11.2010 16:04 frdrx | skóre: 29 | blog: frdrx
Rozbalit Rozbalit vše Re: Jak donutit tp_smapi ke spolupráci s linuxem 2.6.37
"Kotva č. 3: Programátoři tvoří Linux pro sebe", protože nutí nebohé uživatele, aby sami edivotali zdrojové kódy jaderných modulů, prevíti!
Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.