Logo Hardware.com.br
lockedEste tópico está fechado, você não pode enviar novas respostas.
twr70
twr70 Zumbi Registrado
3.9K Mensagens 729 Curtidas

locked [Dica] Dica: Mudando de IDE para AHCI no chip AMD/ATI SB700, sem reinstalar o XP

#1 Por twr70 13/09/2009 - 14:47
Esta dica “ensina” mudar a controladora Sata do modo IDE/Sata para AHCI quando o Windows XP 32 bits estiver instalado em placas-mãe que utilizam a ponte sul AMD/ATI SB700 (talvez sirva para outros chips p. ex. SB750, mas não posso ter certeza pois não testei no mesmo).

Esta mudança simples (feita no Setup da placa-mãe), faz com que o XP deixe de inicializar, com os procedimentos abaixo, você poderá utilizar a controladora Sata no modo (AHCI)!

Criei este tópico, pois encontrei pouca informação sobre este problema na net, em se tratando de chips AMD/ATI; aqui no fórum existe um tópico (muito bom por sinal) sobre o assunto, mas aplica-se apenas aos chips Intel. O problema todo começa quando da instalação do XP, a controladora Sata não está configurada para o modo AHCI no Setup, muitas placas utilizam-se do modo IDE como default, e por falta de conhecimento ou atenção não alteramos esta config antes da instalação.

A idéia é reconhecer o Hardware através do Linux, depois alterar o registro do XP de modo que ele inicialize com a controladora Sata configurada para o modo AHCI, poupando o trabalho de reinstalar tudo (S.O., Drivers, aplicativos, etc)....

Para os “preguiçosos” como eu, no final do post existe um método “alternativo”

Alertas
!!!
a. Se você nem sabe do que eu estou falando, pesquise antes de qualquer alteração!!!

b. Este procedimento envolve alteração do registro do Windows, caso você faça algo errado, poderá perder a instalação do XP (resultando em necessidade de reinstalar o Sistema), fica por sua conta e risco!!!

c. Entenda que isso é aplicável quando o Windows XP 32 bits foi instalado enquanto a controladora Sata estava em modo IDE, no Vista/Seven o procedimento não é necessário (leia o link abaixo); já para o Windows XP 64 bits pode-se fazer uma analogia.

http://support.microsoft.com/?scid=kb%3Bpt-br%3B922976&x=6&y=11

Mãos à obra...

Se voce tiver dual boot: XP/Vista ou XP/Seven:
Configure a controladora Sata para modo AHCI na BIOS e dê boot no Vista ou Seven, basicamente precisamos descobrir a id da controladora Sata/Raid no modo AHCI, isso poderia ser feito através do Everest dentro do Vista ou Seven...

Caso não tenha, existe a opção do Linux, como explico logo abaixo.

Método “Principal”

Linux

1. Dê boot no seu PC com um linux live CD ou live USB (é necessário que seja uma distro recente) enquanto a controladora Sata está configurada no modo AHCI no setup.

2. No linux, através da linha de comando, execute:
lspci -vvnn | less

Deverão ser listados todos os dispositivos PCI do micro (como na imagem abaixo).
Caso contrário, tente executá-lo como root.

Imagem

3. Localize a linha referente à sua controladora Sata na saída do comando (quadro verde, na imagem acima), anote o Vendor ID, Device ID e Subsystem. Exemplo:
Vendor ID 1002
Device ID 4391
Subsystem 1043:82ef

Windows XP

4. Agora reinicie e vá para o Setup, mude a controladora Sata para o modo IDE, assim o Windows XP carregará normalmente.

5. Faça o download do driver da controladora Sata, descompacte o pacote, você vai procurar um arquivo chamado txtsetup.oem, encontrando, abra ele no bloco de notas, você vai encontrar uma linha que diz:

id = "PCI\VEN_1002&DEV_4391&SUBSYS_82EF1043", "ahcix86"

Como você pode ver, esta linha confirma que o dispositivo vai trabalhar com esse driver.

Lembrando que:
ahcix86 – driver para XP 32 bits
ahcix64 – driver para XP 64 bits

Observe que o subsistema é número 82EF1043 no Windows, porém no linux ele foi apresentado como 1043:82ef

Obs: Caso não localize o txtsetup.oem, pode confirmar através do ahcix86.inf

6. Agora, copie o seguinte texto (em azul) no bloco de notas, salve ele como file.reg, altere o Vendor ID, Device ID e Subsystem para o seu “número” (na forma apresentada no txtsetup.oem), atenção para não modificar a estrutura do código alfanumérico (caso prefira, voce pode baixar file.reg dos anexos).


[code=rich]
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_1002&dev_4391&subsys_82EF1043]

"Service"="ahcix86"

"ClassGUID"="{4D36E97B-E325-11CE-BFC1-08002BE10318}"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ahcix86]

"Type"=dword:00000001

"Start"=dword:00000000

"Group"="SCSI miniport"

"ErrorControl"=dword:00000001

"ImagePath"="system32\\drivers\\ahcix86.sys"

"tag"=dword:00000019

"DisplayName"="AMD AHCI Compatible RAID Controller"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ahcix86\Parameters\PnpInterface]

"5"=dword:0x00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ahcix86\Settings\CAM]

"EnableALPEDisableHotplug"=dword:0

"EnableCCC"=dword:1

"CCCTimeoutValue"=dword:10

"CCCCompletionValue"=dword:32

"NCQEnableDiskIDBits"=dword:0

"EnableHIPM"=dword:0

"EnableDIPM"=dword:0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ahcix86\Enum]

"Count"=dword:00000001

"NextInstance"=dword:00000001<
[/code]7. Depois que você salvou o arquivo com as devidas alterações, dê um duplo-clique nele (confirme “sim”) para inserir as entradas no registro.

8. Copie o arquivo ahcix86.sys (encontrado no driver da controladora Sata que voce baixou) para a pasta c:\windows\system32\drivers

9. Reinicie o Windows, entre no Setup e mude para AHCI, continue carregando o Windows. Se tudo estiver certo, o XP vai carregar normalmente, talvez ele peça o caminho para a pasta onde estiver o driver para finalizar o instalação do mesmo.

Se acontecer algum problema e o boot não subir, provavelmente você errou na alteração do código acima ou o ahcix86.sys correto não está em c:\windows\system32\drivers, entre na BIOS e mude para IDE novamente para carregar o Windows e tentar novamente.

Método “Alternativo” (se a preguiça bater)

Caso você não possua Linux live CD ou live USB, Windows Vista/Seven instalado, estou disponibilizando em anexo o “AMD ATI SB7XX AHCIa.reg” (zipado) ele substitui os passos 1,2,3,4,5,6, porém por ser um “genérico” ele vai criar 5 entradas no seu registro sendo 4 desnecessárias, em:

“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase\”

Essas entradas representam praticamente 100% do hardware suportado pelo driver “9-5_xp32-64_raid (3.100.1540.86/32bits)” disponibilizado no site da AMD/ATI; na verdade existem mais de 220 subsystem neste driver, mas o "genérico" lida apenas com o Vendor ID e o Device ID reduzindo assim o número de entradas "falsas" no registro.

No passo 7, dê um duplo-clique no AMD ATI SB7XX AHCIa.reg (anexo), confirme “sim” para inserir as entradas no registro, pois neste caso você não terá o “file.reg”.
Os passos 8 e 9 continuam inalterados.

Boa sorte

Anexos

twr70
twr70 Zumbi Registrado
3.9K Mensagens 729 Curtidas
#3 Por twr70
20/09/2009 - 15:14
FireMax disse:
O problema é que o modo AHCI disabilita o SMART do HD, pelo menos na M3A78.


Infelizmente isso ocorre (parece ser limitação do chip/driver), na imagem abaixo (AMD RAIDXpert na minha M3A78-EM), voce pode ver "Status do S.M.A.R.T", mas só indica um "Saudável" sem outros detalhes...
Entretanto, por outro lado o AHCI Habilita o NCQ e o HotPlug, tudo na vida tem um lado bom e outro não tão bom!


Imagem

Abraços
"Nenhuma herança é tão rica quanto a honestidade". Loir Dreveck

Se der tudo de si, já saíra ganhando!
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal