kernel/os/arch: Fix Cortex-M irq priority setting #3423
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
os_arch_os_init() initialized interrupt priority level for all interrupts using incorrect array limit taken from sizeof instead of ARRAY_SIZE.
For Cortex-M0 field IP is array of uint32_t unlike all other version where this array consist of uint8_t.
Now array is iterated using ARRAY_SIZE(NVIC->IP) to limit instead of sizeof(NVIC->IP) and for Cortex-M33
ARRAY_SIZE(NVIC->IPR).
For all non Cortex-M0 IP or IPR is uint8_t but this changes it to use ARRAY_SIZE() anyway to make it consistent.