Instalando GNU/Linux Debian en la BeagleBoard

Gracias al excelente howto de Robert Nelson, a la gente de OpenEmbedded y al Qemu, la instalación de Debian en la placa ha sido casi trivial, sin apenas sorpresas. Una vez entendido el funcionamiento de los modos de USB que permite la placa y cómo utilizar el puerto Ethernet que proporciona el hub USB que estoy utilizando, todo lo demás fue un paseo.

Ahora mismo ya puedo conectar la placa al pc mediante un cable serie null-modem y además acceder a la placa por ssh desde el pc, montar el sistema de archivos raíz por NFS, etc.

Tengo que ver qué versión parcheada del kernel es más conveniente para esta revisión de la placa (la C3). Normalmente, el procedimiento para instalar un kernel Linux en esta placa consiste en obtener la versión que queramos del kernel para OMAP3 (la familia del procesador que lleva la placa) y después aplicar los parches necesarios de entre los que liberan los de OpenEmbedded, para adaptar el kernel a nuestra placa de la forma más precisa posible.

Para ahorrar tiempo y problemas, he optado de momento por probar la instalación con varias versiones ya compiladas del kernel parcheado, construido y proporcionado por Robert Nelson, con lo que me he ahorrado todo el proceso de compilación cruzada del kernel. Todas las que he probado funcionan sin problemas, pero tendría que ver de todas formas cuál viene mejor. Más adelante tendré que construir un kernel a medida de todas formas, para tener un núcleo más pequeño y más apropiado para la placa, así que iré comentando. Pero de momento no es tan prioritaria esa tarea, porque con lo que hay hecho ya funciona todo correctamente. La construcción a medida del kernel es más por motivos didácticos que otra cosa.

Como decía, hubo un momento de crisis hasta que logré hacer funcionar los dispositivos que hay conectados por USB (el puerto Ethernet que trae el hub). El motivo es que la placa tiene dos puertos USB: uno OTG (On The Go) que se puede configurar como host y como esclavo, y otro EHCI que funciona como host. Supuestamente si conectamos al puerto OTG un conector tipo mini-A, que puentea un par de pines, el puerto se configura como host, pero yo conecté ahí el hub usb y no terminaba de funcionar bien el puerto Ethernet. La otra opción era alimentar la placa por el jack de alimentación en lugar de por el OTG y conectar el hub al puerto EHCI. Así funcionó del tirón, así que así se queda.

Conocidas estas cosillas, lo demás es igual que trabajar con Linux en una máquina de escritorio. Seguramente aparecerá algún contratiempo cuando pruebe los phidgets en la placa, pero para eso todavía queda un tiempo.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: