Follow falcon_dark on Twitter
Google

segunda-feira, fevereiro 20, 2006

Notebook, Linux e drivers ATI: o fim da novela

Até que enfim, após muitas batidas de cabeça na parede consegui configurar corretamente minha ATi Radeon x200 Mobility do meu HP/Compaq NX6115 no Mandriva 2006. Depois de instalar o sistema, desabilitar o ACPI para o barramento PCI (via pci=noacpi como parâmetro de boot do kernel no Lilo por razões de desempenho), configurar o wi-fi da Broadcom (BCM4318) com o ndiswrapper e o driver de Windows, atualizar o OpenOffice para a versão 2.0, o Firefox para a 1.5.1 e deixar todo o resto funcionando (leia-se Apache, PHP, firewall, anti-virus, conexões de rede, impressoras, e mais uma sacolada de programas, além do Kopete usando o jabber com logon no GTalk) decidi partir à sério para o vídeo.

O procedimento que detalharei aqui pode servir pra você também (na verdade espero que sirva mesmo) que quer configurar uma ATI no Mandriva ou outra distro derivada do RH. O procedimento na verdade deve servir para qualquer distro, mas vai saber. Me ajudou muito com o vídeo o amigo Helio Castro o cara do KDE no Brasil e membro do excelente time da Conectiva. Agradecimentos ao pessoal da Conectiva pela ajuda com os problemas de desempenho do Linux e pela descoberta do culpado (ACPI). Valeu pela força!

Baixando e instalando o driver
Primeiro eu baixei o driver proprietário da ATI, peguei os drivers de x86-32bit para Radeon 8500 and higher. Eu já havia tentado usando os drivers Notebooks with ATI Graphics e Motherboards with ATI Graphics sem sucesso, seguindo recomendações que achei na web, mas não havia funcionado com nenhuma das duas. Também já havia tentado o pacote pronto do PLF para Mandriva, e nada. Nem a aceleração 3D funcionava nem apareciam dispositivos em /dev/dri, ou seja era um problemão. Decidi tentar com a versão de driver para placas de desktop mesmo, por isso aconselho que você comece a tentar também por eles.

Baixei o ATI Driver installer versão 8.22.5, com pouco mais que 35MB. Ela é uma versão de instalação automática do driver, simples de usar. Após o download completar segui as instruções do site à risca, inclusive verificando se os pré-requisitos estavam instalados no sistema. Certifique-se de que você tem o seguinte material instalado corretamente em seu Linux:
1- o caminho /dev/shm que significa o sistema de memória compartilhada padrão POSIX;
2- glibc versão 2.2 ou 2.3 (pode ser instalada com # urpmi glibc);
3- Seu kernel é 2.4 ou 2.6 (se não for baixe o Mandriva 2006 ou sua distro de preferência mais recente);
4- Xorg 6.7 ou XFree 4.1 ou posteriores (idem acima).
5- Kernel sources ou kernel headers (pode ser instalado com # urpmi kernel-source)

Com tudo isso instalado eu fui ao local de download do arquivo dos drivers, tornei-me super usuário e digitei:
# sh ./ati-driver-installer-8.22.5-i386.run
o software checou sua integridade e abriu uma tela gráfica. O procedimento de instalação seguiu o descrito no site da ATI, basicamente um Next, Next, OK, que lembrou muito o processo do Windows, com pouca emoção ;-). Mal sabia eu que haveria muita emoção ainda por vir.

Depois que ele terminou de instalar tudo instrui-me a efetuar duas operações;
1- Um backup do arquivo de configuração atual do X (# cp /etc/X11/xorg.conf /etc/X11/xorg.conf.2d.backup);
2- rodar o comando # aticonfig --initial para criar um novo arquivo com as configurações padrão do driver 3D da ATI.

Não preocupe-se em perder as configurações de mouse e teclado atuais do seu X, pois o driver da ATI usa o seu arquivo atual como base para o novo arquivo, apenas adicionando as configurações necessárias para que o 3D funcione. Fiz ambas as tarefas e reiniciei o sistema inteiro, apenas porque a documentação do driver aconselha a fazer isso. Após o boot do sistema o driver estava instalado, mas o X ainda iniciava com meu driver antigo. Editei o arquivo no braço e comentei a seção que referia-se ao driver antigo. Isso foi o bastante para que o sistema iniciasse com os drivers 3D da ATI. Executei os utilitários glxgears e fgl_glxgears para testar o driver. As enormes diferenças de FPS indicam que o driver está funcionando (com o driver antigo o glxgears reportava cerca de 100FPS, com o novo fica em cerca de 1000FPS).

O comando fglrxinfo deve retornar algo parecido com isso:
display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON XPRESS 200M Series SW TCL Generic
OpenGL version string: 2.0.5642 (8.22.5)
Outro vendor string (algo como MesaGL ou SGI) pode não significar nada, mas aqui em todas as vezes que era diferente de ATI o driver 3D não estava funcionando na seção X apesar de instalado corretamente. Se isso acontecer com você (e seu driver não estiver mesmo funcionando) eu sugiro que você edite seu arquivo xorg.conf (depois de fazer um backup, claro) de modo a comentar ou deletar todas as seções relativas à sua placa de vídeo atual (seções DEVICE). Após isso execute novamente o procedimento aticonfig descrito acima. Quando você obtiver o vendor string da ATI e FPS bem altos usando os utilitários é porque o driver funcionou corretamente.


Ajuste fino
Depois de tudo isso o driver estava funcionando por aqui. Dá pra notar que depois do driver funcionar o consumo de processador do X cai um pouquinho (cerca de 5% do que já consumia antes). A aparência das coisas na tela também melhora, as páginas web exibidas pelo Firefox estão mais bem acabadas, as fontes menores aparecem com mais definição em telas LCD. A aparência dos ícones é mais suave. Tudo isso porque a ATI fez melhorias na parte 2D do driver também, além do ganho de performance os drivers trazem também um acabamento melhor na aparência do que é exibido na tela.

Mas alguns problemas começaram a acontecer, principalmente relativos à vídeo. Com o driver antigo (que acompanha o Xorg) vídeos exibidos em tela cheia davam pequenos pulos e atrasos a cada 10 ou 15 segundos, mesmo a máquina tendo um bom processador e bastante memória. Mas com os drivers recém-instalados o Kaffeine (usando engine do Xine) travava ao tentar abrir qualquer vídeo. O Mplayer apresentava a mensagem de erro: Could not open/initialize video device (-vo) e não fazia nenhuma reprodução. Algo precisava de ajustes!

Iniciei o Mplayer pela linha de comando e ele retornava a mesma mensagem de erro, mas com um dado a mais. Ele dizia que o comando mplayer -vo help me daria uma lista de dispositivos de vídeo permitidos para uso. Nessa lista constam o xv, X11 e outros (vídeo com overlay e vídeo comum do X, respectivamente). Usando mplayer -vo X11 nome-do-arquivo.mpeg o arquivo era reproduzido normalmente, mas ocasionalmente com alguns pulos e atrasos (bem menos que antes, verdade). O comando xvinfo retorna informações do layer X-Video, e ao usá-lo notei que ele acusava não haverem dispositivos compatíveis com o X-Video instalados. Isso é uma falha da configuração padrão do aticonfig, pois nesse momento eu já possuia os drivers 3D instalados e operacionais.

Após uma leitura cuidadosa dos parâmetros de configuração do aticonfig descobri que é possível setar o uso do Xv como opção de overlay para o driver, aqui a opção padrão foi o OpenGLOverlay. Decidi reconfigurar o driver (leia reconfigurar o Xorg pelo xorg.conf) usando o seguinte comando:
# aticonfig --ovt=Xv --dtop=clone --iagp=on -v -f
cujas opções são detalhadas a seguir:
--ovt=Xv: usa o overlay do X-Video em lugar do OpenGL;
--dtop=clone: minha placa ATI é dual head e esta opção joga na porta externa a mesma tela exibida no LCD do note, mas com opção de redefinir freqüências e taxa de atualização, útil para usar monitores ou projetores externos. Há outras opções como usar as mesmas taxas de atualização ou extender o desktop para uso com o Xinerama, para mais informações digite apenas aticonfig para ver todas as opções disponíveis;
--iagp=on: usa o agpgart interno do driver proprietário em lugar do fornecido pelo Kernel 2.6 do Linux, opção recomendada pela ATI;
-v: modo verbose para que o aticonfig informe detalhadamente todas as operações;
-f: força a reescrita do arquivo xorg.conf.

Foi necessário reiniciar o Xorg para que as opções entrassem em funcionamento. Na volta do Xorg o driver estava funcionando normalmente e o comando xvinfo informava o seguinte:
X-Video Extension version 2.2
screen #0
Adaptor #0: "ATI Radeon Video Overlay"

Além de outras informações sobre o sistema gráfico da máquina.

Com isso o Mplayer parou de reportar erro ao tentar reproduzir arquivos e a melhora no desempenho do vídeo foi muito sensível. O Kaffeine também parou de apresentar travamentos, reproduzindo de maneira normal todos os vídeos suportados.

Conclusão
Agora o vídeo 3D no meu Mandriva 2006 funciona perfeitamente, a aparência e usabilidade do desktop melhoraram muito e o desempenho e qualidade da reprodução de vídeos está bem melhor. Mas dá pra perceber que muita coisa precisa ser feita nesses drivers da ATI para que eles possam ser mais fáceis de configurar. As opções de configuração podem ser decisivas para o funcionamento adequado do driver, por isso é recomendável que todo usuário leia as opções e teste algumas delas para descobrir como usar melhor seu hardware sob o Linux. Vamos esperar que as próximas versões possam acertar melhor as configrações iniciais e que apresentem um desempenho adequado ao nome que a ATI tem no mundo do hardware gráfico.

Follow falcon_dark on Twitter
Google
Comments:
Poderia também ter feito o mplayer usar o backend opengl, como mplayer -vo opengl.. porém muitos outros aplicatvos não reconhecem opengl como saída padrão.
Uma dica, verifique se realmente a libGL que você está acessando seja a da ATI, usualmente uma atualizaçào do X.org sobrescreve a mesma, e por isso se coloca a GL da ATI e um diretório diferente com acesso via LD_LIBRARY_PATH
 
Pelo fato de muitos programas terem problemas e para evitar ter de reconfigurar muitos deles eu preferi fazer o overlay pelo X-Video.

Com relação à libGL, as bibliotecas da ATI constam no diretório /usr/X11R6/lib e as originais foram renomeadas para backup. Os links simbólicos dos nomes originais apontam para as novas versões, então acredito que o X está mesmo usando as libs da ATI. Você recomenda que eu salve-as em outro local e inclua esse path no LD_LIBRARY_PATH? Eu não costumo atualizar o Xorg, apenas quando sai uma versão nova do Mandriva, por isso não pretendo mudar isso antes do próximo ano, mas realmente deve ser bom ter esses libs em outro local.

Valeu Helio!
 
Utilizei com sucesso este procedimento para instalar a ATI X200 no SUSE 10.0 x86_64 com processador Turion 64.
Quanto ao backup das libs, o Suse usa /usr/X11R6/lib/modules/dri com diversas libs da ATI. Como faço para verificar se a libGL é também da ATI?
 
O modo mais fácil:

Descubra qual o seu LD_LIBRARY_PATH:
$ echo $LD_LIBRARY_PATH
/usr/X11R6/lib

então liste o que existe nesse path:
$ ls -l /usr/X11R6/lib/libG*
lrwxrwxrwx 1 root root 27 Fev 20 01:32 /usr/X11R6/lib/libGL.so -> /usr/X11R6/lib/libGL.so.1.2
lrwxrwxrwx 1 root root 27 Fev 20 01:32 /usr/X11R6/lib/libGL.so.1 -> /usr/X11R6/lib/libGL.so.1.2
-rw-r--r-- 1 root root 773442 Fev 20 01:32 /usr/X11R6/lib/libGL.so.1.2
reapre que minha libGL.so é na verdade um link para o arquivo libGL.so.1.2 que está no mesmo diretório. Agora note as datas de criação destes arquivos (tanto a biblioteca de 773KB quanto o link): 20 de Fevereiro 01:32h. Repare que meu post é de 20 de Fevereiro às 2:16h. Ou seja, essa lib e o link foram criados pelo driver da ATI quando eu instalei. Como estão no PATH usado pelo sistema, estou usando a bibliote que o driver da ATI instalou no sistema.
 
ora boas. tenho uma mobility radeom x700. já há uns dias que tento instalar o driver, mas...
bem, 2 questões:
1º - acho que que qualquer um dos links da ATI (quando se escolhe Linux drivers..., aparece acho que 3 opções diferentes, mas) vai dar à mesma página do driver (pelo menos, o nome do ficheiro parece-me igual), mas talvez o conteúdo seja diferente.

2º -quando diz para apagar as linhas do file xorg.conf que têm informação da placa antiga, quais as linhas? na secção device aparece-me 3 linha (fora a referência ao inicio e fim da secção)
Section "Device"
Identifier "ATI Graphics Adapter 0"
Driver "fglrx"
BusID "......"
EndSection
qualquer linha que apague dá erro na consola quando se faz ati-config --initial

bem, parece um método fácil, no entanto como eu ainda estou a iniciar em linux, torna tudo mais complicado.
any help
 
No meu caso, quando o driver da ATI modificou o xorg.conf ele deixou lá as configurações do driver antigo, então meu arquivo ficou com duas seções Device:
#Section "Device"
# Identifier "device1"
# VendorName "ATI"
# BoardName "ATI Radeon (fglrx)"
# Driver "ati"
# Option "DPMS"
#EndSection
Section "Device"
Identifier "ATI Graphics Adapter 0"
Driver "fglrx"
BusID "PCI:1:5:0"
Option "OpenGLOverlay" "off"
Option "VideoOverlay" "on"
Option "DesktopSetup" "Clone"
Option "(null)"
Option "UseInternalAGPGART" "on"
EndSection

Note que a primeira delas (que está comentada) diz para usar o driver livre do Xorg:
# Driver "ati"

Com isso o Xorg iniciava com os drivers antigos e não funcionava a aceleração 3D. Ao comentar a seção Device antiga (como aparece acima com os # a frente das linhas) e deixar apenas a seção nova com Driver "fglrx" a aceleração 3D passou a funcionar normalmente. Por isso é importante comentar (ou apagar) as referências aos drivers antigos, pois me parece (nãp tenho certeza) que o Xorg carrega o primeiro driver válido que estiver listado, e no meu caso ele carregava do driver ati que não tem aceleração. Ao comentar a seção Device antiga ele passou a carregar o driver fglrx e tudo funcionou normalmente.
 
Estou a ver q percebes mt disso. Tb tenho tentado instalar o mandriva 2006 no meu ACER mas qd acaba a instalação e tento iniciá-lo, nd acontece, o ecrã ñ mostra qualquer imagem. Dizem-m q o problema é da mha ATI MOBILITY RADEON X700. Mas ñ sei bem. S puderes podes dizer algo para JorgeFSM@hotmail.com, ficava-t mt agradecido pq o linux é algo important para mim neste momento. Saudações
 
Queridos, gostaria de uma ajuda, tenho um laptop HP pavilion zv6100 com uma ATI Radeon X200 Xpress. Meu problema, que acredito ser tambem de outros amigos, nao consigo configurar essa placa de video de maneira alguma, ja li, ja vasculhei, ja fui atras de varias formas para poder configurar e nao tenho obtido exito, logo, estou recorrendo aos amigos que sao mais bem doutrinados do que eu nesse ramo para me ajudarem. Estou recorrendo aos universitarios para me ajudarem, logo, que puder me ajudar nesse intendo, queira, por gentileza, entrar em contato no mail: wildemarcosta@hotmail.com ou wildedemarcosta@msn.com. De ja agradeco a atencao de quem se propuser a isso.

Atenciosamente,

Wildemar.
 
Velho, acho que o artigo ficou defasado no meu caso, mas tenho um zv6000 Radeon Xpress 200M rodando no debian ETCH, MAS esse driver fodeu meu X, entao voltei pro MESA gostaria de saber se eh possivel uma ajuda: klederson em gmail ponto com Abraço!! E muito obrigado!
 
Tentei colocar o comentário abaixo no 1/2 bit, mas não consegui. Daí, estou enviando por aqui:

O produto Mac (o note, pelo menos) não é somente a somatória de hardware, software, design e experiência, apenas. É o esmêro, em tudo. Tenho uma porcaria de um note da Acer, que está com a capa toda trincada nas dobradiças (e olhe que tenho o cuidade de pegar no meio da capa ou nas 2 laterais, ao mesmo tempo). Está todo arranhado, no lugar que descanço as mãos (o relógio de pulso - alguns dizem que é o suor - deixa esta superfície em péssimo estado). A fonte é pesada, a bateria não aguenta o tempo estipulado pelo fabricante, etc.
O Mac não tem aspectos a serem criticados. É impecável em tudo. Inclusive na preocupação com permitir que o proprietário do note possa usa-lo no escuro (com teclas iluminadas).
É uma questão de respeito ao cliente, de procurar fazer tudo bem feito. E, isso, nem os Toshiba, nem os Sonny ou este Acer que estou usando (todos notes) tem. Nenhum dos fabricantes dos notes que conheço procurou se esmerar em tudo. Ou, se procurou, não conseguiu. Tem sempre algum senão.
Realmente: tem um público-alvo, que é aquele que percebe estas diferenças. E, não digam que isto não é importante, porque vou ficar vários dias sem o meu note, porque vai consertar a capa e a parte ao redor do teclado; porque o peso da fonte, somado ao do note, fica desconfortável; o espaço ocupado pelo dito cujo, de 15 pol. é maior que o ocupado pelo Mac de 17. E, por aí vai. Além, é lógico, que estas porcarias vivem travando e dando outros problemas.
Enfim, é o conjunto, é o todo. Aí, sim, o Mac é um note diferente dos outros. É imbatível! O resto, é bullshit.
 
Acabei de escrever um comentário sobre o Mac. Estou voltando, apenas para deixar um e-mail: pauloabd@hotmail.com
Grato
 
...e deixar todo o resto funcionando (leia-se Apache, PHP, firewall, anti-virus,


anti-virus?

anti-virus pra linux?

eu hein, é cada uma...
 
Este comentário foi removido por um administrador do blog.
 
ATI Radeon está ganhando grande prestígio em placas de video para notebook.

No Brasil cada vez mais está sendo reconhecida!

* Ricardo Braga é diretor da Notetops – Importadora de Notebooks (www.notetops.com.br) -, empresa especializada em importar e comercializar notebooks, e presta consultoria para diversos usuários, auxiliando-os a encontrarem melhor custo-benefício de acordo com suas profissões.
Mais Info: Notetops
 
CARA PRECISO DE SUA AJUDA URGENTE, LEIO SEUS POSTS E ACHEI UM SOBRE O ROTEADOR Q EU TENHO DA ENCORE E NAO CONSIGO DAR JEITO, FOI NO SITE DO MEIO-BIT; WIRELESS ENHWI-G, nao sei colocar senha para q os outros nao usem e na minha casa nao consigo estabelecer conexao, ela demora via cabo e wi-fi, se puder me ajudar por msn ou skype eu agradeço, te imploro cara... aki vai meu email esperando resposta: manaus.am.brasil@gmail.com
 
olha fiz tudo isso ai que vc postou so que no final coloquei xvinfo ATI Radeon AVIVO Video ta certo isso. eu tenho um problema estranho quando dou o fgl_glxgears o cubo gira mas se eu movo a janela o cubo fica no mesmo lugar se giro a face do cubo a janela nao vai junto e se eu ponho um fundo animado ele fica na frente de tudo e nao vejo mais nada alguem pode me ajudar
 
Postar um comentário

Links to this post:

Criar um link



<< Home

This page is powered by Blogger. Isn't yours?