domingo, 17 de agosto de 2014

TS-72XX Guia Compilar Kernel Ubuntu/Debian

Guia de Compilacion de Kernel




A continuacion se presentara una guia de como compilar el kernel , y posteriormente instalarla en la SD card de la ts7260, pero deberia ser aplicable a la TS-72XX, TS-7300, y el TS-7400 con modificaciones menores.


Se debe tener instalado el siguiente paquete en orden para no tener problemas de compilacion.

Para Debian / Ubuntu:
sudo apt-get install libncurses5-dev libncursesw5-dev

Requerimientos:

HARDWARE
  • TS-7260 SBC
  • Lector de tarjetas SD USB 
  • PC de Desarrollo con Linux instalado

ARCHIVOS
  • La cadena de herramientas de compilación cruzada (crosstool-linux-gcc-3.3.4-glibc-2.3.2-0.28rc39.tar.bz2)
  • El código fuente del núcleo (tskernel-2.4.26-TS11-src.tar.gz)
  • El archivo defconfig ts7260 de opciones del kernel (incluido en el kernel de fuente)
  • La imagen original de la tarjeta SD (sdimage-new.dd.bz2)
Nota: Pueden ser Descargados de : http://www.embeddedarm.com/software/arm-linux-26-ts72xx.php ó compiando y pegando el nombre en la barra de busqueda de san google.

Procedimiento


Crear Imagen SD.
  1. Descargue la imagen de la tarjeta SD desde el sitio FTP:
    • wget ftp://ftp.embeddedarm.com/ts-ARM-sbc/ts-7260-linux/binaries/ts-images/sdimage-new.dd.bz2
  2. Use 'bzcat' y 'dd' para copiar la imagen a la totalidad de la tarjeta SD (suponiendo tarjeta SD nodo de dispositivo se encuentra en / dev / sdb):
    •  Bzcat sdimage-new.dd.bz2 | dd of = / dev / sdb

Compilar Kernel

  1. Cambie a su directorio personal 
    • cd ~ 
  2. Cree un directorio de trabajo para compilar un kernel dentro 
    • mkdir ts7200_kernel_compil
  3. Obtenga el codigo fuente del kernel y crosstool  de el  sitio FTP  
    • wget ftp://ftp.embeddedarm.com/ts-arm-sbc/ts-7260-linux/\ cross-toolchains/crosstool-linux-gcc-3.3.4-glibc-2.3.2-0.28rc39.tar.bz2 
    • wget ftp://ftp.embeddedarm.com/ts-arm-sbc/ts-7260-linux/\ sources/tskernel-2.4.26-ts11-src.tar.gz
  4. Extraiga el código fuente del kernel y crosstool y limpie después de eso 
    • tar xjvf crosstool-linux-gcc-3.3.4-glibc-2.3.2-0.28rc39.tar.bz2 
    • tar xzvf tskernel-2.4.26-ts11-src.tar.gz
    • rm -f *.tar.bz2
  5. Cambie de directorio al de codigo fuente del kernel 
    • cd linux24/
  6. Prepare el Makefile para la compilación cruzada usando el editor de texto "vi" o cualquier otro de su preferencia y edite la linea donde diga 'CROSS_COMPILE" para que refleje lo que a sido escrito continuación , guarde y salga del archivo. 
    • vi Makefile
      • CROSS_COMPILE = $(shell cd $(TOPDIR)/../usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/ && pwd)/arm-linux-
  7. Prepare el archivo de configuración .config 
    • make menuconfig
      • Cargue el archivo de configuración de la TS-7260 presionando "L" tres veces, luego presione "ENTER", ay especifique: arch/arm/def-configs/ts7260 Cuando acabe, guarde y regrese a la raiz del menuconfig (pagina de inicio)
      • Cambie la linea de comando predeterminado del kernel presionando "G", luego presione "Enter", "D", "Enter", y especifique: root=/dev/ram0 init=/linuxrc console=ttyAM0,115200 printk=4 loops=499712 Cuando acabe, guarde y regrese a la raiz del menuconfig (pagina de inicio)
      • Salga del menuconfig y asegúrese de poner "Yes" para guardar sus cambios.
  8. Compile el Kernel
    • make dep
    • make Image
  9. [OPCIONAL] Copile, instale y guarde los módulos
    • make modules
    • make modules_install
    • tar czvf modules_2.4.26-ts11.tar.gz /lib/modules/2.4.26-ts11/

Actualizando la tarjeta SD

  1. Utilice "dd" para copiar la imagen en bruto o puro del kernel "Image" a la tarjeta SD
    • dd if=arch/arm/boot/Image of=/dev/sdb1 
  2. [OPCIONAL] Monte la tercera particion de la tarjeta SD para extraer los módulos.
    • mkdir /mnt/debian_fs
    • mount /dev/sdb3 /mnt/debian_fs
    • tar xzvf modules_2.4.26-ts11.tar.gz -C /mnt/debian_fs/
  3. Desmonte la tarjeta SD
    • umount /dev/sdb[1,2,3]

Pasos Finales

  1. Tome la nueva creada y actualizada tarjeta SD en el lector de tarjeta SD e insertelo en la TS-7260 
  2. Conecte el cable de consola, inicie minicom con las configuraciones apropiadas para la TS-7260, y finalmente aplique energía.(encendido)
  3. Verifique que su kernel fue cargado apropiadamente viendo la fecha de compilación. 
    • uname -a
  4. Una vez verificado, Ahora puede salir a Debían completo
    • exit
Proximamente: Pruebas y Notas Adicionales.

1 comentario:

  1. Buen dia, muy buena informacion!!, tendrias algun correo donde contactarte?, Tengo una propuesta que puede ser de su interes.

    ResponderBorrar