HP Pavilion dv6748us - HOWTO
: 05 kwietnia 2008, 13:23
Witam!
Mój laptop to HP Pavilion dv6748us (wskazówki tu zawarte mogą być przydatne także do innych modeli z serii dv6700 lub podobnych z procesorami AMD Turion), na którym zainstalowałem wersję testing Debiana (stabilna netinstall nie chciała się zainstalować z powodu braku sterowników do karty sieciowej...). Zdecydowałem się napisać tego posta, ponieważ trochę czasu musiałem poświęcić na przystosowywanie go do współpracy z Debianem, a że wszystko zapisywałem co i jak robić, doszedłem do wniosku, że podzielę się tym z innymi na forum. Opiszę tu 3 rzeczy, nad którymi należy popracować, aby w pełni można się było cieszyć z Debiana. A więc po kolei.
Polecenia poprzedzone znakiem $ wykonuje się jako zwykły użytkownik, natomiast polecenia po znaku # jako root (polecenie: $ su).
1. Karta sieciowa nVidia MCP67 ($ lspci | grep Ethernet):
Problem z tą kartą polega na tym, że system nieprawidłowo odczytuje jej adres MAC i za każdym razem podczas startu tworzy nowy interfejs sieciowy, i tak po 10 restartach mamy po kolei eth1, eth2,... eth10. Od razu dodam, że wpis typu:
w pliku /etc/network/interfaces nie pomaga. Za każdym razem dane o nowym interfejsie zapisywane są do pliku /etc/udev/rules.d/z25_persistent-net.rules. Po jego usunięciu, utworzeniu na nowo i restarcie systemu wszystko jest w porządku. ¯eby nie robić tego za każdym razem, należy utworzyć skrypt o podanej zawartości i uruchamiać go przy starcie systemu (jak to zrobić opisane jest w jego treści):
Wadą tego rozwiązania jest to, że jeśli nie mamy podłączonego kabla sieciowego, to przy starcie, system może (ale niekoniecznie) próbować przez dłuższy czas wysyłać pakiety DHCPDISCOVER. Wtedy należy wcisnąć Ctrl + C i system dalej będzie się uruchamiał normalnie. Po za tym, jeśli przy starcie systemu nie podłączymy kabla sieciowego, to musimy zrestartować system, aby mieć połączenie z siecią po jego podłączeniu... Nie jest to zapewne eleganckie rozwiązanie, ale za to proste i skuteczne.
2. Karta wi-fi Broadcom BCM4328 ($ lspci | grep Network):
Na dzień dzisiejszy (kwiecień 2008) model ten nie jest jeszcze wspierany przez sterowniki linuksowe. Niby powinno być łatwo zainstalować przez ndiswrappera sterowniki z Visty i powinno działać. ALE... Po pierwsze po zainstalowaniu ndiswrappera z repozytoriów podczas instalacji pojawiają się błędy (trzeba skompilować źródła), a po drugie sterowniki ze strony HP nie działają --- trzeba pożyczyć od konkurencji (ze strony DELL'a). A zatem do dzieła.
Do kompilacji ze źródeł ndiswrapper'a potrzebne będą linux-headers oraz parę innych pakietów:
Następnie należy pobrać pliki źródłowe ndiswrapper'a wersji stabilnej ze strony: http://sourceforge.net/projects/ndiswrapper/. Należy zapisać plik .tar.gz na dysk, rozpakować go, wejść do rozpakowanego katalogu, ewentualnie pozbyć się poprzednich wersji, skompilować i zainstalować:
Po zainstalowaniu ndiswrapper'a należy pobrać plik ze sterownikami ze strony DELLa... http://ftp.us.dell.com/network/R151517.EXE. Plik do zainstalowania pobrany ze strony DELLa nazywa się ''bcmwl5.inf''. Aby dostać się do tego pliku, należy rozpakować ściągnięty plik EXE (polecenie unzip jest dostępne po zainstalowaniu pakietu o tej samej nazwie):
W tym momencie, po przesunięciu suwaka włączającego kartę wi-fi, dioda obok powinna zmienić kolor z pomarańczowego na niebieski. Jeśli po restarcie systemu, po włączeniu suwaka dioda nie będzie się świeciła na niebiesko, należy powtórzyć polecenie:
Aby nie wykonywać tego za każdym razem, należy dodać tą linijkę:
do skryptu uruchamianego podczas startu systemu, czyli np.: dopisać ją do skryptu naprawiającego kartę sieciową ethernetową (punkt 1.) lub stworzyć nowy skrypt i uruchamiać go podczas startu systemu (co i jak opisane w pukcie 1.).
Do zarządzania kartą sieciową wi-fi polecam pakiet wlassistant, który można pobrać stąd (niestety w wersji testing go nie ma, trzeba pobrać wersję dla Sida --- działa bez zarzutu).
http://packages.debian.org/sid/wlassistant
3. Karta dźwiękowa nVidia MCP67 ($ lspci | grep Audio):
Na deser, karta dźwiękowa. Po instalacji alsy z repozytoriów, dźwięk w laptopie działa. ALE po włożeniu słuchawek głośniki nie wyciszają się... Standardowy wpis:w plikach /etc/modprobe.d/alsa-base i/lub /etc/modprobe.d/sound nie rozwiązywał problemu. Aby to naprawić należy skompilować alsę ze źródeł, lekko modyfikując jeden z plików źródłowych. No to do roboty.
Na początek należy odisntalować alsę dostępną z repozytoriów (jeśli ktoś taką instalował oczywiście):
Potem sprawdzamy jaki mamy Subsystem Id:
Mój wynik to:
Następnie odwiedzamy stronę alsy http://www.alsa-project.org/main/index.php/Main_Page i pobieramy alsa-driver-1.0.16 (piszę akurat o tej wersji, która teraz jest dostępna --- może w przyszłych już tego problemu nie będzie). Tworzymy katalog /usr/src/alsa, kopiujemy tam pobrany plik, przechodzimy do tego katalogu, rozpakowujemy plik i modyfikujemy plik alsa-driver-1.0.16/alsa-kernel/pci/hdapatch_conexant.c, a więc:
Około linijki 860 będzie parę linijek tego typu (lub podobnych):
Należy dopisać jedną własną, analogiczną do powyższej, dopisując swój model laptopa oraz wstawiając swój Subsystem ID w odpowiedni sposób tak jak np.: u mnie (raczej nie ma to znaczenia, ale na wszelki wypadek dałem swoją linijkę na początku definicji struktury):
Dalej, udajemy się do odpowiedniego katalogu i kompilujemy alsę z odpowiednimi parametrami:
W tym momencie powinniśmy zrestartować nasz system. Po restarcie należy odinstalować i zainstalować z odpowiednimi opcjami moduł snd-hda-intel (przed jego usunięciem należy zakończyć wszelkie procesy związane z dźwiękiem):
Po instalacji alsy, miksery są wyciszone, więc aby mieć dźwięk należy pobawić się mikserami. W KDE (jeśli ktoś jeszcze czegoś takiego nie ma) będzie to kmix, w GNOME zapewne jakiś podobny:
Po za wyjściem ''Master'' trzeba ustawić na maksymalną wartość także ''PCM''. Od teraz po podłączeniu słuchawek dźwięk w głośnikach będzie się wyciszał. PRAWIE wszystko jest już dobrze, ponieważ teraz nie działa mnie tylko jeszcze wbudowany mikrofon, ale za to ten od słuchawek działa w porządku, a o to mnie chodziło.
Prawdopodobnie w przyszłości te problemy znikną (oby!), ale póki co trzeba z nimi walczyć, mam nadzieję, że komuś się to przyda.
Pozdrawiam,
Przemek.
P.S. Jakby ktoś chciał zainstalować Windowsa XP na sprzęcie tego typu, to polecam stronkę: http://www.fastfs.com/help_pages/hp%20downgrade.htm
gdyż niestety sterowników pod ten system na stronie producenta brak...
Mój laptop to HP Pavilion dv6748us (wskazówki tu zawarte mogą być przydatne także do innych modeli z serii dv6700 lub podobnych z procesorami AMD Turion), na którym zainstalowałem wersję testing Debiana (stabilna netinstall nie chciała się zainstalować z powodu braku sterowników do karty sieciowej...). Zdecydowałem się napisać tego posta, ponieważ trochę czasu musiałem poświęcić na przystosowywanie go do współpracy z Debianem, a że wszystko zapisywałem co i jak robić, doszedłem do wniosku, że podzielę się tym z innymi na forum. Opiszę tu 3 rzeczy, nad którymi należy popracować, aby w pełni można się było cieszyć z Debiana. A więc po kolei.
Polecenia poprzedzone znakiem $ wykonuje się jako zwykły użytkownik, natomiast polecenia po znaku # jako root (polecenie: $ su).
1. Karta sieciowa nVidia MCP67 ($ lspci | grep Ethernet):
Kod: Zaznacz cały
00:0a.0 Ethernet controller: nVidia Corporation MCP67 Ethernet (rev a2)
Kod: Zaznacz cały
allow-hotplug eth0
iface eth0 inet dhcp
hwaddress ether 00:1e:68:07:b5:af
auto eth0
Kod: Zaznacz cały
#!/bin/sh
#***Uruchamianie skryptów podczas startu systemu:***
#1. Skopiować skrypt do katalogu init.d: # cp moj_skrypt /etc/init.d/
#2. Nadać prawa do wykonywania: # chmod +x /etc/init.d/moj_skrypt
#3. Stworzyć dowiązania: # update-rc.d /etc/init.d/moj_skrypt defaults
rm /etc/udev/rules.d/z25_persistent-net.rules
touch /etc/udev/rules.d/z25_persistent-net.rules
2. Karta wi-fi Broadcom BCM4328 ($ lspci | grep Network):
Kod: Zaznacz cały
03:00.0 Network controller: Broadcom Corporation BCM4328 802.11a/b/g/n (rev 03)
Do kompilacji ze źródeł ndiswrapper'a potrzebne będą linux-headers oraz parę innych pakietów:
Kod: Zaznacz cały
# aptitude update
# aptitude install linux-headers-$(uname -r) // uname -r sprawdza wersje jądra do którego maja być zainstalowane nagłówki
# aptitude install dh-make fakeroot gcc-3.4 build-essential // pozostałe pakiety potrzebne do kompilacji ndiswrapper'a
Kod: Zaznacz cały
$ tar xzvf ndiswrapper-1.52.tar.gz
$ cd ndiswrapper-1.52
$ make distclean clean
$ make
# make install
Kod: Zaznacz cały
$ wget [url]http://ftp.us.dell.com/network/R151517.EXE[/url]
$ mkdir dell_driver
$ unzip -a R151517.EXE -d dell_driver/
$ cd dell_driver/DRIVER/
# ndiswrapper -i bcmwl5.inf
# ndiswrapper -l // opcjonalne- sprawdza, czy sterownik został zainstalowany
# ndiswrapper -m
# modprobe ndiswrapper
Kod: Zaznacz cały
# modprobe ndiswrapper
Kod: Zaznacz cały
modprobe ndiswrapper
Do zarządzania kartą sieciową wi-fi polecam pakiet wlassistant, który można pobrać stąd (niestety w wersji testing go nie ma, trzeba pobrać wersję dla Sida --- działa bez zarzutu).
http://packages.debian.org/sid/wlassistant
3. Karta dźwiękowa nVidia MCP67 ($ lspci | grep Audio):
Kod: Zaznacz cały
00:07.0 Audio device: nVidia Corporation MCP67 High Definition Audio (rev a1)
Kod: Zaznacz cały
options snd-hda-intel model=MODEL
Na początek należy odisntalować alsę dostępną z repozytoriów (jeśli ktoś taką instalował oczywiście):
Kod: Zaznacz cały
# aptitude purge alsa-base
# aptitude purge alsa-utils
Kod: Zaznacz cały
$ cat /proc/asound/card0/codec#0 | grep Subsystem
Kod: Zaznacz cały
Subsystem Id: 0x103c30cf
Kod: Zaznacz cały
# mkdir /usr/src/alsa
# cp alsa-driver-1.0.16.tar.bz2 /usr/src/alsa
# cd /usr/src/alsa
# tar xjvf alsa-driver-1.0.16.tar.bz2
# nano alsa-driver-1.0.16/alsa-kernel/pci/hda/patch_conexant.c
Kod: Zaznacz cały
SND_PCI_QUIRK(0x103c, 0x30a5, "HP", CXT5045_LAPTOP_HPSENSE),
Kod: Zaznacz cały
SND_PCI_QUIRK(0x103c, 0x30cf, "HP DV6748us", CXT5045_LAPTOP_HPSENSE),
Kod: Zaznacz cały
# cd /usr/src/alsa/alsa-driver-1.0.16
# ./configure --prefix=/usr --with-cards=hda-intel --with-card-options=hda-codec-conexant
# make
# make install
Kod: Zaznacz cały
# lsof /dev/snd/*
# kill NUMER_PROCESU (numer w kolumnie PID)
# rmmod snd-hda-intel
# modprobe snd-hda-intel model=laptop
Kod: Zaznacz cały
# aptitude update
# aptitude install kmix
Prawdopodobnie w przyszłości te problemy znikną (oby!), ale póki co trzeba z nimi walczyć, mam nadzieję, że komuś się to przyda.
Pozdrawiam,
Przemek.
P.S. Jakby ktoś chciał zainstalować Windowsa XP na sprzęcie tego typu, to polecam stronkę: http://www.fastfs.com/help_pages/hp%20downgrade.htm
gdyż niestety sterowników pod ten system na stronie producenta brak...