I'm torn on whether this is fine generic, or should be something specific like stm32f4_usart.  The LM4 version would be completely different, but we shouldn't ever need both at once.  I think it can just be changed later if a need arises.