Autor Tema: [Desarrollo] OpenWrt en Huawei HG556a  (Leído 1976995 veces)

0 Usuarios y 4 Visitantes están viendo este tema.

Pteridium

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1360 en: 27-03-2013, 19:17 (Miércoles) »
si conecto el segundo portatil por wifi se ve todo que es compartido pero el portatil tiene wifi g y no va bien las pelis en formato mkv

Que no se vean bien las pelis en mkv puede ser debido a 3 cosas:
- El portátil no tiene potencia suficiente.
- Algún cuello de botella en la red.
- Interferencias en el canal de la wifi que usas o que el protocolo g no sea suficiente.



portacosmin

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1361 en: 27-03-2013, 23:04 (Miércoles) »
Muchas gracias a todos, va perfecto!!! y ademas las pelis full hd va bien  >:( aqui hay un enlace que trata tambien de relayd http://wiki.openwrt.org/doc/recipes/relayclient
« Última modificación: 28-03-2013, 10:26 (Jueves) por portacosmin »

danitool

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1362 en: 03-04-2013, 14:24 (Miércoles) »
Algo en lo que no me habia fijado hasta ahora es que parece que en el hg556, hay la mitad de icache en el procesador de lo que debiera.

En un ct-6373 con exactamente el mismo SoC, el dmesg suelta esto tanto con firmware OEM como OpenWrt:
Código: [Seleccionar]
[    0.000000] Primary instruction cache 32kB, VIPT, 2-way, linesize 16 bytes.
[    0.000000] Primary data cache 16kB, 2-way, VIPT, cache aliases, linesize 16 bytes

Mientras que en el hg556a
Código: [Seleccionar]
[    0.000000] Primary instruction cache 16kB, VIPT, 2-way, linesize 16 bytes.
[    0.000000] Primary data cache 16kB, 2-way, VIPT, cache aliases, linesize 16 bytes
Lo cual me lleva a pensar que puede que el bootloader no haya "activado" toda la icache disponible.

Según código fuente originario de broadcom estos parámetros se podrían modificar en los registros de cpu (22,1), sino me equivoco, que podría ser...

Un extracto de a lo que me refiero

Código: [Seleccionar]
/*
#************************************************************************
#* Coprocessor 0 Register Names
#************************************************************************
*/
#define C0_BCM_CONFIG          $22

/*
# Select 1
#  Bit  31:   unused
#  Bits 30:25 MMU Size (Num TLB entries-1)
#  Bits 24:22 ICache sets/way (2^n * 64)
#  Bits 21:19 ICache Line size (2^(n+1) bytes) 0=No Icache
#  Bits 18:16 ICache Associativity (n+1) way                   
#  Bits 15:13 DCache sets/way (2^n * 64)
#  Bits 12:10 DCache Line size (2^(n+1) bytes) 0=No Dcache
#  Bits 9:7   DCache Associativity (n+1) way                   
#  Bits 6:4   unused
#  Bit  3:    1=At least 1 watch register
#  Bit  2:    1=MIPS16 code compression implemented
#  Bit  1:    1=EJTAG implemented                   
#  Bit  0:    1=FPU implemented                   
*/
#define CP0_CFG_ISMSK      (0x7 << 22)
#define CP0_CFG_ISSHF      22
#define CP0_CFG_ILMSK      (0x7 << 19)
#define CP0_CFG_ILSHF      19
#define CP0_CFG_IAMSK      (0x7 << 16)
#define CP0_CFG_IASHF      16
#define CP0_CFG_DSMSK      (0x7 << 13)
#define CP0_CFG_DSSHF      13
#define CP0_CFG_DLMSK      (0x7 << 10)
#define CP0_CFG_DLSHF      10
#define CP0_CFG_DAMSK      (0x7 << 7)
#define CP0_CFG_DASHF      7

/*

Quizás si estoy en lo cierto se pudiese aumentar la icache al doble en el inicio de Openwrt, modificando registros. El motivo, obvio, para incrementar el rendimiento  ;)

danitool

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1363 en: 06-04-2013, 02:05 (Sábado) »
Bien, ya he resuelto el misterio de las cachés en este SoC.

Como algunos saben, la CPU en los bcm6358 tiene dos cores, aunque en OpenWrt solo usamos uno (no existe soporte SMP todavía). Y esto es lo que nos encontramos en cada core

core0: 16KB dcache, 32KB icache
core1: 16KB dcache, 16KB icache

Que está ocurriendo?, pues que el CFE configura el core1 como primario, por tanto nos quedamos con 16KB de icache. Pero esto se puede cambiar en una zona de CFE de donde toma cual será el core primario. Concretamente en el offset 0x0017, el cual está a 1 por defecto. Entonces podemos hacer un backup del bootloader buscamos ese offset lo ponemos a 0 y lo flasheamos de nuevo.

Benchmarks opensssl, antes y después del cambio del CFE modificado:
Cita de: core1, icache 16KB
| 1.0.1e |  12943360 |  9699730 |  4768430 |  1933920 |  1872210 |  670940 |  3755010 |  3251630 |  2874710 |  4.0 |  140.6 |  14.2 |  11.6 |
http://pastebin.com/kwLpuvSC
Cita de: core0, icache 32KB
| 1.0.1e |  13841870 |  10867160 |  4824100 |  1954560 |  1882790 |  675430 |  3809620 |  3288520 |  2889390 |  4.1 |  142.6 |  14.3 |  11.6 |
http://pastebin.com/472RPMKN






No explicaré mucho más, ya que el proceso es sencillo. Para flashear CFE usé este comando
Código: [Seleccionar]
root@OpenWrt:/tmp# flashcp -v cfehw556.bin /dev/mtd0
Erasing block: 1/1 (100%)
Writing kb: 120/128 (93%)
Verifying kb: 120/128 (93%)
root@OpenWrt:/tmp# reboot
Ojo flashear un CFE mal manipulado puede dejar nuestro router inutilizado, e irrecuperable a menos que usemos JTAG

Este proceso sería válido también para el Hg553 que usa el core1 como primario.
 :D

« Última modificación: 06-04-2013, 02:21 (Sábado) por danitool »

manuelacantasaetas

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1364 en: 08-04-2013, 00:02 (Lunes) »
Y el tema de los multinucleos como va en openwrt? Esta parado? Es lo que había leído por ahí.

danitool

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1365 en: 08-04-2013, 12:43 (Lunes) »
Y el tema de los multinucleos como va en openwrt? Esta parado? Es lo que había leído por ahí.

Soporte existe oficialmente en el kernel, pero no parece que funcione la cosa. Falta inicializar correctamente el segundo core, asignar IRQs ... Tarea complicada, más si Broadcom como nos tiene acostumbrados no da las especificaciones de sus chipsets. Hay que literalmente adivinar como funciona el SoC a partir del código públicado del cual no existen apenas cosas en cuanto a multiprocesador. De hecho no parece que siquiera los firms de fabricante usen dos cores, sorprendente.

De todas formas para el que quiera contribuir sobre el tema, añadí una entrada en la wiki, en la que puse lo que averigüé hasta ahora. Más datos son bienvenidos siempre  :-*

http://wiki.openwrt.org/doc/hardware/soc/soc.broadcom.bcm63xx/smp
« Última modificación: 08-04-2013, 12:44 (Lunes) por danitool »

ijoy74

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1366 en: 09-04-2013, 22:55 (Martes) »
Hola Danitool, Tengo un hg556a con wifi atheros y me pasa como a Elnef, que con la r36114 no funciona.
he intentado el modo failsafe pero no me aclaro en como se hace. Asi que no he podido probar el mtd erase -r rootfs_data
Gracias por la subida.

Lo he probado en un Ralink y va perfecto, pero en un Atheros no funciona.
Gracias por el feedback del ralink.

En mi atheros funciona perfectamente :$. ¿Puedes dar más detalles sobre qué falla exactamente?

Tras flashearlo desde el menú del recovery, no puedo acceder al router. Debería tener la dirección 192.168.1.1 pero no responde ni a un pin. Voy a probar otra vez a ver si ha sido alguan paranoia en ese momento.

Alguna sugerencia o ayuda para entrar en modo failsafe para probar el comando ??

Noltari

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1367 en: 10-04-2013, 03:15 (Miércoles) »
Hola Danitool, Tengo un hg556a con wifi atheros y me pasa como a Elnef, que con la r36114 no funciona.
he intentado el modo failsafe pero no me aclaro en como se hace. Asi que no he podido probar el mtd erase -r rootfs_data
Gracias por la subida.

Lo he probado en un Ralink y va perfecto, pero en un Atheros no funciona.
Gracias por el feedback del ralink.

En mi atheros funciona perfectamente :$. ¿Puedes dar más detalles sobre qué falla exactamente?

Tras flashearlo desde el menú del recovery, no puedo acceder al router. Debería tener la dirección 192.168.1.1 pero no responde ni a un pin. Voy a probar otra vez a ver si ha sido alguan paranoia en ese momento.

Alguna sugerencia o ayuda para entrar en modo failsafe para probar el comando ??
1) Desconecta el router de la corriente.
2) Conecta el router a la corriente.
3) Presiona y suelta repetidas veces el botón de "Restart" (sí, el de restart, no el que pone reset).
4) Cuando el LED de Power parapdee muy rápidamente es que ha entrado en modo failsafe.
5) En modo failsafe no hay DHCP, así que tienes que establecer la dirección IP de tu red manualmente (192.168.1.2/24).

Saludos.

gmtii

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1368 en: 11-04-2013, 21:36 (Jueves) »
buenas,

en mi ya hace estragos la presbicia, pero en mi dump del cfe, el offset 0x17 está a cero, y en el cache está a 16?

Código: [Seleccionar]
00000000  10 00 02 79 00 00 00 00  00 00 00 00 00 00 00 00  |...y............|
00000010  00 00 00 06 01 00 00 00  00 00 00 00 00 00 00 00  |................|
00000020  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*


buen descubrimiento!

Que está ocurriendo?, pues que el CFE configura el core1 como primario, por tanto nos quedamos con 16KB de icache. Pero esto se puede cambiar en una zona de CFE de donde toma cual será el core primario. Concretamente en el offset 0x0017, el cual está a 1 por defecto. Entonces podemos hacer un backup del bootloader buscamos ese offset lo ponemos a 0 y lo flasheamos de nuevo.



danitool

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1369 en: 11-04-2013, 22:43 (Jueves) »
Para que no haya lugar a dudas pongo el mío, donde sí se ve que está en el offset 0x17
Código: [Seleccionar]
0000:0000 | 10 00 02 79  00 00 00 00  00 00 00 00  00 00 00 00 | ...y............
0000:0010 | 00 00 00 06  00 00 00 01  00 00 00 00  00 00 00 00 | ................
0000:0020 | 00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00 | ................
0000:0030 | 00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00 | ................
0000:0040 | 00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00 | ................
0000:0050 | 00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00 | ................

Tu dump es realmente  de un hg556a? presupongo que no.
Lo que tiene pinta es de que el offset en este caso es 0x14, no todos los CFEs son iguales  :-\


gmtii

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1370 en: 11-04-2013, 23:00 (Jueves) »
ah, pues seguramente este en el 0x14. Es un 556 VER C Atheros del 2011; te pongo un fichero con el dump ..

https://www.dropbox.com/s/ti3uvywhmagpu7m/556_VER_C.CFE.bin.gz

Estoy mirando un 553 y lo mismo, en 0x14.

saludos!
« Última modificación: 11-04-2013, 23:08 (Jueves) por gmtii »

danitool

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1371 en: 11-04-2013, 23:43 (Jueves) »
Curioso, porque tu CFE y el mío son exactamente idénticos excepto algunos datos de configuración como este en concreto. Vamos que lo que es el ejecutable después de la NVRAM son idénticos..

El área de este parámetro está entre 0x014 y 0x017
http://wiki.openwrt.org/doc/techref/bootloader/cfe#cfe.for.bcm63xx.socs
Igual vale cualquier offset en esta aréa.

Será cuestión de probar y arriesgarse. Si se hace bien el proceso, no debiera pasar nada, el riesgo es más bien bajo.


ijoy74

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1372 en: 12-04-2013, 00:26 (Viernes) »
 >:( Mil gracias!
Solucionado y funcionando  ;D

Hola Danitool, Tengo un hg556a con wifi atheros y me pasa como a Elnef, que con la r36114 no funciona.
he intentado el modo failsafe pero no me aclaro en como se hace. Asi que no he podido probar el mtd erase -r rootfs_data
Gracias por la subida.

Lo he probado en un Ralink y va perfecto, pero en un Atheros no funciona.
Gracias por el feedback del ralink.

En mi atheros funciona perfectamente :$. ¿Puedes dar más detalles sobre qué falla exactamente?

Tras flashearlo desde el menú del recovery, no puedo acceder al router. Debería tener la dirección 192.168.1.1 pero no responde ni a un pin. Voy a probar otra vez a ver si ha sido alguan paranoia en ese momento.

Alguna sugerencia o ayuda para entrar en modo failsafe para probar el comando ??
1) Desconecta el router de la corriente.
2) Conecta el router a la corriente.
3) Presiona y suelta repetidas veces el botón de "Restart" (sí, el de restart, no el que pone reset).
4) Cuando el LED de Power parapdee muy rápidamente es que ha entrado en modo failsafe.
5) En modo failsafe no hay DHCP, así que tienes que establecer la dirección IP de tu red manualmente (192.168.1.2/24).

Saludos.

gmtii

  • Visitante
Re: Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1373 en: 12-04-2013, 20:14 (Viernes) »
Buenas

Probado en un atheros y un ralink... todos ellos en 0x14  ...

Saludos y gracias!

Enviado desde mi Nexus 4 usando Tapatalk 2

8carlos88

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1374 en: 15-04-2013, 08:32 (Lunes) »
hola

he metido el ultimo firm r36114 al hg556a y bien, pero cuando hago los primeros cambios del router del manual este:
https://foro.seguridadwireless.net/openwrt/%28tutorial%29-modo-clienterepetidor-openwrt/
con luci llego al punto 2 Pulsar "Save & Apply"  ahi se queda una hora y no guarda los cambios, se queda guardando....

vuelvo a meterle otra vez el firm pq lo apago y ya no tengo acceso y hago esto:
por telnet, es windows y tengo putty instalado pro acceso por consola(cmd)
resetear
mtd -r erase rootfs_data
eleminar wan
uci del network.wan
cambiar subred
uci set network.lan.ipaddr=192.168.2.1
uci set network.lan.netmask=255.255.255.0
uci set network.lan.dns=8.8.8.8
uci set network.lan.nat=1
uci set network.lan.accept_ra=1
concesiones dinamicas
uci set dhcp.lan.dynamicdhcp=1
aplicar y reiniciar
uci commit
reboot

se reinicia el router y ya no puedo acceder al router ni por 192.168.2.1 ni 192.168.1.1?

esto me paso con el cometrend ar5387un tb con el ultimo firm y meti el anterior y si me fue bien

Desconectado jar229

  • Moderador
  • *
  • Mensajes: 4605
Re: Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1375 en: 15-04-2013, 10:29 (Lunes) »
Hace mucho que no pruebo nuevas versiones.

Mañana llego a casa con un par de routers nuevos. Probaré esa compilación a ver... ???

Enviado desde mi U30GT-H usando Tapatalk 2

8carlos88

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1376 en: 15-04-2013, 18:02 (Lunes) »
hola todo solucionado...
cambie la la conexion de red a automatica y me permitio todo....lo de grabar la primera con luci la primera parte no he vuelto a probarlo.

gracias, un saludo y magnificos trabajos

masuele

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1377 en: 18-04-2013, 14:09 (Jueves) »
Hola muy buenas, me he registrado en el foro por que ya he roto 2 hg556a intentando seguir este tutorial que solo hace mas que darme dolor de cabeza por que aparte que no entiendo nada por que no se parece a ningun tutorial normal poniendo las cosas bien explicadas sino que parece que es solo pa que lo entendais los que teneis el royo mas que estudiao. Pero no solo en esta pagina sino en todo lo que el amigo google me a proporcionado al respecto no a dejado nada que lo explique claramente como instalar bien el openwrt en alguno de los 2 que ya he roto y aun me queda un tercero todos son revision c hg556a con wifi atheros, ahora bien querria que alguien me explicara por favor si no es tanta molestia los pasos para instalar desde 0 el openwrt en el que aun me queda funcionando? y ya que estamos si alguien sabe como reparar los 2 que ya e petao... lo unico que hice en los dos fue bajar el firmware que ya viene compilao de danitoool en el primer post se dan los links y luego ingreso como admin en la configuracion del router, actualizar firmware elijo el archivo .bin y espere 2 minutos. despues de eso tengo un router inserbible, no puedo hacere nada eso si me sale que esta el ethernet conectado en el pc pero en el router solo se enciende el de encencico y el resto de botones no hace ninguna funcion. Espero que me ayudeis muchas gracias. Igual me equivoco y esque soy muy noob en este tema por que no es que sea un simple usuario de pc y me extraña que algo tan a la vista sencillo solo dedicarle tiempo no me vaya... No es mas complicado que desarrollar una rom  ;D ;D

Desconectado jar229

  • Moderador
  • *
  • Mensajes: 4605
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1378 en: 18-04-2013, 14:31 (Jueves) »
Vaya forma más curiosa de presentarte y de pedir ayuda  ^-^

Si sabes leer, en el primer mensaje de este hilo, está explicado el método de instalación recomendado. Pero bueno ... para que no te canses mucho, te lo pongo aquí (para que veas que amables somos):

Citar
Modo de instalación recomendado:

    Con el router apagado pulsar botón de RESTART y mantenerlo pulsado.
    Encender el router y seguir con el botón apretado durante 20 segundos.
    Soltar el botón.
    Configurar la IP del ordenador como 192.168.1.2 y máscara de subred 255.255.255.0
    Abrir el navegador y acceder a http://192.168.1.1
« Última modificación: 18-04-2013, 14:34 (Jueves) por jar229 »

Noltari

  • Visitante
Re: [Desarrollo] OpenWrt en Huawei HG556a
« Respuesta #1379 en: 18-04-2013, 14:44 (Jueves) »
Hola muy buenas, me he registrado en el foro por que ya he roto 2 hg556a intentando seguir este tutorial que solo hace mas que darme dolor de cabeza por que aparte que no entiendo nada por que no se parece a ningun tutorial normal poniendo las cosas bien explicadas sino que parece que es solo pa que lo entendais los que teneis el royo mas que estudiao. Pero no solo en esta pagina sino en todo lo que el amigo google me a proporcionado al respecto no a dejado nada que lo explique claramente como instalar bien el openwrt en alguno de los 2 que ya he roto y aun me queda un tercero todos son revision c hg556a con wifi atheros, ahora bien querria que alguien me explicara por favor si no es tanta molestia los pasos para instalar desde 0 el openwrt en el que aun me queda funcionando? y ya que estamos si alguien sabe como reparar los 2 que ya e petao... lo unico que hice en los dos fue bajar el firmware que ya viene compilao de danitoool en el primer post se dan los links y luego ingreso como admin en la configuracion del router, actualizar firmware elijo el archivo .bin y espere 2 minutos. despues de eso tengo un router inserbible, no puedo hacere nada eso si me sale que esta el ethernet conectado en el pc pero en el router solo se enciende el de encencico y el resto de botones no hace ninguna funcion. Espero que me ayudeis muchas gracias. Igual me equivoco y esque soy muy noob en este tema por que no es que sea un simple usuario de pc y me extraña que algo tan a la vista sencillo solo dedicarle tiempo no me vaya... No es mas complicado que desarrollar una rom  ;D ;D
Pues yo opino que faltan puntos y comas...

Más que nada porque casi me ahogo :$...

Por cierto, estos routers no se rompen a no ser que sobrescribas el bootloader. Esos dos que "has roto" deberían ser recuperables realizando el procedimiento que te ha facilitado jar229.

Por cierto, ¿a qué te refieres con un tutorial poniendo las cosas bien explicadas?
No creo necesario poner un "guíaburros" para un procedimiento tan sencillo...

Saludos.