Bonsoir,
Bilingual, impressive! :P
I’m OK with NVIC_SetVector(), and indeed, the driver that uses
Nordic’s function can call that in the driver init function — however,
I think it’s worth understanding why we want this located in RAM. It
seems reasonable to me to fix the interrupt vectors in .text and avoid
the NVIC_SetVector() call — it seems like we’re spending a bunch of
RAM on something that will never change dynamically.
Thoughts?
Personally, I can't remember the last time I had the interrupt vectors
anywhere except fixed in .text. I suspect 99% of the people working
with ARM Cortex devices are also familiar with and probably are sort of
expecting the typical 'weak' approach pushed by most CMSIS based vendor
startup code. That said ... I certainly don't feel strongly about this
either way, but you probably are losing a small chunk of SRAM for
something 0.1% of users might actually make meaningful use of.
Kevin