El Mini-C�mo de Ultra-DMA en Linux
Brion Vibber,
[email protected]
v2.0, 7 de Agosto 1998
Este documento pretende explicar c�mo usar los discos duros con inter�
faces Ultra-DMA, tambi�n conocidas como Ultra-ATA y Ultra33, en Linux.
La �ltima versi�n de este documento puede encontrarse en formato HTML
en
http://pobox.com/~brion/linux/Ultra-DMA.html.
______________________________________________________________________
�ndice general
1. Introducci�n
1.1 Renuncia de responsabilidad
1.2 Reconocimientos
1.3 Historia del Documento
1.4 Copias
2. �Qu� es Ultra-DMA y para qu� lo quiero?
2.1 IDE, EIDE, y ATAPI
2.2 Bus Master DMA
2.3 Ultra-DMA o Ultra-ATA o Ultra33 o...
2.4 �Exactamente c�mo de ``Ultra'' es?
2.5 UDMA comparado con SCSI
3. Usando su disco duro UDMA con una interfaz EIDE
4. Usando sus discos duros con una interfaz UDMA
5. Interfaces UDMA PCI externas
5.1 Promise Ultra33
5.2 Artop ATP850UF
5.3 A�adiendo ficheros de dispositivo
6. Interfaces UDMA en placa
6.1 Intel FX, HX, VX, TX, y LX
6.2 El VIA VP2 y Chipsets relacionados
6.3 TX Pro y otras placas ``Pro''
7. UDMA-Generic (UDMA gen�rico)
8. Activando y desactivando el UDMA
8.1 Usando los par�metros de arranque del n�cleo
8.2 Usando hdparm
9. Problemas
9.1 La Lista Negra del UDMA
9.2 �Va usted demasiado deprisa?
9.3 �Su BIOS est� actualizada?
9.4 �Si todav�a no puede hacer que funcione!
10. Si tiene alguna informaci�n sobre UDMA que no aparezca en este documento...
______________________________________________________________________
11.. IInnttrroodduuccccii��nn
Este documento pretende explicar c�mo usar los discos duros con
interfaces Ultra-DMA, tambi�n conocidas como Ultra-ATA y Ultra33, en
Linux. A pesar de que en algunos casos no encierran dificultad, pueden
hacerse algunas modificaciones con el fin de aumentar las
prestaciones. Adem�s, comprobar� que, en ocasiones, el uso de estos
dispositivos no es tan trivial.
11..11.. RReennuunncciiaa ddee rreessppoonnssaabbiilliiddaadd
La informaci�n que contiene este documento es, hasta donde llega mi
conocimiento, correcta, por lo que deber�a funcionar. De todas
maneras, a parte de la posible existencia de errores ortogr�ficos,
cabe la posibilidad de que lo descrito en este documento no funcione
en su sistema, debido a alg�n tipo de incompatibilidad. Es por ello
que le recomiendo que, antes de comenzar a manipular su disco duro,
��HHAAGGAA CCOOPPIIAASS DDEE SSEEGGUURRIIDDAADD DDEE TTOODDOO AAQQUUEELLLLOO QQUUEE QQUUIIEERRAA GGUUAARRDDAARR!! Si no
acostumbra a hacerlas, esta es una buena ocasi�n para comenzar.
11..22.. RReeccoonnoocciimmiieennttooss
Michel Aubry <mailto:
[email protected]> - Parche UDMA para VIA en
<=2.0.33 y m�s informaci�n, Gran Parche Unificado de UDMA para 2.0.34+
Andrew Balsa <mailto:
[email protected]> - Provey� informaci�n
general sobre UDMA y el parche udma-generic para Intel TX, SiS, y VP1
en <=2.0.33; tambi�n Gran Parche Unificado de UDMA para 2.0.34+
Maxime Baudin - Traducci�n al Franc�s
Bokonon - ``Controladora'' vs. ``interfaz''
John G. <mailto:
[email protected]> - Parche para VIA VP2 en <=2.0.33 e
informaci�n
Martin Gaitan - Instalaci�n de ide0/ide1 para Promise Ultra33
Andre M. Hedrick <mailto:
[email protected]> - Gran
Parche Unificado de UDMA para 2.0.34, Artop ATP850UF
Norman Jacobowitz - Me pidi� a�adir informaci�n sobre VP3
John Levon - Informaci�n sobre la TX Pro mobos
Peter Monta - Informaci�n sobre el uso de dos tarjetas Ultra33
Masayoshi Nakano - Traducci�n al Japon�s
Gadi Oxman <mailto:
[email protected]> - El parche de la Promise
Ultra33 para <=2.0.34 y n�meros secretos para el truco
Andy Pearce - Sugiri� a�adir informaci�n de los ficheros de
dispositivo adicionales para hde-h
Andrei Pitis <mailto:
[email protected]> - Parche para LILO
Brion Vibber <mailto:
[email protected]> - Este documento
11..33.. HHiissttoorriiaa ddeell DDooccuummeennttoo
v2.0, 7 Agosto 1998: actualizaci�n y total reestructuraci�n de la
informaci�n sobre interfaces de la placa madre y tarjetas externas,
informaci�n sobre el Gran Parche Unificado de UDMA (una parte del
parche Jumbo) para 2.0.35, cr�ditos en orden alfab�tico por el
apellido, sustituci�n del t�rmino ``controladora'' por ``interfaz''
(m�s correcto desde el punto de vista t�cnico), nueva informaci�n
sobre activaci�n/desactivaci�n de UDMA, a�adida una lista de problemas
�y m�s cosas!
v1.45, 6 Julio 1998: peque�as actualizaciones, parche de la Promise
Ultra33 para el n�cleo 2.0.34 en la Red Hat 5.1 y parche que permite a
LILO arrancar desde interfaces PCI como la Promise Ultra33.
v1.41, 3 Mayo 1998: arreglados unos cuantos errores ortogr�ficos y
presencia de los traductores en los cr�ditos.
v1.4, 28 Abril 1998: parche UDMA-Generic, nueva informaci�n general y
aparici�n de una secci�n sobre copias.
v1.3, 5 Marzo 1998: informaci�n sobre VIA VP3, mejores instrucciones
de ``parcheado'' y enlace al parche de Promise m�s reciente.
v1.2, 27 Enero 1998: informaci�n adicional del truco para la Promise.
v1.1, 21 Enero 1998: nueva informaci�n acerca del chipset VIA,
instalaci�n de la Promise Ultra33 y activaci�n de los modos de
transferencia Bus Master y UDMA.
v1.0, 19 Enero 1998: primera versi�n escrita en SGML. Bastante
completa.
11..44.. CCooppiiaass
Este documento puede ser copiado libremente y/o distribuido para
prop�sitos informativos. No puede ser modificado, excepto para cambio
de formato, sin la autorizaci�n del autor. Si desea traducir este
documento a otro idioma lo puede hacer pero, de todas formas, deber�
contactar primero con el autor para que las versiones actualizadas
puedan ser enviadas a los traductores, as� como al Linux Documentation
Project.
22.. ��QQuu�� eess UUllttrraa--DDMMAA yy ppaarraa qquu�� lloo qquuiieerroo??
Aqu� tiene una breve descripci�n de las tecnolog�as de dispositivos
basadas en IDE:
22..11.. IIDDEE,, EEIIDDEE,, yy AATTAAPPII
Estas son tecnolog�as antiguas. La mayor�a de los discos duros e
interfaces de disco que puede comprar, o que posiblemente ya est�
usando, son de tipo EIDE. No obstante, abundan cada vez m�s aquellos
discos duros que cuentan con una interfaz UDMA.
22..22.. BBuuss MMaasstteerr DDMMAA
El Bus Master DMA es una tecnolog�a para incrementar la velocidad de
las transferencias de datos en los discos duros. Dicha tecnolog�a
requiere soporte de la placa madre y la BIOS, y alg�n soporte
adicional por parte del disco.
Puede aprender m�s sobre el tema en
http://developer.intel.com/design/pcisets/busmastr/FAQs.htm.
22..33.. UUllttrraa--DDMMAA oo UUllttrraa--AATTAA oo UUllttrraa3333 oo......
El Ultra-DMA tiene muchos nombres, pero nosotros lo denotaremos aqu�
por UDMA.
UDMA es una tecnolog�a m�s avanzada y que provee unas transferencias
mucho m�s r�pidas (hasta 33.3 MB/s) que la EIDE, siendo su precio m�s
reducido que el los dispositivos SCSI. Muchos de los nuevos
ordenadores incorporan grandes discos e interfaces UDMA. Adem�s, es
posible a�adir una tarjeta de interfaz UDMA (como la Promise Ultra33)
a un sistema ya existente, pudiendo aumentar la velocidad de
transferencia de sus discos duros incluso si estos no son UDMA.
Puede aprender m�s detalles sobre UDMA en
http://www.quantum.com/src/whitepapers/ultraata/
N�tese que la longitud de cable para la conexi�n del UDMA debe ser
menor que la de un cable para DMA normal. Lo ideal es que est� por
debajo de los 30 cm (12").
22..44.. ��EExxaaccttaammeennttee cc��mmoo ddee ````UUllttrraa'''' eess??
Antes de ir m�s lejos, aclaremos una equivocaci�n. Los 33 MB/seg son
la ttaassaa ddee ttrraannssffeerreenncciiaa iinnssttaanntt��nneeaa (burst transfer rate), y es algo
que no ver� muy frecuentemente. Para explicarlo, aqu� hay un peque�o
texto del UDMA.txt (udma-generic):
Las tasas de transferencia instant�nea se supone que van
desde los 16,6MB/s (modo PIO 4) a 16,6MB/s (DMA modo 2) hasta 33MB/s
(UDMA). En su parche contra el n�cleo 2.1.55, Kim-Hoe Pang realmente
analiz� las tasas de transferencia instant�nea en UDMA con un analizador
l�gico: 60ns/palabra, lo que se traslada a 33MB/s.
N�tese que las tasas de transferencia instant�nea s�lo afectan a las
transferencias de datos desde/hacia la cach� del disco EIDE (476kB para
el disco de 6,4GB de IBM), y no son particularmente relevantes para la
mayor�a de los usuarios de Linux.
El n�cleo de Linux usa tanta memoria RAM como es posible para hacer de
cach� en los accesos a los datos del disco duro, y si los datos no est�n
en la cach� del n�cleo, es improbable que est�n en la cach� del disco duro
(mucho m�s peque�a).
Mucho m�s relevante es la ttaassaa ddee ttrraannssffeerreenncciiaa ssoosstteenniiddaa (sustained
transfer rate), que es la velocidad a la cual los datos pueden ser
transferidos desde el disco a la memoria principal, donde pueden
usarse. Una manera f�cil de medir esta tasa es usar hdparm, por
ejemplo ``hdparm -Tt /dev/hda'' para el primer dispositivo IDE.
Aqu� hay algunos datos recogidos despu�s de pruebas muy extensas, usando
la utilidad hdparm (escrita por Mark Lord):
Tasas de transferencia bajo Linux con PIO modo 4: +/- 5,2MB/s
Tasas de transferencia bajo Linux con DMA modo 2: +/- 7,2MB/s
Tasas de transferencia bajo Linux con UDMA modo 2: +/- 9,8MB/s
Como puede comprobar, UDMA es todav�a casi el doble de r�pido que un
EIDE normal y significativamente m�s r�pido que el bus mastering DMA
normal.
22..55.. UUDDMMAA ccoommppaarraaddoo ccoonn SSCCSSII
No tengo grandes n�meros para ofrecerle, pero el consenso generalizado
es que el SCSI de alto nivel ofrece mejores prestaciones que el UDMA.
De todas formas, si ha echado un vistazo �ltimamente a los precios de
los discos duros, habr� notado que tienden a ser mucho m�s baratos. La
relaci�n prestaciones/precio favorece al UDMA en la mayor�a de los
casos.
33.. UUssaannddoo ssuu ddiissccoo dduurroo UUDDMMAA ccoonn uunnaa iinntteerrffaazz EEIIDDEE
Es f�cil de hacer. Dado que todos los discos UDMA son completamente
compatibles con EIDE, s�lo tiene que enchufar su disco UDMA de la
misma forma que sus antiguos discos, y Linux no deber�a tener ning�n
problema en detectarlo y utilizarlo. De todas maneras, estar�
limitado, por supuesto, a la menor velocidad del EIDE.
44.. UUssaannddoo ssuuss ddiissccooss dduurrooss ccoonn uunnaa iinntteerrffaazz UUDDMMAA
Hay buenas y malas noticias. Las buenas noticias son que una interfaz
UDMA puede ser usado tanto con discos duros UDMA como con los antiguos
EIDE, y ser� mucho m�s r�pido que una interfaz de este tipo.
Las malas noticias son que los n�cleos actuales (como el 2.0.35) no
soportan la tecnolog�a UDMA de una forma �ptima, aunque existen ya
algunos parches para ellos. Por su parte, los n�cleos en desarrollo
(el actual es el 2.1.114) disponen de un soporte m�s avanzado para
UDMA. Por desgracia, algunas tarjetas de expansi�n con interfaces
UDMA necesitan, o bien un parche, o alg�n tipo de truco para poder ser
usadas. Es por eso que este documento existe: para explicar c�mo
obtener estos parches y c�mo aplicar estos trucos.
55.. IInntteerrffaacceess UUDDMMAA PPCCII eexxtteerrnnaass
Estas son interfaces UDMA sobre tarjetas PCI que pueden ser usadas
para a�adir esta capacidad a un ordenador existente sin tener que
reemplazar la placa madre o para a�adir soporte para cuatro
dispositivos adicionales a un ordenador que tiene ocupados todos los
que ofrece su placa madre. Pueden encontrarse preinstaladas en
algunos ordenadores, especialmente en m�quinas Gateway 2000 y Dell.
Muchas de ellas no est�n soportadas por los n�cleos estables actuales
(como el 2.0.35), debiendo aplicarse un parche o usar uno de los
n�cleos de desarrollo (2.1.x). Si necesita instalar Linux en un disco
duro conectado a estas interfaces, necesitar� usar algunos trucos.
55..11.. PPrroommiissee UUllttrraa3333
Esta es una tarjeta PCI que tiene dos canales UDMA, soportando hasta
cuatro dispositivos en total. Puede ver las especificaciones y precios
en
http://www.promise.com.
Esta tarjeta se inclu�a en los sistemas Pentium II modernos modelo
Gateway 2000, y puede aparecer o no en modelos m�s recientes.
El n�cleo 2.0.35 soporta el Ultra33 expl�citamente, y los n�cleos en
desarrollo (el actual es el 2.1.114) dispone de soporte gen�rico para
interfaces IDE PCI que, autom�ticamente, detecta el Promise Ultra33.
Pero, los viejos n�cleos estables (2.0.34 e inferiores) no lo detectan
y, dado que muchas de las distribuciones de Linux incluyen estos
�ltimos, puede ser bastante complicado instalar este sistema
operativo.
IInnssttaallaannddoo LLiinnuuxx ccoonn llaa PPrroommiissee
Aunque hay un parche para la interfaz Promise, �no es f�cil aplicarlo
y recompilar el n�cleo si todav�a no tiene Linux instalado! Por eso,
hay un truco que le permite instalarlo. Agradecimientos a Gadi Oxman
por la siguiente informaci�n sobre la obtenci�n de la configuraci�n de
la interfaz:
Si podemos acceder a la consola con el disco de instalaci�n, tambi�n
podemos usar "cat /proc/pci" para obtener la configuraci�n de la interfaz:
RAID bus interface: Promise Technology Unknown device (rev 1).
Vendor id=105a. Device id=4d33.
Medium devsel. IRQ 12. Master Capable. Latency=32.
I/O at 0xe000. (a)
I/O at 0xd804. (b)
I/O at 0xd400. (c)
I/O at 0xd004. (d)
I/O at 0xc800. (e)
y pasar el par�metro "ide2=a,b+2 ide3=c,d+2" en la l�nea de argumentos
del n�cleo.
N�tese que los n�meros probablemente no sean los mismos que los que
usted tendr�. S�lo como ejemplo, los par�metros a usar con el conjunto
de n�meros anterior ser�a ``ide2=0xe000,0xd806 ide3=0xd400,0xd006''.
Si s�lo est� usando el primer canal del Ultra33 (por ejemplo, si usted
s�lo dispone de un dispositivo, o dos si son master y slave en el
mismo canal), entonces no necesitar�a especificar ide3.
RReedd HHaatt 55..11:: Inicie la instalaci�n con el disquete de arranque,
pulsando ENTER cuando se le pregunte. El n�cleo se cargar� y entonces
se le preguntar� por el idioma, tipo de teclado, y modo de
instalaci�n. Se le pedir� informaci�n adicional sobre el medio de
origen; no importa lo que responda mientras llegue al siguiente paso.
Entonces ver� una pantalla titulada ``Select Installation Path'';
pulse Alt-F2 ahora para llegar al int�rprete de comandos. Ejecute
``cat /proc/pci'', apunte los n�meros como antes, y vuelva a arrancar
desde el mismo disquete. Esta vez, escriba ``linux ide2= _(_a_q_u_� _e_s
_d_o_n_d_e _d_e_b_e _p_o_n_e_r _l_o_s _n_�_m_e_r_o_s _c_o_m_o _s_e _m_o_s_t_r_� _a_n_t_e_r_i_o_r_m_e_n_t_e_) ide3=_(_m_�_s
_n_�_m_e_r_o_s_)'' y luego pulse ENTER. Ahora deber�a ser posible alojar Linux
en su disco duro sin dificultades, aunque LILO probablemente no ser�
capaz de instalarse de forma correcta: haga un disquete de arranque y
util�celo para acceder a su sistema Linux con los mismos par�metros,
hasta que pueda parchear el LILO y el n�cleo.
RReedd HHaatt 55..00 y SSllaacckkwwaarree 33..44:: El proceso a seguir en ambas
distribuciones es similar, incluyendo el problema de que los programas
de instalaci�n ignoran los /dev/hde-h (los dispositivos en ide2 e
ide3). Para poder instalar a/o desde estos dispositivos es necesario
pasar por encima de uno o de los dos canales de interfaz de la placa
madre. De todas maneras, aseg�rese de no pasar por encima de un
dispositivo que necesite para la instalaci�n; por ejemplo, si est�
instalando desde un CD-ROM en /dev/hdd (ide1, interfaz en la placa
madre) a un disco duro en /dev/hde (ide2, el Ultra33), deber�a
deshabilitar el innecesario ide0 con ide2 y dejar intacto ide1.
Asumiendo los n�meros anteriores, deber�a arrancar con
``ide0=0xe000,0xd806''. Red Hat 5.0 le ofrecer� un int�rprete de
comandos si usa la capacidad de disquete de rescate (rescue disk), y
Slackware incluye un int�rprete en el proceso de instalaci�n normal.
Tenga en cuenta que Red Hat 5.0 es dif�cil de arrancar despu�s de la
instalaci�n; si tiene problemas podr�a probar a bajarse un disquete de
arranque de Slackware desde
ftp://ftp.cdrom.com/pub/linux/slackware-3.5/bootdsks.144/ y usarlo
para arrancar.
Con otras distribuciones de Linux deber� improvisar un poco, pero el
proceso deber�a ser el mismo que el visto anteriormente.
_I_M_P_O_R_T_A_N_T_E_: �Sin el parche (del cual se habla en la secci�n
``UDMA�Gen�rico''), el n�cleo nneecceessiittaa estos par�metros de arranque
para poder acceder a su disco duro! Por eso es muy importante que
cuando configure LILO, tanto en un disco duro como en un disquete de
arranque, a�ada los mmiissmmooss ppaarr��mmeettrrooss eexxaaccttaammeennttee tal y como lo hizo
al instalar. �De otra manera su sistema no arrancar�! Deber�a ser
posible pas�rselos a LILO cuando arranque (por ejemplo, pulsando MAYS,
escribiendo ``linux ide2=_._._._._.'' cada vez que lo haga), �pero s�lo
podr� hacerlo si guarda los n�meros! Es recomendable que aplique el
parche al n�cleo tan pronto como pueda para que no deba preocuparse al
respecto; una vez que pueda arrancar con el n�cleo parcheado, podr�
olvidarse de los par�metros de arranque. Adem�s, por lo menos que yo
sepa, no hay manera de pasar par�metros a un disquete de arranque
sencillo (hecho con ``make zdisk''), ddeebbeerr�� usar LILO u otro cargador
(como LOADLIN) que le permita pasarlos.
De todas maneras, los n�cleos no parcheados y programas de instalaci�n
pasan un mal rato usando ide2 e ide3, aunque los dispositivos hayan
sido detectados correctamente. Por eso, si no es capaz de instalar
Linux usando la t�cnica anterior, pruebe a especificar ide0 o ide1 en
vez de ide2 o ide3 (gracias a Martin Gaitan por esta t�cnica).
Esencialmente consiste en reemplazar el interfaz en placa por el
Promise Ultra33, al menos en lo que concierne al n�cleo, pudiendo
seguir en la direcci�n de la siguiente secci�n como si los hubiera
movido f�sicamente. N�tese que si est� usando el CD-ROM IDE conectado
a su interfaz en placa como fuente de la instalaci�n, �deber�
asegurarse que no deshabilita la interfaz en la que se encuentra el CD
o ser� incapaz de instalar! Si el CD est� en hda o hdb, use ide1 para
su disco duro, y si est� en hdc o hdd, entonces use ide0.
IInnssttaallaannddoo LLiinnuuxx ssaalltt��nnddoossee llaa PPrroommiissee
Si no consigue que funcionen los trucos software, tendr� que usar un
m�todo m�s expeditivo. Este es un m�todo alternativo que virtualmente
tiene �xito garantizado, pero va a requerir que abra su ordenador y lo
modifique internamente. NNOOTTAA:: �Si no est� familiarizado con el proceso
de conectar y desconectar dispositivos IDE, lleeaa llooss mmaannuuaalleess que
ven�an con su ordenador, su disco duro y/o con la Promise Ultra33
antes de intentarlo! Si modifica algo y no sabe c�mo ponerlo otra vez
en su sitio, �podr�a acabar arrepinti�ndose!
Habiendo dicho esto, es todo muy simple. Muchas de las placas madres
de hoy en d�a tienen incorporadas interfaces EIDE. Desconecte su disco
duro de la Ultra33 y con�ctelo a la interfaz en placa. Si tiene otros
dispositivos IDE en la misma interfaz, como un CD-ROM, una unidad de
cintas o un disco ZIP, es m�s f�cil si simplemente a�ade el disco duro
en alg�n canal no usado (el secundario en vez del primario) o
temporalmente desconecte alg�n dispositivo que no necesite
inmediatamente (como el ZIP o la cinta). Instale Linux y, finalmente,
b�jese y aplique el parche para la Promise UDMA (vea la secci�n
siguiente).
Ahora est� en disposici�n de volver a poner el disco en la Promise...
casi. Para estar seguro haga un disquete de arranque (cd
/usr/src/linux ; make zdisk) que podr� usar para arrancar su sistema
en caso de que LILO no funcione. Bueno, para estar mmuuyy seguro, haga
dos y guarde uno de ellos por ahora.
Muy bien, ahora es el momento de pensar un poco... si s�lo dispone de
un disco duro que se encontrar� en la Promise, entonces lo m�s seguro
es que sea /dev/hde (a y b son para la interfaz primaria en placa, c y
d para la secundaria). Si va a poner m�s discos, entonces el esclavo
del primer canal de la Promise ser� /dev/hdf, el master del segundo
/dev/hdg y el esclavo del segundo /dev/hdh.
Edite /etc/fstab, y cambie todas las particiones de los discos duros
que est� moviendo de los dispositivos en placa (/dev/hda, hdb, etc) a
sus nuevas localizaciones en la Promise (/dev/hde, hdf, etc). Si tiene
que poner otros dispositivos (como un CD-ROM o un disco ZIP) que desea
dejar en la interfaz en placa, entonces c�mbielos a su nueva
localizaci�n tambi�n. Por ejemplo, si su CD-ROM era originariamente el
master del canal primario (/dev/hda), pero puso su disco duro en ese
lugar y tuvo que cambiar el CD al esclavo (/dev/hdb) o al canal
secundario (/dev/hdc), y ahora quiere volver a ponerlo otra vez en su
sitio, entonces c�mbielo a /dev/hda.
Si est� usando LILO, reconfig�relo para usar la nueva localizaci�n del
dispositivo (la configuraci�n de LILO sale de las pretensiones de este
documento, as� que si no conoce c�mo hacerlo, lea el LILO mini-HOWTO
<
http://sunsite.unc.edu/LDP/HOWTO/mini/LILO.html>), o no ser� capaz,
probablemente, de arrancar a menos que no use el disquete de arranque
que le he hecho hacer, con el que tambi�n desear� arrancar la nueva
partici�n. Esto se hace usando el comando rdev: introduzca el disquete
y escriba ``rdev /dev/fd0 /dev/hde1''. Por supuesto, esto es
suponiendo que su partici�n ra�z es la primera de su primer
dispositivo UDMA. Si no es as� (por ejemplo, en mi caso es /dev/hde7),
entonces use el n�mero de partici�n apropiado.
Vuelva a arrancar. Su sistema tendr�a que funcionar correctamente.
AApplliiccaannddoo eell ppaarrcchhee ppaarraa llaa PPrroommiissee
El n�cleo 2.0.35 y superior soporta de forma nativa la Promise
Ultra33; obtenga y actual�cese desde su distribuci�n Linux o desde
http://www.kernel.org.
Para instrucciones sobre c�mo compilar el n�cleo, lea el Kernel-COMO.
UUssaannddoo ddooss ttaarrjjeettaass UUllttrraa3333 eenn eell mmiissmmoo oorrddeennaaddoorr
Esto actualmente no funciona correctamente... no lo haga por ahora a
menos que est� deseoso de modificar el n�cleo para hacer que las cosas
funcionen.
55..22.. AArrttoopp AATTPP885500UUFF
Esta tarjeta est� soportada por el udma-generic. La instalaci�n de
Linux en un sistema con esta tarjeta como interfaz para el disco
destino deber�a ser similar al proceso para con la Promise Ultra33.
55..33.. AA��aaddiieennddoo ffiicchheerrooss ddee ddiissppoossiittiivvoo
Las interfaces IDE terciario y cuaternario (ide2 e ide3) usan ficheros
de dispositivo entre el /dev/hde* y el /dev/hdh*. En n�cleos antiguos
estos dispositivos no eran creados autom�ticamente, por lo que podr�a
ser necesario a�adirlos de forma manual para que las cosas funcionen
correctamente.
Esto se puede hacer f�cilmente si tiene actualmente una copia
instalada de los fuentes del n�cleo; simplemente ejecute
/usr/src/linux/scripts/MAKEDEV.ide y se crear�n los ficheros de
dispositivo relevantes.
66.. IInntteerrffaacceess UUDDMMAA eenn ppllaaccaa
Estas son interfaces de dispositivo con capacidades UDMA incluidos
dentro de la placa madre. Utilizan los puertos de E/S est�ndares para
IDE y por ello son perfectamente operativos a velocidades lentas no-
UDMA en n�cleos 2.0.x sin parchear, como los que se usan para instalar
Linux. Por ello, no deber�an causar ning�n problema durante la
instalaci�n, y parchearlos para obtener la velocidad del UDMA es un
lujo bien recibido en vez de una necesidad.
66..11.. IInntteell FFXX,, HHXX,, VVXX,, TTXX,, yy LLXX
Gracias otra vez a Gadi por esta informaci�n:
El soporte para el DMA bus mastering en el chipset Intel TX est�
disponible en el 2.0.31 y superior.
En viejos n�cleos (como el 2.0.30 de la Slackware 3.4), la interfaz
ser� usada en el modo EIDE lento. En ambos casos, ser�
autom�ticamente detectado por el n�cleo y no tendr� ning�n problema
para usarlo.
El soporte para usar el UDMA completo con estos chipsets se incluye en
el parche udma-generic; vea ``UDMA-Generic''.
66..22.. EEll VVIIAA VVPP22 yy CChhiippsseettss rreellaacciioonnaaddooss
Esta interfaz puede ser autodetectada y usada en modo EIDE por un
n�cleo sin parchear pero, si tiene uno de estos, querr� usar un parche
para que pueda obtener mayores tasas de transferencia y dejar en la
cuneta esos molestos mensajes "unknown PCI device" (dispositivo PCI
desconocido).
Uno de ellos se puede obtener en
http://www.ipass.net/~prefect/; est�
dise�ado para el chipset VIA VP2/97, que puede encontrarse en las
placas madres de FIC modelos PA-2007 y PA-2011, pero puede funcionar
en chipsets relacionados. Se ha informado que funciona con el chipset
m�s moderno VIA VP3.
N�tese que este es un parche que s�lo soporta el modo Bus Mastering,
no el modo UDMA completo, pero todav�a es mejor que el modo EIDE
normal. Siga las instrucciones en el sitio Web del parche para
activar el modo BMDMA.
Hay otro parche que soporta el modo UDMA completo en
http://www.pyreneesweb.com/Udma/udma.html, dise�ado para el VIA
VT82C586B y que debe funcionar para los chipsets VP2, VP3, VPX, P6 y
AGP Apollo. Siga las instrucciones para la instalaci�n y activaci�n
del modo UDMA, aunque es recomendable que haga una copia de seguridad
de todos los datos que desee guardar, ya que hay problemas potenciales
con placas madres incompatibles. Pero, si funciona, lo har� sin
problemas.
N�tese que el chipset VP1 no funciona con estos parches, aunque est�
soportado por el parche ``UDMA-Generic''.
66..33.. TTXX PPrroo yy oottrraass ppllaaccaass ````PPrroo''''
Actualmente el UDMA no est� soportado para las placas madre TX Pro.
Son diferentes a las TX mobo, y aparentemente no informan
correctamente de sus capacidades de DMA, lo cual causa el problema. He
o�do que alguien est� trabajando en ello, por lo que podr�a aparecer
un parche en el futuro.
77.. UUDDMMAA--GGeenneerriicc ((UUDDMMAA ggeenn��rriiccoo))
El parche UDMA-Generic modificado por Andr� Balsa
<mailto:
[email protected]>, Andre Hedrick
<mailto:
[email protected]> y Michel Aubry
<mailto:
[email protected]> a partir del driver de DMA de la Triton de
Mark Lord, da soporte UDMA a los siguientes chipsets (en su versi�n
0.3):
� Todos los chipsets Intel: FX, HX, VX, TX, LX.
� Todos los chipsets SiS (s�lo probado el SiS5598, aunque toda la
familia tiene la misma interfaz de dispositivo 5513 integrado).
� Chipsets VIA (s�lo probado el 82C586B, pero otra vez esta familia
de chipsets tienen la misma estructura de interfaz). Para las
interfaces VIA existe soporte especial de diagn�stico.
� Soporte para las tarjetas Promise y Artop PCI UDMA. No se ha
incluido todav�a otras tarjetas PCI UDMA.
Se ha dise�ado para que sea f�cilmente extensible para el soporte de
otros chipsets.
Udma-generic, tambi�n conocido como el Gran Parche Unificado de UDMA
(GUUP - Grand Unified UDMA Patch) se ha incluido en el parche Jumbo,
el cual incluye otras caracter�sticas �tiles como la detecci�n
autom�tica de memoria por encima de los 64 MB y la detecci�n de la
velocidad de reloj de la CPU. Puede obtener el parche Jumbo para el
n�cleo 2.0.35 en
http://www.altern.org/andrebalsa/linux/. Este parche
tambi�n puede aplicarse contra el 2.0.36pre1 y posiblemente contra los
siguientes.
Aqu� hay algunas notas del autor:
Las prestaciones con dispositivos UDMA de IBM en una buena placa madre se
acercan a las m�ximas tasas de transferencia: aproximadamente 10 MB/s
(medido con hdparm -t -T).
El chipset Intel TX tiene una �nica FIFO para disco duro compartida entre
sus dos interfaces IDE, por lo que usar 2 dispositivos UDMA no
significar� una gran mejora respecto a usar uno solo.
Por contra, el SiS5598 tiene dos interfaces completamente separados, cada
uno con su propia FIFO. Te�ricamente, se pueden llegar a los 66MB/s de
tasa de transferencia en placas madre con el chip SiS5598, usando el
controlador md y `data stripping' en los dos discos. El SiS5571 tiene la
misma arquitectura de interfaz, creo. No tengo los caminos de datos de
los chipsets VIA, por lo que no puedo decir nada al respecto.
El controlador de n�cleo IDE (U)DMA de Linux por Mark Lord tiene un
tiempo de configuraci�n muy peque�o (latencia para las transferencias de
datos). Es ideal para las transferencias frecuentes y de pocos datos
(como las de los servidores de noticias con Linux) y puede ser en algunos
casos superior a los correspondientes competidores SCSI.
88.. AAccttiivvaannddoo yy ddeessaaccttiivvaannddoo eell UUDDMMAA
Normalmente, el n�cleo compatible con UDMA autom�ticamente activar�
este soporte para los dispositivos e interfaces que lo admitan. De
todas maneras, desde el n�cleo 2.1.113 se desactivan las
transferencias con DMA por defecto a menos que haya configurado su
n�cleo espec�ficamente para autom�ticamente activarlo. Esto podr�a
parecer un error, pero algunos dispositivos e interfaces no funcionan
de forma adecuada con el DMA activado; vea la Lista Negra del UDMA m�s
adelante.
88..11.. UUssaannddoo llooss ppaarr��mmeettrrooss ddee aarrrraannqquuee ddeell nn��cclleeoo
En n�cleos 2.1.113 y en adelante, puede activar el DMA para ambos
dispositivos de una interfaz IDE usando el par�metro del n�cleo
ideX=dma, donde X es el n�mero de la interfaz (el primero es el 0).
Los par�metros de arranque del n�cleo pueden activarse mediante LILO,
LOADLIN o desde la mayor�a de los programas de arranque de Linux. Para
m�s informaci�n vea el Bootdisk HOWTO.
88..22.. UUssaannddoo hhddppaarrmm
hdparm es un programa usado para modificar los par�metros de los
discos duros en Linux. Entre otras cosas puede usarlo para activar o
desactivar el UDMA para un dispositivo y comprobar su tasa de
transferencia sostenida.
La mayor�a de las distribuciones de Linux incluyen hdparm, pero
necesitar� aplicar un parche para incluir el soporte UDMA. Puede
obtener hdparm de
ftp://sunsite.unc.edu/pub/Linux/system/hardware/hdparm-3.3.tar.gz y el
parche de
http://pobox.com/~brion/linux/hdparm-3.3-udma.patch.gz.
Compile e instale de esta manera:
cd /usr/src
tar zxvf /tmp/download/hdparm-3.3.tar.gz
cd hdparm-3.3
gzip -cd /tmp/download/hdparm-3.3-udma.patch.gz | patch -p0
make
if [ -f /sbin/hdparm ]; then rm -f /sbin/hdparm ; fi
make install
cp /usr/local/sbin/hdparm /sbin/hdparm
PPaarraa aaccttiivvaarr eell UUDDMMAA ppaarraa uunn ddiissccoo dduurroo:: hdparm -d1 /dev/hda
PPaarraa ddeessaaccttiivvaarr eell UUDDMMAA ddee uunn ddiissccoo dduurroo:: hdparm -d0 /dev/hda
PPaarraa mmeeddiirr llaa ttaassaa ddee ttrraannssffeerreenncciiaa ddee uunn ddiissccoo:: hdparm -Tt /dev/hda
PPaarraa vveerr qquu�� ooppcciioonneess eesstt��nn aaccttiivvaaddaass ppaarraa uunn ddiissccoo:: hdparm /dev/hda
PPaarraa vveerr mm��ss iinnffoorrmmaaccii��nn ddee ssuu ddiissccoo:: hdparm -i /dev/hda
Para informaci�n m�s detallada lea la p�gina de manual (``man 8
hdparm'').
99.. PPrroobblleemmaass
99..11.. LLaa LLiissttaa NNeeggrraa ddeell UUDDMMAA
Los siguientes dispositivos est�n en la ``lista negra''. NNoo debe usar
el UDMA con ellos, ya que podr�a causar corrupci�n en los datos.
� Western Digital WDC AC22100H
La parte de UDMA en el parche Jumbo-2.0.35-9 deshabilita
autom�ticamente el DMA para este dispositivo.
99..22.. ��VVaa uusstteedd ddeemmaassiiaaddoo ddeepprriissaa??
Si lo est� haciendo, �cuidado! Aqu� tiene un trozo de la documentaci�n
de udma-generic:
NO SE PASE EN LA VELOCIDAD DE RELOJ del bus PCI. 37'5MHz es la velocidad
m�xima soportada por el bus PCI. Algunos (supuestamente compatibles)
dispositivos UDMA nunca alcanzar�n los 37'5MHz, pero estar� correcto a
33'3MHz.
En cualquier caso, NUNCA, NUNCA ponga el bus PCI a 41'5MHz.
La configuraci�n RECOMENDADA para su seguridad es 33MHz.
99..33.. ��SSuu BBIIOOSS eesstt�� aaccttuuaalliizzaaddaa??
Aqu� tiene otro trozo de los documentos de udma-generic:
El trabajo real que involucra el configurar los chips para las
transferencias de DMA se realiza en su mayor parte por la BIOS de cada
placa madre. Por supuesto, uno espera que la BIOS haya sido programada
correctamente...
Por ejemplo, las placas madres ASUS SP-97v con su BIOS original (Rev.
1.03) no funcionar�an correctamente con el controlador modificado de Linux,
ni en el modo DMA 2 ni en los modos UDMA; funcionar�a correctamente
usando el modo PIO 4 o bajo Windows 95 en cualquier modo. Obtuve la
�ltima imagen de la BIOS (Rev. 1.06) de la Web de ASUS y la copi� en la
EPROM de mi BIOS. Ha funcionado perfectamente desde entonces (a
velocidades de bus de 66MHz).
Lo que esto nos dice es que la BIOS configura el controlador de DMA con
par�metros de temporizaci�n espec�ficos (ciclos de `active pulse' y
`recovery clock'). Mi revisi�n inicial de BIOS probablemente ten�a mal
esos tiempos. Dado que el controlador de Windows 95 modifica estos
tiempos por s� mismo (no depende de la BIOS el configurar los par�metros
de temporizaci�n del controlador de disco), solo ten�a problemas
inicialmente con el controlador de Linux, mientras que en Windows 95
funcionaba bien.
Por eso, deje que lo vuelva a repetir: este controlador de (U)DMA para
Linux depende de la BIOS para una correcta configuraci�n. Si tiene problemas,
primero compruebe que tiene la �ltima revisi�n de la BIOS para su placa madre.
[...]
Las nuevas revisiones de las BIOS pueden obtenerse desde el sitio Web del
fabricante de su placa madre. Escribir la nueva imagen de la BIOS es una
operaci�n simple pero en la que uno debe seguir estrictamente los pasos
explicados en el manual de la placa.
Las �ltimas revisiones de las BIOS Award parecen ser estables con el
UDMA. Cualquiera con fecha de 1998 ser�a correcta.
99..44.. ��SSii ttooddaavv��aa nnoo ppuueeddee hhaacceerr qquuee ffuunncciioonnee!!
Si nada de este documento parece ayudarle, o al menos no es suficiente
para hacer que su m�quina funcione, su mejor apuesta consiste en
escribir un mensaje que describa sus dificultades exactamente, de qu�
tipo de interfaz UDMA dispone, si est� en la placa o es una tarjeta
externa, si su disco actual es UDMA o s�lo EIDE, exactamente qu�
configuraci�n de dispositivos tiene, que versi�n (distribuci�n y
versi�n del n�cleo a ser posible) de Linux est� usando, y m�ndelo al
grupo de noticias comp.os.linux.hardware. Probablemente obtendr� una
ayuda pronto.
1100.. SSii ttiieennee aallgguunnaa iinnffoorrmmaaccii��nn ssoobbrree UUDDMMAA qquuee nnoo aappaarreezzccaa eenn eessttee
ddooccuummeennttoo......
� Perfecto ! Si sabe algo que yo no s�, envi�melo (
[email protected]):
lo a�adir� y actualizar� pronto este documento.