Autor Tema: LEDE en Livebox DV4210  (Leído 2197 veces)

0 Usuarios y 1 Visitante están viendo este tema.

antares

  • Visitante
LEDE en Livebox DV4210
« en: 13-06-2017, 17:56 (Martes) »
Estoy tratando de usar un DV4210 con LEDE como pasarela de VOIP a PSTN para poder utilizar la linea fija desde un cliente VOIP remoto y ya lo tengo medio funcionando.
Pero ahora quiero convertir el segundo puerto USB en host y no se como utilizar las indicaciones del parche https://wiki.openwrt.org/toh/inventel/dv4210#usb_mod
Tengo instalado el LEDE SDK 17.01.1 y compilo sin problemas el paquete baresip (cliente VOIP) pero parchear y compilar ese modulo USB se me esta atravesando.
¿Una ayudita?



Desconectado Tki2000

  • Moderador
  • *
  • Mensajes: 1793
Re: LEDE en Livebox DV4210
« Respuesta #1 en: 14-06-2017, 10:25 (Miércoles) »
Estoy tratando de usar un DV4210 con LEDE como pasarela de VOIP a PSTN para poder utilizar la linea fija desde un cliente VOIP remoto y ya lo tengo medio funcionando.
Pero ahora quiero convertir el segundo puerto USB en host y no se como utilizar las indicaciones del parche https://wiki.openwrt.org/toh/inventel/dv4210#usb_mod
Tengo instalado el LEDE SDK 17.01.1 y compilo sin problemas el paquete baresip (cliente VOIP) pero parchear y compilar ese modulo USB se me esta atravesando.
¿Una ayudita?

El tema parece bastante delicado, a nivel electrónico.

Aparte de eso, ¿Seguro que con 16MB de RAM vas a poder ejecutar lo que quieres?
El parche es para Backfire, porque las restricciones de memoria son bastantes grandes en este router. Ni idea si se puede portar a otros kernels superiores al de Backfire.

¿No te serviría poner un hub USB alimentado para hacer lo que quieras?
No habrás entendido algo, hasta que seas capaz de explicárselo a tu abuela...
Hacemos pantallas con píxeles casi invisibles, para luego ampliar la letra porque no la vemos... Bonita paradoja...
Creamos analfabetos tecnológicos con una velocidad pasmosa. Todo el mundo "maneja" tecnología, casi nadie sabe lo que tiene entre las manos, pero todo el mundo opina.
El analfabetismo, antes, pasaba desapercibido. Ahora, se transmite por Internet y las redes sociales.

antares

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #2 en: 14-06-2017, 13:40 (Miércoles) »
El DV4210 lo tengo con 32MB y subido a 300MHz. Se defiende bastante bien con LEDE. Lo de aislar los dos planos de masa lo hare con la dremel y un alfiler afilado en bisel.
El problema lo tengo en aplicar esas modificaciones que hay que hacer en el ohci-bcm63xx.c para que el segundo puerto USB actue como host y generar un modulo ohci-hcd.ko en LEDE.
Segui todos los pasos para el paquete kmod-usb-ohci igual que con el paquete baresip pero cuando hago un make menuconfig no me aparece nada en kernel-modules USB-Support, solo me sale todo lo relacionado con el paquete baresip, y este si se compila bien.

danitool

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #3 en: 15-06-2017, 14:12 (Jueves) »
Hola antares. El soporte USB cambió mucho desde la versión Backfire. Lo he estado ojeando y creo que este parche de kernel debe funcionar con las nuevas versiones de LEDE:
Código: [Seleccionar]
--- a/arch/mips/bcm63xx/boards/board_livebox.c
+++ b/arch/mips/bcm63xx/boards/board_livebox.c
@@ -35,8 +35,9 @@
  .has_uart0 = 1,
  .has_enet0 = 1,
  .has_enet1 = 1,
  .has_pci = 1,
+ .num_usbh_ports = 2,
 
  .enet0 = {
  .has_phy = 1,
  .use_internal_phy = 1,
--- a/arch/mips/bcm63xx/usb-common.c
+++ b/arch/mips/bcm63xx/usb-common.c
@@ -85,9 +85,9 @@
 
  spin_lock_irqsave(&usb_priv_reg_lock, flags);
 
  if (BCMCPU_IS_6348())
- bcm_rset_writel(RSET_OHCI_PRIV, 0, OHCI_PRIV_REG);
+ bcm_rset_writel(RSET_OHCI_PRIV, 1, OHCI_PRIV_REG);
  else if (BCMCPU_IS_6358()) {
  reg = bcm_rset_readl(RSET_USBH_PRIV, USBH_PRIV_SWAP_6358_REG);
  reg &= ~USBH_PRIV_SWAP_OHCI_ENDN_MASK;
  reg |= USBH_PRIV_SWAP_OHCI_DATA_MASK;


Con cuidado el mod se logra hacer sin problemas, yo en su día usé herramientas punzantes tipo cutter y destornilladores pequeños, de forma bastante rudimentaria,  y todo salió bien, a día de hoy el livebox sigue funcionando con sus dos puertos USB internos como host.

Saludos

antares

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #4 en: 16-06-2017, 13:22 (Viernes) »
Pues muchas gracias por la ayuda. Voy a probarlo ya.
He estado mirando la documentacion de LEDE y creo que estos son los pasos que debo seguir:

git clone git://git.lede-project.org/source.git
cd source

./scripts/feeds update -a
./scripts/feeds install -a

make defconfig
make menuconfig

Selecciono "Target System bcm63xx" "Subtarget Generic" y "Target Profile Livebox 1"

Guardo el parche como "578-board_DV4210.patch" en "target/linux/brcm63xx/patches-4.4"

make target/linux/{clean,prepare} V=s QUILT=1

make V=s


¿Es correcto o me falta algo?

Un saludo


eduperez

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #5 en: 19-06-2017, 08:21 (Lunes) »
Antes de ejecutar "make defconfig", yo suelo bajar el fichero "config.seed" de la carpeta de LEDE donde están los instalables de mi plataforma, y guardarlo como ".config". De esta manera, empiezas con la misma configuración que se ha usado para generar esos instalables.

antares

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #6 en: 19-06-2017, 10:57 (Lunes) »
Me apunto lo del config.seed para la proxima compilacion. El parche funciona perfectamente y ya tengo el segundo USB actuando como host. Al final aisle el pin como dice danitool, rascando con un cutter hasta que deja de marcar continuidad con masa.


antares

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #7 en: 23-06-2017, 14:17 (Viernes) »
Ahora tengo un problema que no me aparecia con una version estable.
Para colgar y descolgar la linea telefonica utilizo el gpio31, pero tanto con la version que compilo yo como con la trunk que descargo me sale este error:

root@LEDE:~# cat /sys/class/gpio/gpiochip*/base | head -n1
475

root@LEDE:~# echo "506" > /sys/class/gpio/export
-ash: write error: Invalid argument


Y al arrancar con la configuracion por defecto tambien aparece un error  al configurar un pulsador:

root@LEDE:~# dmesg
[    5.225987] bcm6348-pinctrl fffe0400.pin-controller: pin gpio36 already requested by fffe0400.pin-controller; cannot claim for bcm63xx-gpio.1:479
[    5.239629] bcm6348-pinctrl fffe0400.pin-controller: pin-36 (bcm63xx-gpio.1:479) status -22
[    5.248363] gpio-keys-polled gpio-keys-polled: unable to claim gpio 479, err=-22
[    5.256151] gpio-keys-polled: probe of gpio-keys-polled failed with error -22


¿Sabeis si hay que activar alguna opcion al hacer el make menuconfig para que se puedan utilizar los gpios?
O mejor aun ¿Se podria aplicar el parche del segundo USB a una version estable?

Un saludo

Desconectado drvalium

  • Moderador Global
  • *
  • Mensajes: 17437
  • Misántropo
Re: LEDE en Livebox DV4210
« Respuesta #8 en: 23-06-2017, 18:05 (Viernes) »
hi

ese router ¿de que compañía es?

antares

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #9 en: 23-06-2017, 20:50 (Viernes) »
Era de Orange. Pero ahora de esa compañia solo conserva el logotipo de la carcasa.

Desconectado drvalium

  • Moderador Global
  • *
  • Mensajes: 17437
  • Misántropo
Re: LEDE en Livebox DV4210
« Respuesta #10 en: 24-06-2017, 20:56 (Sábado) »
Gracias, es que con esa compañía no podemos dar soporte a determinadas modificaciones por temas legales, pero todo está en regla.


saludos

danitool

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #11 en: 24-06-2017, 21:49 (Sábado) »
Este router en concreto es del fabricante Thomson, aunque originalmente eran aparatos diseñados por la compañía ya desaparecida llamada Inventel.

De la compañía del logo color naranja en nuestro caso no hay absolutamente nada, ni siquiera el bootloader original es usado para instalar OpenWRT. Si acaso lo único que hay es incumplimiento de licencias GPL  >:D por parte de la compañia con el logo de color naranja
« Última modificación: 24-06-2017, 21:50 (Sábado) por danitool »

antares

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #12 en: 24-06-2017, 22:47 (Sábado) »
Lo de utilizar este router en concreto es porque no lleva un circuito integrado FXO, y solo hay que puentear algunas pistas para que funcione la amplificacion, filtros de audio y cancelacion de eco. Luego se conectan al microfono y altavoz de una tarjeta de sonido USB, se usa un gpio para colgar/descolgar la linea y ya puedo utilizar las llamadas gratuitas a fijo y movil de mi linea telefonica (que no es de Orange) desde un cliente voip (que tampoco es de Orange). Mas o menos lo que hace un linksys SPA3000.
El error de los gpios creo que es porque han modificado el fichero "/target/linux/brcm63xx/dts/bcm6348.dtsi" y no debe de andar muy fino.
Probare a compilar una version de LEDE de hace 3 meses, a ver que tal va. Un saludo.

Desconectado drvalium

  • Moderador Global
  • *
  • Mensajes: 17437
  • Misántropo
Re: LEDE en Livebox DV4210
« Respuesta #13 en: 25-06-2017, 00:33 (Domingo) »
Parece ser que solo hay problemas al jugar con su firmware, por cambiarlo no debería haber problemas.

gracias por las aclaraciones ;)
« Última modificación: 25-06-2017, 00:33 (Domingo) por drvalium »

antares

  • Visitante
Re: LEDE en Livebox DV4210
« Respuesta #14 en: 27-06-2017, 21:44 (Martes) »
Compilando este git de lede (github.com/oerdnj/lede) de hace unos meses van bien los gpios y el parche del USB

root@dv4210 /root
  • # cat /sys/kernel/debug/gpio

GPIOs 475-506, platform/fffe0404.gpio-controller, bcm63xx-gpio.0:
 gpio-475 (                    |?                   ) out hi   
 gpio-476 (                    |?                   ) out lo   
 gpio-477 (                    |?                   ) out hi   
 gpio-478 (                    |?                   ) out lo   
 gpio-479 (                    |?                   ) out lo   
 gpio-481 (                    |ephy-reset          ) out hi   
 gpio-482 (                    |2                   ) in  hi   
 gpio-506 (                    |sysfs               ) out hi   

GPIOs 507-511, platform/fffe0400.gpio-controller, bcm63xx-gpio.1:
 gpio-511 ( 
 

Esto es lo que salia con la ultima version que daba el error:

root@LEDE:~# cat /sys/kernel/debug/gpio
GPIOs 475-479, platform/fffe0400.pin-controller, bcm63xx-gpio.1:

GPIOs 480-511, platform/fffe0400.pin-controller, bcm63xx-gpio.0:
 gpio-480 (                    |?                   ) out hi   
 gpio-481 (                    |?                   ) out lo   
 gpio-482 (                    |?                   ) out hi   
 gpio-483 (                    |?                   ) out lo   
 gpio-484 (                    |?                   ) out lo   
 gpio-486 (                    |ephy-reset          ) out hi 
 

Pues ya lo tengo funcionando. Si alguien esta interesado que me lo diga y pongo el codigo y fotos de las conexiones que hay que hacer en la placa.

Saludos