Chris Holgate <[EMAIL PROTECTED]> writes: > Hi folks, > > I came across a couple of HAL issues while putting together my new SPI > driver for the STM32. I appreciate that the maintainers are overloaded > with eCos 3.0 work at the moment, so I'll defer to them as to whether > any of this needs fixing now and can provide more information/patches on > request. > > 1) It's not possible to set pullups on I/Os using the provided > functions. This is a trivial one-line fix to stm32-misc.c. > > 2) External interrupts don't work as they stand. This requires a few > changes to the STM32 var_intr.h. If required I can tidy up my changes > there and provide a patch which I've tested using a single I/O > (EXTINT0), but which would probably benefit from a bit more testing > using other I/O configurations.
I can easily believe that both of these don't quite work. I didn't do much testing in this area, so any changes to make it work are appreciated. > 3) I've now got full register maps for the AFIO, DMA and SPI blocks. > For development purposes I've kept these in a separate file from the > STM32 var_io.h, but can provide the file for merging if required. So long as they match the existing naming and layout conventions these can be added to var_io.h very easily. > > FYI, I now have a DMA-based SPI driver that is fully functional in > kernel mode, but will need one or two changes (and some testing!) to > make it play nicely in non-kernel mode. Probably best to leave that > until the 3.0 release is done, though. You can mainly test polled operation in the kernel just by temporarily forcing the polled parameter to true. -- Nick Garnett eCos Kernel Architect eCosCentric Limited http://www.eCosCentric.com The eCos experts Barnwell House, Barnwell Drive, Cambridge, UK. Tel: +44 1223 245571 Registered in England and Wales: Reg No: 4422071