Hi all, I am developing the driver on STM32 platform and my intention is to make it independent of platform.
The driver makes use of external interrupt (from one of the general purpose I/O pins in case of STM32) to get interrupt request from Ethernet chip. I've found that, in eCos 3.0 implementation for STM32, the cyg_drv_interrupt_... functions don't set up the AFIO_EXTICRx register, which is necessary in order to connect particular I/O pin with the EXTI logic. The driver can always arrange for this outside the standard functions, but such an approach produces a driver which is tied not only to Ethernet chip, but to platform too. I wish if some of cyg_drv_interrupt_...() could arrange the whole external interrupt signal train based solely on the interrupt vector given to it. This is possible for STM32, since interrupt vectors bear unambiguous info on the assigned GPIO pin. Are there plans to provide such functionality? Another solution is external function provided from application within the private data structure, to be called from drivers init function. The driver is still platform-independent and the application programmer should take care for marshaling of interrupt. Thoughts or suggestions? Ilija Stanislevik