Hardware

 Hardware: Dicas e Artigos


 

Hardware: Como alterar a BIOS para inicializar via Placa PCI/SATA

1. Introdução

Essa história se iniciou quando o controlador SATA integrado de uma "antiga" placa-mãe ASUS A8N-E parou de funcionar. Essa placa-mãe é para processadores AMD com soquete 939, e estava equipada com um Athlon 64 3000+, e 2GB de RAM DDR500 em dois módulos GSkill em dual channel. Ou seja, uma raridade nos dias de hoje - difícil para encontrar outra para substituição, a um preço acessível.

ASUS A8N-E
Placa-mãe ASUS A8N-E

Como os dois Díscos Rígidos (HD) eram SATA, não havia nem como inicializar o Sistema Operacional nessa máquina.

Foi aí que surgiu a ideia de adquirir uma placa PCI/SATA, para que pudesse substituir a função do controlador integrado ("on-board") e realizar o controle dos 2 HD's.

Placa PCI/SATA
Placa PCI/SATA, com o chipset VIA VT6421

Essa placa com chipset VIA VT6421 possui três portas SATA, sendo 1 externa, e mais uma porta IDE (PATA). Além disso, essa controladora pode formar um conjunto RAID com os discos rígidos, por hardware.

Após a conexão da placa num slot PCI livre e a interligação com os dois HD's SATA, ao ligar a máquina, os dois HD's não eram sequer reconhecidos pela BIOS da placa-mãe.

Depois de uma pesquisa na Internet, chegou-se a conclusão de que essa placa seria reconhecida como uma controladora SCSI pela placa-mãe, depois de configurar as opções de BOOT da BIOS para inicializar através de HD SCSI. Porém, surgiu um problema: a ASUS A8N-E não possui a opção de inicializar por HD SCSI nas configurações de BOOT da BIOS!

Mais pesquisas foram realizadas na Internet, até encontrar esse artigo: Getting Via VT6410/VT6420/VT6421 SATA-controllers to work.

Esse artigo sugere uma solução: incorporar o firmware da controladora PCI/SATA a um binário da BIOS da placa-mãe, e então, atualizar a BIOS, fazendo um "flash" dessa versão modificada para a placa-mãe.

Então, esse procedimento será detalhado a partir das próximas seções. Mas antes, alguns lembretes importantes:
 

A) CUIDADO! SÓ REALIZE ESSE PROCEDIMENTO SE SOUBER O QUE ESTÁ FAZENDO, POIS UM PROBLEMA NA MODIFICAÇÃO OU NA ATUALIZAÇÃO DA BIOS PODERÁ INUTILIZAR A PLACA-MÃE!

B) NÃO UTILIZE VERSÕES DE FIRMWARE OU DE BIOS INCOMPATÍVEIS COM AS PLACAS ENVOLVIDAS! ISSO PODERÁ DANIFICÁ-LAS PERMANENTEMENTE!

C) NÃO UTILIZE PROGRAMAS INCOMPATÍVEIS COM A BIOS DA PLACA-MÃE! ISSO PODERÁ INUTILIZÁ-LA!

D) NÃO HÁ NENHUMA GARANTIA NESSE PROCEDIMENTO, USE POR SUA CONTA E RISCO!  PLACAS INUTILIZADAS PODERÃO SER DOADAS PARA EMPRESAS DE RECICLAGEM NA SUA CIDADE...

 

2. Obtendo os programas necessários

Cada placa-mãe possui uma BIOS que pode ser desenvolvida por diferentes fabricantes, então primeiramente deve-se identificar o fabricante da BIOS da placa em questão.

  • Se a placa-mãe tiver uma BIOS Award (como é o caso da A8N-E), pode-se usar o programa CBROM para editar a BIOS. Utilizei a versão 1.9.8.
  • Se a placa-mãe tiver uma BIOS American Megatrends (AMI), pode-se usar o programa AMIBCP para editar a BIOS.
  • Se a placa-mãe tiver uma BIOS Phoenix, pode-se usar o programa Phoenix BIOS Editor 2.2.01 for Windows para editar a BIOS.

Além do programa para editar a BIOS, deve-se obter também o programa para atualizar a BIOS (fazer "flash")  na placa-mãe. Para isso, é recomendável fazer um download a partir do site do fabricante da placa-mãe (normalmente esse download é específico por modelo e chama-se "BIOS Utilities" no site).

No caso da A8N-E, o download foi realizado a partir do site da ASUS.

 

3. Obtendo os arquivos de BIOS e Firmware

O melhor é obter o arquivo de BIOS mais atualizado do fabricante para a placa-mãe. No caso da A8N-E, a última versão foi a 1013, obtido através do site da ASUS.

Já para a placa VT6421, o firmware foi obtido através desse link: VIA_RAID_V410a.zip.

O que realmente interessa dentro desse arquivo ZIP é o arquivo 6421V431.ROM que está na pasta BIOS/VT6421.

 

4. Modificando o arquivo da BIOS

Cada um dos programas de edição de BIOS (que depende do fabricante), opera de uma maneira diferente.

No caso do CBROM (utilizado para alterar a BIOS Award da A8N-E), deve-se invocar a seguinte linha de comando, a partir do Prompt de Comando do Windows (em outro computador, claro):
(NOTA: os arquivos CBROM198.EXE, A8NE1013.ROM e 6421V431.ROM deverão estar no mesmo diretório)

CBROM198.EXE A8NE1013.ROM /pci 6421V431.ROM checksum /err

Isso faz com que o arquivo de firmware da controladora PCI/SATA (6421V431.ROM) seja inserido como um módulo de driver PCI dentro do arquivo de BIOS da placa-mãe (A8NE1013.ROM), e o checksum seja recalculado.

 

5. Atualizando ("Flash") a BIOS modificada

O arquivo de BIOS modificado deverá ser "implantado" na placa-mãe onde reside a controladora VT6421, no caso aqui, a A8N-E.

Para realizar essa tarefa, foi criado um "disco de boot" do Windows 95 em um pen-drive, e copiados os arquivos A8NE1013.ROM e AWDFLASH.EXE (programa para fazer "flash" da BIOS na placa-mãe em questão) para a raiz do pen-drive.

Após configurar a BIOS da A8N-E para incializar pelo pen-drive, e ligar a máquina com o mesmo inserido, o prompt do Windows 95 surgiu. Foi digitado o comando: AWDFLASH A8NE1013.ROM, e seguidas as instruções apresentadas na tela.

Enquanto o programa atualiza a BIOS, O COMPUTADOR NÃO PODE SER DESLIGADO EM NENHUMA HIPÓTESE, sob pena de inutilizar a placa-mãe.

Após a atualização da BIOS, é necessário reiniciar o computador e reconfigurar a mesma, através do programa SETUP.

 

6. Resultado final

Após a reinicialização da máquina, já é exibido um prompt gerado a partir do firmware da VT6421, antes mesmo da tela inicial da BIOS. Nesse prompt, pode ser invocado um utilitário que permite a montagem dos discos em RAID.

Ao entrar no SETUP da BIOS, a opção dos discos SATA conectados à controladora já aparece no menu de BOOT, nomeados como discos SCSI. Basta selecioná-los para definir a ordem de inicialização.

 

7. Conclusão

Seguindo esse processo (que não é nada trivial), foi possível inserir um módulo de firmware de uma placa específica dentro de um arquivo de BIOS de uma placa-mãe, promovendo o funcionamento dessa placa, mesmo sem o suporte nativo pela BIOS original.

 

Robson Martins -  nov/2011
robson@robsonmartins.com
http://www.robsonmartins.com

 

Os autores dos projetos não se responsabilizam por danos pessoais ou a equipamentos, provocados por mau uso das informações aqui contidas ou por imperícia dos usuários.

Qualquer projeto que envolva componentes eletrônicos deve ser realizado somente por pessoas capacitadas e conscientes dos riscos de segurança envolvidos e de como preveni-los (como choques elétricos, incêndio, explosões, queimaduras, danos a equipamentos, etc.).

As informações aqui descritas são oferecidas sem nenhuma garantia e nem suporte técnico por parte dos autores e fabricantes citados, e devem ser usadas somente para fins educacionais/didáticos, sem nenhum compromisso com aplicações críticas (suporte de vida, por exemplo).