Mirek Rogoziński

linux, opensuse, nvidia, fglrx, open source, internet, windows

Archive for the ‘Hardware’ Category

NVIDIA 173.14.12

30 lipca NVIDIA udostępniła najnowszą wersję sterowników do kart graficznych - 173.14.12. Wielu użytkowników Linuksa i KDE 4 czekało na nowe wydanie, sądząc, że NVIDIA poprawi swoje sterowniki i zwiększy wydajność dla KDE 4. Niestety problem wydajności kart NVIDII pod KDE 4 pozostaje dalej nierozwiązany i póki co nic nie zapowiada szybkiej poprawy sytuacji. Lista nowości w sterowniku jest niestety bardzo krótka:

  • dodano wsparcie dla kart GeForce 8600 GS,
  • naprawiono błąd z brakującym renderingiem w OpenGL Workstation Overlays,
  • naprawiono problem z uruchamianiem niektórych aplikacji SDL i przełączaniem wirtualnych terminali,
  • naprawiono błąd przy zapisywaniu konfiguracji Xów w nvidia-settings.

Sterownik w wersji 32 bitowej: www.nvidia.com/

Sterownik w wersji 64 bitowej: www.nvidia.com/

  • 0 Comments
  • Filed under: Hardware, Linux, Nvidia
  • Zachęcam wszystkich użytkowników openSUSE (i nie tylko) do wzięcia udziału w prostej i krótkiej ankiecie dotyczącej konfiguracji dysków twardych. Ankieta ta powstała w celu zapoznania się z preferencjami użytkowników. W czasie ankiety należy odpowiedzieć na kilka podstawowych pytań (np. jakich programów do partycjonowania używamy, jakie typy dysków posiadamy). Nasze odpowiedzi będą miały bezpośredni wpływ na zmiany w module Partycjonowania dysków w panelu YaST. Ankieta będzie aktywna do 28 maja 2008 r., a wyniki zostaną umieszczone w serwisie openSUSE.org.

    Adres ankiety:
    http://www.surveymonkey.com

    Od jakiegoś czasu męczyłem się z konfiguracją mojej karty wifi Broadcom Corporation BCM94311MCG wlan mini-PCI (rev 01) pod openSUSE 10.3. Natywna wersja sterowników niestety raz działała a raz nie, dlatego zdecydowałem się zainstalować sterowniki windowsowe za pomocą ndiswrappera. Poniżej zamieszcza krótki opis jak to zrobić, oparty na opisie z suseblog.com

    1. Usuwanie natywnych sterowników bcm43xx
    Na samym początku należy usunąć moduł bcm43xx. Wchodzimy do konsoli i wpisujemy:

    $ su
    Password:
    # rmmod bcm43xx

    Następnie należy poinstruować system, aby nie próbował już używać tego sterownika. Edytujemy plik /etc/modprobe.conf.local i na końcu dodajemy taką linijkę:

    blacklist bcm43xx
    Sterownik bcm43xx nie będzie już sprawiał nam problemów.

    2. Instalacja windowsowego sterownika
    Teraz przechodzimy do instalacji ndiswrappera i windowsowego sterownika bcmwl5. Wchodzimy do Yasta i instalujemy ndiswrappera. Następnie pobieramy sterownik stąd. Przechodzimy ponownie do konsoli i rozpakowujemy archiwum:

    # tar -jxvf bcmwl5.tar.bz2
    Następnie instalujemy go:

    # ndiswrapper -i bcmwl5/bcmwl5.inf
    Teraz sprawdzimy czy sterownik napewno się zainstalował:

    # ndiswrapper -l
    bcmwl5 : driver installed
    device (14E4:4311) present (alternate driver: bcm43xx)

    Jeśli wyświetliło się coś podobnego, to instalacja przebiegła poprawnie.

    3. Konfiguracja
    Teraz należy stworzyć plik konfiguracyjny dla ndiswrappera:

    # ndiswrapper -m
    Odłączamy wszystkie kable sieciowe i uruchamiamy ndiswrappera:

    # modprobe ndiswrapper
    Od tego momentu powinno nam działać połaczenie wifi. Możemy jeszcze sprawdzić czy tak jest poleceniami iwconfig i iwlist.

    4. Ndiswrapper i automatyczne uruchamianie.
    Aby ustawić ndiswrappera do obsługi karty sieciowej na stałe, należy uruchomić Yast2, przejść do zakładki Urządzenia sieciowe-> Karta sieciowa. Teraz edytujemy ustawienia karty wifi i wybieramy zakładkę Sprzęt. W polu Nazwa modułu wpisujemy ndiswrapper i uruchamiamy ponownie system.

    Artykuł ten opisuje krok po kroku konfigurację telefonu do połączeń internetowych GPRS/EDGE via Bluetooth.

    Instalacja wymaganych pakietów.

    Do podłączenia telefonu potrzebne są następujące pakiety:

    • bluez-libs,
    • bluez-utils,
    • ppp,
    • smppd

    Wszystkie potrzebne nam pakiety znajdziemy w głównym repozytorium instalacyjnym.

    Zbieranie informacji.

    Na początku sprawdzimy czy nasz Bluetooth działa poprawnie:

    # hciconfig
    hci0:   Type: USB
    BD Address: yy:yy:yy:yy:yy:yy ACL MTU: 1017:8 SCO MTU: 64:8
    UP RUNNING PSCAN ISCAN
    RX bytes:2726 acl:0 sco:0 events:31 errors:0
    TX bytes:367 acl:0 sco:0 commands:31 errors:0

    Jeśli pojawi się coś takiego, to znaczy, że nasz Bluetooth działa poprawnie. Teraz włączamy Bluetooth na telefonie i ustawiamy dostęp na publiczny. Następnie wpisujemy

    # hcitool scan
    Scanning ...
            xx:xx:xx:xx:xx:xx       key

    To jest adres MAC naszego telefonu. Możemy dla pewności sprawdzić czy da się z nim połączyć. Wykonujmy polecenie l2ping:

    # l2ping xx:xx:xx:xx:xx:xx
    Ping: xx:xx:xx:xx:xx:xx from 00:19:7E:DC:E8:3F (data size 44) ...
    0 bytes from xx:xx:xx:xx:xx:xx id 0 time 72.82ms
    0 bytes from xx:xx:xx:xx:xx:xx id 1 time 29.82ms
    0 bytes from xx:xx:xx:xx:xx:xx id 2 time 9.67ms
    3 sent, 3 received, 0% loss

    A więc nasze Bluetooth działa i komunikuje się z telefonem bez żadnych problemów. Teraz sprawdzimy, na którym kanale istnieje połączenie:

    # sdptool search DUN
    Inquiring ...
        Searching for DUN on xx:xx:xx:xx:xx:xx ...
        Service Name: Dial-Up Networking
        Service RecHandle: 0x1003d
        Service Class ID List:
        "Dialup Networking" (0x1103)
        Protocol Descriptor List:
        "L2CAP" (0x0100)
        "RFCOMM" (0x0003)
        Channel: 4
        Language Base Attr List:
        code_ISO639: 0x454e
        encoding:    0x6a
        base_offset: 0x100
        Profile Descriptor List:
        "Dialup Networking" (0x1103)
        Version: 0x0100

    W moim przypadku jest to kanał 4. Znając adres MAC i kanał, przystępujemy do konfiguracji Bluetooth dla naszego telefonu.

    Konfiguracja Bluetooth.

    Włączamy konsolę i jako root edytujemy plik /etc/bluetooth/rfcomm.conf. Powinien wyglądać mniej więcej tak:

    #
    # RFCOMM configuration file.
    #
    
    rfcomm0 {
    #       # Automatically bind the device at startup
            bind yes;
    #
    #       # Bluetooth address of the device
            device xx:xx:xx:xx:xx:xx; # tu wpisujemy adres MAC #
    #
    #       # RFCOMM channel for the connection
            channel 4; # a tu podajemy kanał #
    #
    #       # Description of the connection
    #       comment "Example Bluetooth device";
    }

    Gdy już dokonamy odpowiednich wpisów, restartujemy usługę Bluetooth poleceniem

    # /etc/init.d/bluetooth restart

    i przystępujemy do konfiguracji modemu.

    Konfiguracja modemu.

    Uruchamiamy Yast Control Center i przechodzimy do sekcji Urządzenia sieciowe -> Modem, wybieramy Dodaj. Teraz uzupełniamy po kolei:

    • Urządzenie modemu : /dev/rfcomm0
    • Tryb wybierania : wybieranie tonowe

    klikamy szczegóły:

    • Prędkość przekazu : 115200
    • Sekwencja inicjująca modem : Init 1 i Init 3 bez zmian, Init 2 : AT+CGDCONT=1, “IP”, “AP” - gdzie AP to usługodawca - patrz niżej, teraz ustawimy dla PlusGSM, czyli www.plusgsm.pl

    klikamy ok i dalej, wybieramy Inni dostawcy i wpisujemy:

    • Nazwa dostawcy : plusgsm
    • Numer telefonu : *99#
    • Nazwa użytkownika : niby nie potrzebna, ale Yast się będzie czepiać więc wpisujemy user

    i klikamy dalej i jeszcze raz dalej. Teraz zakończ.

    Połączenie z Internetem.

    Do łączenia z Internetem polecam KnetworkManager, u mnie nie sprawiał najmniejszych problemów. Możemy także używać Kinternet. Tutaj skupię się tylko na łączeniu via KnetworkManager. Klikamy prawym na ikonkę KNetworkManager i wybieramy Połączenia wdzwaniane - > Połącz z plusgsm via modem (modem0). W tym momencie na telefonie powinno się pojawić zapytanie czy chcesz się połączyć z komputerem - wybieramy tak. Teraz należy podać PIN - ale nie PIN telefonu tylko jakiś wymyślony, np. 1234. Będzie on potrzebny do sparowania telefonu z komputerem. Gdy już podamy na komputerze pojawi się okienko z prośbą o podanie tego samego PINu - wpisujemy go. To już koniec konfiguracji - od tego momentu powinniśmy mieć internet przez telefon.

    Uwagi końcowe.

    • # przy poleceniach oznacza, że masz je wykonywać jako root.
    • Jeśli konfiguracji “czegoś” nie opisałem, to znaczy, że ma zostać wartość domyślna.
    • Ustawienia APN i nazwy użytkowników dla polskich operatorów:
      • PlusGSM APN: “www.plusgsm.pl” bez nazwy użytkownika i hasła.
      • Orange APN: “www.orange.pl” użytkownik: internet, hasło: internet.
      • ERA APN: “erainternet” użytkownik: erainternet, hasło: erainternet.
    • We wszystkich przypadkach, jeśli się nie mylę, podajemy ten sam nr, czyli *99#, jeśli nie zadziałałoby możemy spróbować z *99***1#.
    • Testowane na telefonach: Motorola E398, Nokia 6131, Nokia 6120. Wg mnie powinno chodzić na większości telefonów z Bluetooth i GPRS/EDGE.
    • Na stronie iPlus można znaleźć info jak użyć telefonu jako modem (konfiguracja oczywiście na win) przez Bluetooth, IRDĘ i kabel USB. Przydatne informacje to nr i APN. Niestety nie udało mi się znaleźć nic podobnego na stronach Orange i Ery - jeśli ktoś znajdzie to niech da znać;)

    Jeśli zrobiłeś wszystko dokładnie krok po kroku, połączenie nie ma prawa nie działać. Jeśli nie działa, to znaczy, że albo coś źle zrobiłeś, albo Twój telefon jest źle skonfigurowany.

    Nowy sterownik Nvidia 169.09

    21 stycznia Nvidia wypuściła kolejną wersje sterowników dla kart graficznych, przeznaczonych dla systemu Linux. Z najważniejszych zmian w sterowniku 169.09 można wymienić:

    • poprawiony problem występujący w niektórych procesorach graficznych, których wentylatory działały cały czas z pełną prędkością.
    • poprawiony błąd powodujący zawieszenie X w przypadku, gdy zamiast modułu GLX NVIDIA ładowany był moduł X.Org.
    • poprawione wykrywanie stanu dokowania notebooka przez sterownik X.
    • poprawione ustawienia jasności w notebookach HP Compaq.
    • poprawiony błąd w implementacji w sterowniku algorytmu Linux/i2c, który powodował problemy z transferem plików.

    Z ciekawości postanowiłem tak jak poprzednio zrobić mały benchmark i porównać wydajność.

    Procedura testowa

    Test został przeprowadzony przy użyciu gry Nexuiz. Test przeprowadzony był na dwóch plikach xorg.conf dla każdego sterownika. Pierwszy xorg.conf - to konfiguracja wygenerowana domyślnie przez polecenie
    # sax2 -r -m 0=nvidia,
    w drugim natomiast dodałem obsługę AIGLX (test były przeprowadzone przy włączonym AIGLXie a nie Compizie!) poleceniami
    # nvidia-xconfig --composite
    # nvidia-xconfig --allow-glx-with-composite
    # nvidia-xconfig --render-accel
    # nvidia-xconfig --add-argb-glx-visuals

    Platforma testowa
    Test przeprowadzone były na laptopie Dell Vostro 1500 z procesorem Intel Core 2 Duo T5470 @ 1.60GHz, 2 GB Ramu i kartą graficzną NVIDIA 8400M GS 256 MB własnej pamięci VRAM z zainstalowanym systemem openSUSE 10.3 x86. Wszystkie sterowniki są w wersji 32 bitowej.

    Wyniki

    • 169.07 bez aiglx

    1910 frames 34.0970000 seconds 56.0166584 fps, one-second min/avg/max: 40 56 75

    • 169.07 aiglx

    1910 frames 45.4630000 seconds 42.0121857 fps, one-second min/avg/max: 32 42 53

    • 169.09 bez aiglx

    1910 frames 34.2330000 seconds 55.7941168 fps, one-second min/avg/max: 41 56 77

    • 169.09 aiglx

    1910 frames 46.0380000 seconds 41.4874669 fps, one-second min/avg/max: 31 42 53

    Jak widać po wynikach, nowy sterownik oprócz kilku poprawek niestety nic konkretnego nie wnosi. Dla tych, którzy się zastanawiają czy zaktualizować 169.07 do nowszej wersji, mogę powiedzieć, że nie ma potrzeby.

  • 0 Comments
  • Filed under: Hardware, Linux, Nvidia