segunda-feira, 20 de dezembro de 2010

Notebook HP G42-212BR e Debian Squeeze

Colocarei nesse post apenas alguns detalhes sobre minha experiência com o notebook G42-212BR no Debian Squeeze (testing / 6.0).

O funcionamento, após uma instalção normal, foi de quase 100%. Não foi necessário passar parametros especiais para o carregamento do sistema, nem muita mágica.

Na verdade as três interveções necessárias foi para ativar os dispositivos de som e de rede sem fio, e configurar o NetworkManager para detectar a rede com fio.

Passo 1 - Som

No Windows, pelo software da Realtek, o CODEC reconhecido é o ALC270. Pelo linux, o dispositivo é reconhecido como Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03), e pelo ALSA como Intel G45 DEVCTG, utilizando o modulo snd-hda-intel.

O som não rolava de jeito nenhum. Ao executar o comando cat /proc/asound/card0/codec#* | grep Codec tinha como resultado:
Codec: Realtek ID 270
Codec: Intel G45 DEVCTG

Observe o Realtek ID 270. Isso significa que é um codec desconhecido, pois o ideal seria algo do tipo Realtek ALCxxx (Realtek ALC260, por exemplo).

Solução

Instalei o apt-build e os headers do kernel (aptitude install apt-build linux-headers-2.6)
Rodei o comando m-a
Dentro do module assistant (m-a) pedi para compilar e instalar o alsa-base
Inseri a linha options snd-hda-intel enable_msi=1 ao arquivo /etc/modprobe.d/alsa-base.conf
Reiniciei o PC. Se preferir, reinicie apenas o alsa com o comando alsa reload

Dessa vez ao executar o comando cat /proc/asound/card0/codec#* | grep Codec foi retornado
Codec: Realtek ALC259
Codec: Intel G45 DEVCTG

Passo 2 - Wireless

A rede sem fio desse notebook é disponibilizada pela controladora Realtek RTL8191SEvA

Network controller: Realtek Semiconductor Co., Ltd. RTL8191SEvA Wireless LAN Controller (rev 10)

Tentei utilizar esse dispositivo pelo Ubuntu através do gerenciador de drivers proprietários, sem sucesso. No Debian, instalei o NDISWRAPPER (pelo m-a como o alsa-base), mas também não obtive resultado satisfatório. O ndiswrapper detectava o dispositivo após apontar o arquivo inf do driver (tanto do WinXP 32-bits quanto do 64-bits) mas na hora de funcionar não dava certo.

Solução:

Depois de muito procurar, fiz o caminho mais óbvio como um usuário de Windows faria: ir ao site do fabricante procurar um driver. Fui desanimado, achando que não iria encontrar. Para minha feliz surpresa existia lá o driver para linux. Bastou um ./configure && make && make install para o NetworkManager detectar as redes sem fio que tenho por aqui por perto ;-)

Passo 3 - NetworkManager e Conexão com fio.

A rede com fio, controlada por um chip Realtek RTL8101E/8102E
Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 02)
foi detectada automaticamente pelo linux. O problema foi ativar o gerenciamento dessa rede pelo NetworkManager.

Solução:

Se a interface eth0 (no seu computador pode ser eth1, eth2, etc) estiver referenciada no arquivo
/etc/network/interfaces como no exemplo abaixo (para DHCP)
allow-hotplug eth0
iface eth0 inet dhcp

Edite o arquivo /etc/NetworkManager/NetworkManager.conf

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

trocando o false por true

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=true

Salve o arquivo e reinicie o serviço
/etc/init.d/network-manager restart

Pronto. Por hoje é só pessoal.
Follow Me on Twitter