[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

zx630-11



Hola Listeros,

Alguien ha tenido la oportunidad de hacer funcionar esa porquería de
modem USB Prestigy 630 de timofónica para ADSL en debian.

Mi GNU/Linux detecta:

~# cat /proc/bus/usb/devices
P:  Vendor=06b9 ProdID=a5a5 Rev= 0.00
S:  Manufacturer=AME
S:  Prodcut=DynaMiTe USB Modem

He descargado el zx630-11.XXXXX.tgz de sourceforge y se procedió a realizar
la compilación todo sin errores, ahora cuando se intenta levantar el
firmware con zxload detecta el dichoso modem pero no puede levantar la línea
ADSL:

~# ./zxload
Zyxel 630-11 microcode upload program. 14/7/2003
Josep Comas <jcomas@gna.es>
Sundar <sundar@cynaptix.biz>

I found ADSL modem with VendorID = 06b9 & ProductID = a5a5
Loading and sending /usr/sbin/fw-usb.bin...
Firmware is sent!
Error: usb_control_msg: error sending control message: Expiró el tiempo de conexión
Error: usb_control_msg: error sending control message: Expiró el tiempo de conexión
Error: usb_control_msg: error sending control message: Expiró el tiempo de conexión
Error: usb_control_msg: error sending control message: Expiró el tiempo de conexión
Error: usb_control_msg failed after 4 retries

Ahora cuanto hago debug y debugt retorna lo siguiente:

~# ./zxloaddbg
Zyxel 630-11 microcode upload program. 14/7/2003
Josep Comas <jcomas@gna.es>
Sundar <sundar@cynaptix.biz>

I found ADSL modem with VendorID = 06b9 & ProductID = a5a5
 bLength: 0x09
 bDescriptorType: 0x02
 wTotalLength: 0x0093
 bNumInterfaces: 0x03
 bConfigurationValue: 0x01
 iConfiguration: 0x00
 bmAttributes: 0x80
 MaxPower: 0xfa
Interface = 2
Loading and sending /usr/sbin/fw-usb.bin...
Length of file /usr/sbin/fw-usb.bin = 303584 bytes
PreInit...
Error: usb_bulk_write: error writing to bulk endpoint 5: Expiró el tiempo de conexión
Error: usb_bulk_write: error writing to bulk endpoint 5: Expiró el tiempo de conexión
Error: usb_bulk_write: error writing to bulk endpoint 5: Expiró el tiempo de conexión
Error: usb_bulk_write: error writing to bulk endpoint 5: Expiró el tiempo de conexión
Error: usb_bulk_write failed after 4 retries
Releasing interface...
Releasing device...

zxloaddbgt retorna lo mismo.

Hay unos cambios que se recomiendan hacer en zxload.c y en zxioctl.c, pero estos quedan
sin efecto todavía ya que el problema se presenta antes de estas líneas.

Ahora el problema que se me presenta corresponde específicamente a la función
transfer_ctrl_msg en zxload.c:

  /* wait until firmware is ready */
  sleep(1);

  len = transfer_ctrl_msg(adsl_handle, VENDOR_REQUEST_IN, 0x0a, 0x0c, 0x08, buf, 0x1);

Los parámetros pasados a través de transfer_ctrl_msg hacen match con los parámetros
pasados a usb_control_msg en su código:

  int tmout = CTRL_TIMEOUT;  /* timeout value */

  n = 0;
  for (j = 0; j < CTRL_MSG_RETRIES; j++) {
#ifdef SIMULATE
    n = size;
#else
    n = usb_control_msg(adsl_handle, requesttype, request, value, index,  buf, size, tmout);

Alguien sabe el motivo de ¿por qué el timeout?, tengo que cambiar los valores hex del
requesttype o alguno otro?, a ver si alguien ya los conoce los detalles de hardware del
dichoso modem.

Ahora también probe con el speedtouch que el kernel 2.4.22 ya lo incluye, modificando
el código fuente del módulo speedtch.c y también de los headers que acompañan las fuentes del
paquete speedtouch de debian para que acepte el ProductID como 0xa5a5 (que es el productid de
mi modem)

Y cuando se lanza:

~# modem_run -m -f /ruta/al/fw-usb.bin

Pues el mensaje es similar a los que aparecen con zxload, reconoce el modem pero no puede
subir el firmware.

Saludos!

nmag only
______________



Reply to: