Visto que con las X no hay manera y que tenemos que terminar el proyecto en curso, nos conformaremos con la Xubuntu 6.06LTS que funciona perfectamente salvo que en modo VESA, por lo que el ratón va a saltos, pero al menos el sistema es usable con un poco de paciencia.
Lo que tenemos que hacer ahora es conseguir acceder desde un programa de usuario a una tarjeta colocada en el bus PC/104, la cual dispone de un espacio de memoria de 1MB a la que es necesario leer para configurar la tarjeta y poder trabajar con ella. El problema es. ¿Dónde demonios está situado ese MB de memoria? Si se ejecuta un lspci, la salida es:
> lspci
0000:00:01.0 Host bridge: Advanced Micro Devices [AMD]: Unknown device 2080 (rev 30)
0000:00:01.1 VGA compatible controller: Advanced Micro Devices [AMD]: Unknown device 2081
0000:00:01.2 Entertainment encryption device: Advanced Micro Devices [AMD]: Unknown device 2082
0000:00:09.0 Ethernet controller: Intel Corporation 8255xER/82551IT Fast Ethernet Controller (rev 10)
0000:00:0f.0 ISA bridge: Advanced Micro Devices [AMD]: Unknown device 2090 (rev 03)
0000:00:0f.2 IDE interface: Advanced Micro Devices [AMD]: Unknown device 209a (rev 01)
0000:00:0f.4 USB Controller: Advanced Micro Devices [AMD]: Unknown device 2094 (rev 02)
0000:00:0f.5 USB Controller: Advanced Micro Devices [AMD]: Unknown device 2095 (rev 02)
Como podemos ver existe un ISA bridge en el bus 0, slot F, función 0 (0:f.0). Si obtenemos más información acerca del bridge obtenemos:
>lspci -v -s 0:f.0
0000:00:0f.0 ISA bridge: Advanced Micro Devices [AMD]: Unknown device 2090 (rev 03)
Subsystem: Advanced Micro Devices [AMD]: Unknown device 2090
Flags: 66MHz, medium devsel
I/O ports at 6000 [size=8]
I/O ports at 6100 [size=256]
I/O ports at 6200 [size=64]
I/O ports at 1000 [size=32]
I/O ports at 9d00 [size=128]
I/O ports at 9c00 [size=64]
Que como vemos dispone de muchos huecos para puertos de entradas/salida (supongo que serán los de periféricos como el ratón, teclado, etc.) pero no aparece nada de memoria RAM de dispositivos del bus ISA. Por tanto, para poder ver la memoria de la tarjeta desde la CPU habrá que hacer un poco de magia negra.
Lo primero que hemos hecho es buscar en la BIOS alguna opción que permita una configuración manual del bus ISA, pero no hemos encontrado nada.
Lo que sí hemos encontrado en la BIOS es una opción denominada algo parecido a:
PS/2 mouse DISABELED
Arghhhh. La m.... que p.... a los de Kontron. Por defecto ponen el ratón inhabilitado en la BIOS y no indican semejante cosa con luces de neón en sus manuales. ¡Vamos hombre! Pa matarlos.
Resulta que el ratón iba mal porque al inhabilitarlo en la BIOS las interrupciones del ratón no llegaban a la CPU y las pobres X debían de estar haciendo polling. Ahora el ratón ya va como la seda. Si pudiera les pedía indemnización a los de Kontron ;)
Volviendo al tema de la tarjeta, como vamos a tener que acceder al HW, necesitamos instalar los includes del kernel, y de paso aprovechamos también para instalar nuestro editor favorito: emacs y las páginas de manual para desarrollo (llamadas al sistema y a las librerias). Los paquetes elegidos son:
linux-headers-2.6.15-26 emacs21 manpages-dev glibc-doc
Con esto ya podemos empezar ha hacer pruebas con la dichosa tarjetita, pero eso será en el siguiente "post".
No hay comentarios:
Publicar un comentario