Pronto trabajaré en una implementación de Ethernet para una capacidad básica (sin SO) en un procesador basado en ARM. Estoy algo familiarizado con el modelo de controlador de Ethernet en el libro de controladores de dispositivo de Linux, pero me pregunto si hay una referencia para implementar un controlador de Ethernet para un SoC ejecutado con una pila de software personalizada.
¿Hay implementaciones de referencia para procesadores de arquitectura ARM o hay alguna guía sobre cómo implementar un controlador Ethernet en un procesador ARM?
networking
arm
drivers
ethernet
netskink
fuente
fuente
Respuestas:
Es un poco difícil saber qué estás buscando cuando pides metal desnudo, especialmente cuando no especificas la arquitectura ...
Para una aplicación integrada, utilizando un sistema operativo liviano (dependiendo de lo que considere un sistema operativo), busque en la fuente mbed un dispositivo similar al que le interesa (suponiendo un microcontrolador ARM Cortex-M).
La última documentación de mbed Network Sockets está aquí, aunque eso no describe las implementaciones de HAL que son específicas de los dispositivos (probablemente sean contribuidas por los fabricantes de dispositivos).
Esto puede estar lo suficientemente cerca del metal desnudo como para usarlo directamente. De lo contrario, el proveedor del dispositivo seguramente proporcionará una implementación de ejemplo de bajo nivel dentro de su propio marco.
fuente
Si está seguro de usar ARM, puede echar un vistazo a los controladores Ethernet de Keil para ARM . Es bastante prometedor.
Como puede ver, hay ejemplos de controladores de Ethernet para varias placas de evaluación que tienen diferentes chips de diferentes fabricantes. Como Atmel, NXP o ST Microelectonics.
fuente