



                     -+-| DisidentS Hack Journal #3 |-+-










  _________________________________________________________________________
 |                                                                         |
 | -+- Titulo_____: Winmodems en Linux [028.txt]                           |
 | -+- Autor______: Quade2k                                                |
 | -+- E-Mail_____: <quade_2000@hotmail.com>                               |
 | -+- Team_______: DisidentS Argentina - http://www.disidents.int-ltd.com |
 | -+- KB_________: 8.7                                                    |
 | -+- Tema_______: Hardware                                               |
 |_________________________________________________________________________|








.==========================================================================.
|==============~ INDICE ~ ==================================================
|===========================================================================
|=~ 001 - Introduccion                                                     |
|=~ 002 - Como reconocer los winmodems                                     |
|=~ 003 - Como conseguir los drivers                                       |
|=~ 004 - Instalando los winmodems                                         |
|=~ 005 - Despedida                                                        |
|=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=.
======================================================~ INDICE ~============
============================================================================




.==========================================================================.
|=======~ 001 INTRODUCCION ~================================================
|===========================================================================


Para empezar, estos "modems" son mucho mas baratos que  los modems normales,
porque la mayoria de  las piezas  son emulados por software.  Es decir,  en
terminos generales,  por cuestiones  economicas  en la  fabricaciones de un
winmodem, su costo es menor que el de un modem normal. Y esta es una de las
razones por la cual han adquirido gran difusion en estos dias. Se les llama
winmodems porque necesitan que windows cargue un controlador especial  para
hacerlos funcionar. En si, son  muy pocas empresas  que los  soportan  bajo
linux; y en ese SO se conocen como softmodem (aunque los programadores  del
controlador universal del modem bajo linux lo han llamado "linmodems")
Bueno, no me quiero ir por las ramas con la introduccion y empezemos.


.==========================================================================.
|=======~ 002 COMO RECONOCER LOS WINMODEMS ~================================
|===========================================================================

Reconocer los winmodems es facil, porque???

1. Son baratos (entre $15 o $30)
2. En la caja dice "Requiere Microsoft Windows 9x"


.==========================================================================.
|=======~ 003 COMO CONSUEGUIR LOS DRIVERS ~=================================
|===========================================================================

Primero, tienen que conocer la marca del modem. Los mas conocidos son:

  Motorola
  PCTEL
  Zoltrix
  Cirrus Logic
  Conexant
  Rockwell

Bueno, ahora para conseguir los  drivers vayanse a  la pagina de DisidentS
Argentina o busquen en Google (http://www.google.com)


  http://www.disidents-argentina.cjb.net


.==========================================================================.
|=======~ 004 INSTALAR LOS DRIVERS ~========================================
|===========================================================================

* Motorola:

Primero desempaquen el archivo que bajaron "sm56-85.1-10.i386.rpm"

  # rpm -i sm56-85.1-10.i386.rpm

Ahora ejecuten el siguiente comando:

  # sm56setup

Listo. Ahora yo pueden usar este winmodem bajo linux


* PCTEL y Zoltrix: (Para los dos, los pasos de configuracion es el mismo)

Primero desempaquen el archivo que bajaron "pctel.zip"

Ahora ejecuten el siguiente comando:

  # su <password>
  # mknod /dev/ttS15 c 62 79
  # chgrp uucp /dev/ttS15
  # chmod 666 /dev/ttS15
  # ln - /dev/ttS15 /dev/modem/

Luego vayan a el directorio en el  que lo descoprimieron  el fichero y  alli
vayan a /src/serial/ y  ejecuten make.  Despues hay que  copiar  el  fichero
pctel.o que compilaron a /lib/modules/"version del kernel"/net/

Habra que ejecutar el comando:

  # insmod pctel

OK,pero recuerden que siempre que quieran utilizar el modem deberan ejecutar
esta ultima linea.  O si no, puede agregar la siguiente linea "insmod pctel"
al fichero /etc/rd.0/


* Cirrus Logic:

Lo primero que deben hacer es fijarse si linux detecto el  modem.  Para  eso
ejecuten lo siguiente:

  # cat /proc/pci/

Esto nos mostrara algo como:

  Bus 0, device 13, function 0:
  Comunication controller: Cirrus Logic Unknown
  device (rev 1).
  Vendor id=1013. Device id=4000
  Medium devsel. IRQ 10
  Non-prefetcheable 32 bit memory at 0xebffe000
  [0xebffe000]
  I/O at 0xde00 [0xde01]

Luego  editen  el archivo de  con figuracion  cim_config.h y  modifiquen las
lineas:

  CLM_BASE_IO_ADDRESS
  CLM_IRQ

Quedaria algo asi:

  #define CLM_BASE_IO_ADDRESS
  0xde00
  #define CLS_IRQ
  10

Por ultimo ejecuten el comando:

  # make

esto compilara el driver y Listo!.

* Conexant y Rockwell

Primero desempaquen el archivo del driver.

 # tar -xzfv driver.tar.gz (en caso de q sea tar.gz)

Luego entramos al directorio del Driver donde han sido descomprimidos
y ejecutamos lo siguiente

 # ./ins_all

OK, ya esta todo listo!

Pero ...  si te dio error de  " No Dialtone "  lo pueden corregir usando el
comando:

AT S7=45 S0=0 L1 V1 X4 &c1 E1 Q0

Y para los que tengan  n  modem  con chipset  HSF  que no sea  Olitec ( por
supuesto que el chipset debe ser Conexant/Rockwell),  y que no hayan tenido
xito con los pasos anteriores el asunto es ms tardado, lo que tendrn que
hacer es editar el archivo lin_hsf.inf , creando unas lneas donde
insertaremos el Vendor ID y el Device ID de nuestro modem, lo pasos que
tenemos que seguir son:

Para saber el Vendor ID y el Device ID hacemos lo siguiente,  en la consola
escribimos el comando:

 # less /proc/pci

Ah buscamos el prrafo  donde se  encuentren  los datos que corresponden a
nuestro modem, 14F1 (Conexant) o 127A ( Rockwell ) y checamos el Device ID,
buscaramos algo as:

PCI\VEN_127A&DEV_2015&SUBSYS_2015127A.

Ya con estos datos procedemos a editar el archivo lin_hsf.inf con cualquier
editor de texto,  lo que tenemos  que hacer  es crear  una lnea %HSFModem%
dentro  de  la  seccin marcada  como  [generic] ah  encontraremos  lneas
similares a la que nosotros agregaremos.

Nuestra linea quedara de esta forma:

%HSFModem% = ModemX, PCI\VEN_XXXX&DEV_YYYY&SUBSYS_********

Despus se remplazan las XXXX por el Vendor ID y las YYYY  por el Device ID
se pone el Subsys******** completo, con lo cual tendramos.

%HSFModem% = ModemX, PCI\VEN_127A&DEV_2015&SUBSYS_2015127A

Por ultimo hacemos otra vez un ./ins_all

Ahora si tu modem funciona correctamente!!!!!!


.==========================================================================.
|=======~ 005 DESPEDIDA ~===================================================
|===========================================================================

Con esto ya pueden usar los winmodem bajo linux y disfrutarlos al 100%.
Si descubren errores comuniquenmelo. Gracias


---------------------------------------------------
-       CONTACTA CONMIGO O CON EL TEAM            -
---------------------------------------------------
- NICK:	    Quade2K                               -
- MAIL:     quade_2000@hotmail.com                -
- TEAM:     disidents@yahoo.es                    -
---------------------------------------------------

===========================================================================*




                                       Disidents Argentina  2001 3 edicion.
---------------------------------------------------------------------------

            @@-------               @@---------------
           @@----                  @@---------          @@@@@@@@@
          @@--     @@@@@--        @@-- @@@@@         @    @@  @@@@------
      @@@@@@    @@ @@      @@ @@@@@@-  @@      @@@  @    @@  @@-----------
     @@        @@ @@@@@   @@ @@---    @@@@@@   @@  @@   @@  @@@@@----------
    @@        @@     @@  @@ @@ -     @@       @@ @ @   @@      @@----------
     @@@@@@@ @@  @@@@@@ @@   @@@@@@@ @@@@@@@ @@  @@   @@    @@@@@--------
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@------


