domingo, 27 de fevereiro de 2011

sexta-feira, 25 de fevereiro de 2011

Aplicar um DSDT modificado e recompilar o KERNEL no Debian 6.0 (Squeeze)

Encontrando uma parte aqui, outra ali... um erro aqui, outro ali... enfim, consegui
juntar informações de duas ou três documentações encontradas no Google e compilar
o kernel.

Meu interesse nessa compilação é aplicar o DSDT corrigido para o meu netbook (Clique aqui para aprender como criar um novo DSDT) que, em outras versões do Debian, era bastante simples - bastava copiar o novo DSDT.aml para o diretorio /etc/initramfs-tools/ e gerar um novo initramfs pelo comando update-initramfs -c -u -k all mas a equipe de desenvolvedores do Debian resolveu desativar essa facilidade por questões de segurança.

Já falei demais, vamos aprender a compilar o kernel

Obs: Provavelmente existem outros métodos para isso mas só testei esse e deu certo. Todos os comandos abaixo devem ser executados como root.

Passo 1 - Instale as dependências e a fonte (source) do kernel:
apt-get install kernel-package fakeroot build-essential devscripts
apt-get build-dep linux-2.6
apt-get source linux-2.6



Passo 2 - Copie o arquivo /boot/config-2.6.32-5-686 para a pasta onde foi extraida a fonte (source) do kernel - provavelmente /root/linux-2.6-2.6.32 - com o nome ".config" através do comando abaixo:
cp /boot/config-2.6.32-5-686 /root/linux-2.6-2.6.32/.config


Passo 3 - Va para a pasta com a fonte (source) do kernel citada acima e edite o arquivo 
.config
cd /root/linux-2.6-2.6.32
nano -w .config

Procure pela linha comentada
# CONFIG_ACPI_CUSTOM_DSDT not set yet.

Substitua pelas linhas abaixo
CONFIG_ACPI_CUSTOM_DSDT=yCONFIG_ACPI_CUSTOM_DSDT_FILE="/caminho/do/arquivo/dsdt.hex"

No meu caso o arquivo estava em /root/dsdt.hex

Salve a alteração e feche o editor de texto


Passo 4 - Edite o changelog com o comando dch --local +dsdt - será aberto o editor
de texto padrão (no meu caso o nano). Apenas salve e feche o editor.


Passo 5 - Execute o comando para compilar o kernel
Dentro da pasta com a fonte (source) do kernel execute o comando abaixo:
make-kpkg --append-to-version "-sufixo" --revision "revisao" --us --uc --initrd kernel_image kernel_headers

no meu caso:
make-kpkg --append-to-version "-dsdt" --revision "1" --us --uc --initrd kernel_image kernel_headers


Passo 6 - Após uma longa espera (dependendo da configuração de seu computador), volte ao diretorio do root e instale os dois pacotes .deb que foram gerados. No meu caso o linux-headers-2.6.32-dsdt_1_i386.deb e o linux-image-2.6.32-dsdt_1_i386.deb. Para instala-los utilize o comando dpkg -i linux*.deb


Passo 7 - Para finalizar execute o comando update-initramfs -c -u -k all e reinicie o PC. Lembre-se de escolher o novo kernel na tela do grub.


Fontes:
Share:

Gerar uma nova tabela DSDT

Beleza, pessoal?

Segundo o site acpi.sourceforge.net, DSDT significa Differentiated System Description Table, o que no português deve ser algo parecido com Tabela Diferenciada de Descrição de Sistema. Esta tabela contém o Bloco de Definição Diferenciada, que se encarrega de fornecer a informação e configuração a respeito da base do sistema. Essas informações e configurações são sempre inseridas ao ACPI durante o carregamento do Sistema Operacional. Infelizmente, muitos fabricantes e redistribuidores de hardware não são capazes de fornecer essas tabelas de forma adequada, 100% funcionais (nem mesmo são membros da ACPI SIG). Por isso existe a necessidade de PATCHES para essas tabelas, desenvolvidas por nós, simples usuários curiosos e com tempo sobrando, e por desenvolvedores profissionais.

Eu tenho um netbook Samsung Go (N310) que aparentemente roda bem qualquer sistema operacional, mas nem tudo são flores. O DSDT original não me atrapalhava, mas como forma de aprendizado corrigi os dois únicos erros do DSDT e as mensagens de erros e incosistências sumiram do processo de boot do Debian =)

EXECUTE OS COMANDOS ABAIXO COMO ROOT

Passo 1 - Instale o ACPI Source Language compiler/decompiler conhecido iasl
aptitude install iasl


Passo 2 - Extraia o dsdt original com o comando cat /proc/acpi/dsdt > ~/dsdt.dat

Passo 3 - Atraves do comando abaixo você irá "descompilar" o dsdt.dat (aml - binário) para o dsdt.dsl (código fonte)
iasl -d dsdt.dat

Passo 4 - Observando que agora existem DOIS arquivos (dsdt.dat e dsdt.dsl) rode o comando abaixo para recompilar (de código fonte DSL para binário AML) e verificar os possíveis ERROS (Errors) e os AVISOS (Warnings)
iasl -tc dsdt.dsl

Passo 5 - Agora existem QUATRO arquivos: dsdt.dat, dsdt.hex, dsdt.aml e dsdt.dsl e, no meu caso, apareceram DOIS erros (linhas 1375 e 1382) relacionados ao Length.



Intel ACPI Component Architecture
ASL Optimizing Compiler version 20100528 [Jul 2 2010]
Copyright (c) 2000 - 2010 Intel Corporation
Supports ACPI Specification Revision 4.0a

dsdt.dsl 1375: 0x00000000, // Length
Error 4122 - ^ Invalid combination of Length and Min/Max fixed flags

dsdt.dsl 1382: 0x00000000, // Length
Error 4122 - ^ Invalid combination of Length and Min/Max fixed flags

ASL Input: dsdt.dsl - 5184 lines, 169320 bytes, 1819 keywords
Compilation complete. 2 Errors, 0 Warnings, 0 Remarks, 692 Optimizations



Passo 6 - Abra o dsdt.dsl pelo editor de texto de sua preferência e vá até a linha referenciada pelo compilador.

Linha 1375

0x00000000, // Granularity
0x00000000, // Range Minimum
0xFEBFFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00000000, // Length
,, _Y0E, AddressRangeMemory, TypeStatic)


Passo 7 - Agora vem a correção: Va no google, e subtraia o Range Maximun pelo Range Minimum + 1, ou seja,

(0xFEBFFFFF - 0x00000000) + 1

O resultado é 0xFEC00000

Pegue o resultado e coloque em Length. Ficará assim:

0x00000000, // Granularity
0x00000000, // Range Minimum
0xFEBFFFFF, // Range Maximum
0x00000000, // Translation Offset
0xFEC00000, // Length
,, _Y0E, AddressRangeMemory, TypeStatic)


Passo 8 - Repita o mesmo processo nas outras linhas com erro (no meu caso a 1382) e salve o arquivo. Execute novamente o comando iasl -tc dsdt.dsl

Passo 9 - Se estiver tudo certo, sem avisos de erro (Os WARNINGS não precisam de tanta preocupação dependendo do caso), guarde os arquivos em um diretório seguro,

Passo 10 - Siga para este post para integrar o arquivo dsdt.hex ao kernel.

Fontes:
http://acpi.sourceforge.net/dsdt/index.php
http://ohioloco.ubuntuforums.org/showthread.php?t=1036051&page=52
http://ubuntuforums.org/showthread.php?t=1036051
http://wiki.debian.org/OverridingDSDT
Share:

domingo, 20 de fevereiro de 2011

Boot insistente via rede (PXE) no HP G42-212BR / COMPAQ CQ42-212BR

Pessoal, vou postar uma dica fornecida pelo usuário wdkushler no fórum da HP relacionado ao problema de boot insistente via rede (PXE) no notebook HP G42-212BR:



Em relação ao seu problema item 1.
Tive o mesmo problema aqui e foi resolvido pelo pessoal do chat online da HP.
Eles enviaram um arquivo chamado ax35_WIN_de.exe para o meu email.
O procedimento é executar o programa e reiniciar a máquina e o problema desaparece !!!
Agora o meu Compaq CQ42-212BR está perfeito !!!
Use o link: http://welcome.hp.com/country/br/pt/contact/email_1.html
Eles vão pedir o P/N (product number) e o S/N (serial number) e vc já pede o arquivo acima citado para acelerar o atendimento.


Para quem não sabe, alguns modelos de notebooks HP estão com um probleminha na BIOS que simplesmente não permite que o boot via rede (PXE) seja desabilitado, e pior, esse recurso fica como primeira opção de boot (prioridade ACIMA do HD). Na prática, toda vez que você liga o notebook o mesmo tentará dar boot via rede e só depois de alguns segundos o boot pelo HD é executado. Se um cabo de rede estiver conectado nesse momento, você é forçado a reiniciar o notebook pressionando ctrl + alt + del, retirar o cabo e daí iniciar normalmente. Que chato isso hein...

Abraços!


Update: Devido ao número de pessoas que passam por este mesmo problema, seguindo a idéia do Daniel (no comentário abaixo), postei o patch no 4shared.
Basta descompacta-lo e executar.
Link: http://www.4shared.com/rar/RCblE6BF/ax35_WIN_de.html



Update 2: Tive um problema na minha conta do 4shared. O arquivo foi disponibilizado no link abaixo, pelo usuário Marcio. Obrigado Marcio, por compartilhar o link conosco.
Link: http://www.sendspace.com/file/ssg0ai


Update 3: Novo link (Agosto/2019): O arquivo foi disponibilizado novamente por nossos amigos Marcio e Daniela Biazus. Muito obrigado pela contribuição com o blog e por ajudar as pessoas que necessitam do patch.
Link: https://www.4shared.com/rar/IwCPVuxrfi/ax35_WIN_de.html


Update 4: Novo link (Fevereiro/2021): Nosso amigo Fernando Soares sinalizou sobre a indisponibilidade do link anterior.
Link: https://bit.ly/3rswZOM


ATENÇÃO: Este PATCH foi desenvolvido pela própria HP e distribuido pelo suporte técnico da fabricante. Não me responsabilizo por eventuais erros. TODOS os usuários que já aplicaram este patch não tiveram problemas e resolveram o bug citado acima.
Share:

Antes do review do samsung, HACKINTOSH AGAIN!

Ola pessoal.

Antes do meu review básico sobre o SAMSUNG N310 ( ainda não fiz por preguiça :x ) quero apenas, rapidinho, falar sobre HACKINTOSH novamente. Eis um assunto que me interessa muito! Pelo menos enquanto eu não tiver condições financeiras de ter um Mac de verdade...

Hackintosh, para quem não sabe, é o conjunto de processos e ferramentas utilizados para instalar o sistema operacional da maçã em PCs comuns. Algo que, algumas vezes, é bastante trabalhoso. Em outros casos dá pra fazer sem muito esforço. Leitura é a parte mais trabalhosa. Se não gosta de ler, nem tem paciência para várias tentativas, realmente hackintosh é algo que você nunca deve tentar. ;)

A primeira vez que instalei o Mac OS X 10.5.8 foi em um PC Desktop com processador AMD Athlon 64 3500+ (socket 939 - 1a geração - sem a instrução SSE3) com 1GB RAM, em uma placa-mãe da MSI Platinum (chipset NFORCE 3, top de linha naquela época). Rodava perfeito, até o dia que o processador queimou. O 2o processador a queimar nessa placa.

Após esse prejuízo de dois processadores queimados aposentei a placa-mãe.

Passado algum tempo estou novamente utilizando o Mac OS X 10.5.8 (versão já considerada antiga) no netbook Samsung N310. Eu não tenho ainda muito conhecimento a respeito de hackintosh, por isso utilizo "distros" (sim, DISTRO não é só pra LINUX), que nada mais é do que uma versão elaborada, modificada, hackeada, pronta pra uso. A que mais me identifiquei foi a iDeneb, e em segundo lugar o iAtkos. O iAtkos demora demais para instalar... e o processo de hackintosh já é chato, depois de tantas tentativas torna-se inviável.

Em breve (se minha conexão com a internet permitir) testarei a versão RETAIL do Mac OS X 10.6 Snow Leopard, que é a versão oficial atualmente.

Versão RETAIL é aquela vendida nas Apple Store, a cópia fiel da mídia original. Dizem que nem se compara com as distros em estabilidade e desempenho, porém exige muito trabalho para instalar.
Share:

quarta-feira, 16 de fevereiro de 2011

Descaso da HP... mudei para a SAMSUNG!

E ai galera...

Venho informar que não suportei a demora e o descaso por parte da HP em resolver os problemas dos consumidores de seus produtos. Eu não sei o que está acontecendo com esta que é uma das líderes mundiais em fabricação de notebooks de qualidade. Tantos bugs na BIOS (que é o coração de qualquer placa-mãe) causando transtornos que vão desde simples incômodos (quedas de conexão wireless, boot insistente via rede e impossibilidade de dar boot via dispositivos usb) até danos físicos que necessitam de assistência técnica (aquecimento exagerado devido ao mal funcionamento do cooler por causa de um defeito na BIOS).

Acho que nós, consumidores domésticos e executivos, não merecemos passar por isso. Um problema na BIOS é algo relativamente fácil de se resolver quando se trata de uma empresa como a HP, mas, de fato, parece não existir esse interesse da parte da mesma.

Por isso venho comunicar que desisti e adquiri um NETBOOK da SAMSUNG - SAMSUNG GO N310.
Farei um review bem básico sobre esse Netbook no próximo post. Adianto que o mesmo possui um excelente design e desempenho.

Desejo, de verdade, força ao fórum da HP para que possa resolver os problemas dos usuários que a HP não se interessa em resolver (não respondem nem aos e-mails).

Abraço a todos!
Share: