Portál AbcLinuxu, 23. května 2024 08:26

HP nx9020 a X.org

10.9.2005 17:31 | Přečteno: 3773× | HP Compaq nx9020

S příchodem X.org do Debianu testing jsem provedl upgrade nejprve na svém notebooku. V souvislosti s tím zde naleznete i nynější konfiguraci, a změny které nastaly od Xfree86 4.3.x

Podmínky

Notebook je standardně vybaven grafickou kartou Intel 82852/855GM s 32-64MB "kradené" paměti, 15" 1024x768 LCD display, klávesnicí s pár speciálními klávesami, a touchpadem. Externě pak připojuji USB myš.

Pro patřičnou funkci grafické karty je potřeba mít podporu zakompilovánu v kernelu (osvědčilo se mi to lépe než použití modulů).

CONFIG_DRM=y                                                                                                                  
CONFIG_DRM_I830=y

Konfigurace XFree86

Nejprve popíšu konfiguraci pro Xfree 4.3.x. Uvádím celý konfigurační soubor /etc/X11/XF86Config-4. Komentáře jsou obsaženy přímo v něm. Především bych rád poukázal na zvýšení sdílené paměti, kterou si karta bere v sekci Device. Dále na nastavení DRI, klávesnice a touchpadu.

XF86Config-4

# Spravu fontu prenechavam font serveru
# Zde je pouze cesta na nej a zakladni fonty pro minimalni funkcnost 
Section "Files"
	FontPath	"unix/:7100"
	FontPath	"/usr/lib/X11/fonts/misc"
EndSection

# Natazeni modulu, predevsim GLcore, dri a synaptics
Section "Module"
	Load	"GLcore"
	Load	"bitmap"
	Load	"dbe"
	Load	"ddc"
	Load	"dri"
	Load	"extmod"
	Load	"freetype"
	Load	"glx"
	Load	"record"
	Load	"speedo"
	Load 	"synaptics"
	Load	"type1"
EndSection

# Nastaveni klavesnice naleznete v mem prechozim blogu
Section "InputDevice"
	Identifier	"HP nx9020 Keyboard"
	Driver		"keyboard"
	Option		"CoreKeyboard"
	Option "XkbLayout"   "us,cz_qwerty"
	Option "XkbModel"    "hpnx26"
	Option "XkbRules"    "xfree86"
	Option "XkbOptions"  "grp:shift_toggle,altwin:super_win,altwin:menu"
EndSection

# Synaptics driver pro touchpady, a parametry, ktere se mi osvedcily u notebooku 
# Lze pouzit i Driver "mouse" a Device "/dev/psaux" pro alespon zakladni funkcnost
Section "InputDevice"
  Identifier  	"HP nx9020 Synaptics Touchpad"
  Driver  	"synaptics"
  Option	"CorePointer"
  Option 	"Device"  	"/dev/psaux"
  Option	"Protocol"	"auto-dev"
  
  # okraje virtualniho touchpadu
  Option	"LeftEdge"      "1500"
  Option	"RightEdge"     "5900"
  Option	"TopEdge"       "1650"
  Option	"BottomEdge"    "4500"
    
  # Sdilena pamet, aby jej bylo mozne testovat s externimi programy
  Option	"SHMConfig"	"on"
  
  # Poklepani v rozich touchpadu se chova jako mysi tlacitka
  # HW tlacitka na touchpadu mohou byt o prednasce prilis hlasita
  # Pravy horni roh - prave tlacitko; pravy dolni roh - prostredni tlacitko
  Option	"RTCornerButton"	"3"
  Option	"RBCornerButton"	"2"

  # Pokud dojedete prstem na kraj touchpadu, kurzor se pohybuje dal danym smerem
  Option	"EdgeMotionUseAlways"	"1"
  
  # Poklepani vice prsty se chova jako jine tlacitko mysi
  # 2 prsty - prave tlacitko, 3 prsty - prostredni tlacitko
  Option	"TapButton1"	"1"
  Option	"TapButton2"	"3"
  Option	"TapButton3"	"2"
  
  # Detekce dotyku touchpadu dlani nebo velkou plochou ruky
  # Neni tak dulezite, nx9020 umi vypinat touchpad hardwarove
  Option	"PalmDetect"	"1"
  Option	"PalmMinZ"	"150"

  # Dalsi nastaveni ohledne citlivosti dotyku a poklepani
  Option	"FingerLow"	"25"
  Option	"FingerHigh"	"30"
  Option	"MaxTapTime"	"180"
  Option	"MaxTapMove"	"220"

  # Nastaveni scrollovaci plosky na prave strane touchpadu
  Option	"VertScrollDelta" "50"
  Option	"HorizScrollDelta" "50"
  
  # Akcelerace ukazatele mysi
  Option	"MinSpeed"	"0.06"
  Option	"MaxSpeed"	"0.15"
  Option	"AccelFactor" "0.0015"
EndSection

# Nastaveni externi USB mysi, zalezi, jakou mate
# Nejedna se o CorePointer, tim je pro nas touchpad
# Obe zarizeni (mys i touchpad) lze provozovat bez potizi zaroven
# Dokonce je lze i za behu X libovolne zapinat a vypinat
Section "InputDevice"
	Identifier	"Genius NetScroll USB mouse"
	Driver		"mouse"
	Option		"Device"		"/dev/input/mice"
	Option		"Protocol"		"ImPS/2"
	Option		"SendCoreEvents"	"true"
	Option		"Emulate3Buttons"	"true"
	Option		"ZAxisMapping"		"4 5"
EndSection

# Graficka karta
# Ovladac je pritomen v kernelu, stejne tak ovladac pro DRI
# Parametr VideoRam umozni delegovat pamet v rozmezi 32-64MB
# Parametr BusID pry pomaha ke zvyseni vykonu - nepozorovano
# VBERestore slouzi k obnove displeje po uspani/hibernaci
Section "Device"
	Identifier	"Intel 82852/855GM onboard"
	Driver		"i810"
	VideoRam	65536
	BusID		"PCI:0:2:0"
	Option		"DRI"	"on"
	Option		"VBERestore"	"true"
EndSection

# Parametry LCD displeje, rozsahy nutno upravit
Section "Monitor"
	Identifier	"HP nx9020 15 LCD"
	HorizSync	30-60
	VertRefresh	50-75
	Option		"DPMS"
EndSection

# Sestavime spolek displeje, graficke karty a vhodneho rozliseni 
Section "Screen"
	Identifier	"Default Screen"
	Device		"Intel 82852/855GM onboard"
	Monitor		"HP nx9020 15 LCD"
	DefaultDepth	24
	SubSection "Display"
		Depth		1
		Modes		"1024x768" "800x600"
	EndSubSection
	SubSection "Display"
		Depth		4
		Modes		"1024x768" "800x600"
	EndSubSection
	SubSection "Display"
		Depth		8
		Modes		"1024x768" "800x600"
	EndSubSection
	SubSection "Display"
		Depth		15
		Modes		"1024x768" "800x600"
	EndSubSection
	SubSection "Display"
		Depth		16
		Modes		"1024x768" "800x600"
	EndSubSection
	SubSection "Display"
		Depth		24
		Modes		"1024x768" "800x600"
	EndSubSection
EndSection

# Vse spojime dohromady, vcetne vsech ukazatelu, nezalezi, zda je USB mys pripojena
Section "ServerLayout"
	Identifier	"Default Layout"
	Screen		"Default Screen"
	InputDevice	"HP nx9020 Keyboard"
	InputDevice	"HP nx9020 Synaptics Touchpad"
	InputDevice	"Genius NetScroll USB mouse"
EndSection

# Nastaveni prav na DRI pro vsechny uzivatele
Section "DRI"
	Mode	0666
EndSection

Přechod na X.org

Přechod na X.org v Debianu bych označil za témeř bezbolestný. Čekal jsem mnohem větší potíže. Debian se však vytáhl svými trans-skripty, které veškerou konfiguraci vygenerují ze stávající konfigurace XFree86.

Navzdory tomu mi po upgradu X server nenaběhl. Log prozradil, že se mu nelíbí několik modulů, že zlobí DRI a především že chybí synaptics driver, takže jsem bez CorePointeru. Balíček xfree86-driver-synaptics vzal za své při upgradu, protože byl závislý na xfree86. Je tedy zapotřebí jej nainstalovat znova, už se správnými závislostmi, pak se vše opět spustí. DRI, jak X.org v logu tvrdí, už není rešeno X moduly, nýbrž se o něj stará Mesa sama. Dále nám doporučí, ať použijeme v kernelu nastupující modul i915.

Změníme tedy konfiguraci kernelu na:

CONFIG_DRM=y
CONFIG_DRM_I915=y
a pokračujeme úpravou nově vzniklého /etc/X11/xorg.conf

xorg.conf

Nyní už neuvádím celý konfigurační soubor (který jako by z oka vypadl svému předchůdci), pouze změny, které jsem učinil.

# Zruseny moduly GLcore, dri a speedo
Section "Module"
	Load	"bitmap"
	Load	"dbe"
	Load	"ddc"
	Load	"extmod"
	Load	"freetype"
	Load	"glx"
	Load	"record"
	Load 	"synaptics"
	Load	"type1"
EndSection

# XkbRules je nutne rucne zmenit na "xorg", patrne nedostatek v prevodnich skriptech Debianu
# Pridal jsem do XkbOptions volby grp_led:num,grp:switch
# Takze Numlock (ktery je na notebooku na nic) zobrazuje stav klavesnice
# a AltGr docasne prepina klavesnici podrzenim
Section "InputDevice"
	Identifier	"HP nx9020 Keyboard"
	Driver		"keyboard"
	Option		"CoreKeyboard"
	Option "XkbLayout"   "us,cz_qwerty"
	Option "XkbModel"    "hpnx26"
	Option "XkbRules"    "xorg"
	Option "XkbOptions"  "grp:shift_toggle,altwin:super_win,altwin:menu,grp_led:num,grp:switch"
EndSection

# Patrne lze odstranit celou sekci DRI, nepozoruji zadne zmeny na funkcnosti

No a je hotovo. Nakonec se s vámi podělím o warningy, kterými mne X.org častuje a se kterými jsem zatím nic neudělal:


(WW) I810(0): config file hsync range 43.8857-48.5053kHz not within DDC hsync ranges.
Skipping "/usr/X11R6/lib/modules/libfb.a:fbmmx.o":  No symbols found
(WW) I810(0): Bad V_BIOS checksum
(WW) I810(0): Extended BIOS function 0x5f05 failed.
Warning: font renderer for ".pcf" already registered at priority 0                                                            
Warning: font renderer for ".pcf.Z" already registered at priority 0                                                          
Warning: font renderer for ".pcf.gz" already registered at priority 0                                                         
Warning: font renderer for ".snf" already registered at priority 0                                                            
Warning: font renderer for ".snf.Z" already registered at priority 0                                                          
Warning: font renderer for ".snf.gz" already registered at priority 0                                                         
Warning: font renderer for ".bdf" already registered at priority 0                                                            
Warning: font renderer for ".bdf.Z" already registered at priority 0                                                          
Warning: font renderer for ".bdf.gz" already registered at priority 0                                                         
Warning: font renderer for ".pmf" already registered at priority 0

Závěr

Po přechodu na X.org, nastavení větší videopaměti, použití modulu i915 a nastaveni BusID na fixní hodnotu mi stouplo FPS v glxgears z cca 300 FPS na dnešních 570 FPS, tedy téměř dvojnásobné zlepšení. I náběh X serveru mi připadá o maličko rychlejší.

Poděkování

Mé díky patří všem, kdo dali záznam do HW sekce AbcLinuxu a také Szczedarovi, jehož návod mi v mnohém pomohl.

       

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ář

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