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.