I'm writing a library for the AVR (more specifically, the ATMEGA328p) that requires global interrupts to be enabled.
Is it common practice for a library to enable global interrupts in its initialization routine, or is it more common to expect the application to enable them?
On the one hand, some developers might want tight control over when the global interrupts are enabled or disabled, which means my library's documentation would have to say that they need to be enabled.
On the other hand, I want to make my library relatively easy to use right away without the end-user having to Read The Fine Manual before my library will work as advertised.
What do you guys think? Does it depend on my target audience?