qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [RFC] armv7m_nvic


From: Liviu Ionescu
Subject: [Qemu-devel] [RFC] armv7m_nvic
Date: Thu, 4 Jun 2015 15:45:39 +0300

while working on the Cortex-M framework, I noticed that the current armv7m_nvic 
implementation is a bit old, and, to my opinion, not very fortunately 
structured.

first, it is named NVIC, but implements not only the NVIC registers, but some 
other register groups, like SysTick, system control, some IDs.

if the QEMU rule is to implement a physical contiguous memory space (0xE000E000 
- 0xE000EFFF) in one file, then probably the file should be named armv7m_scb.c 
(System Control Block), and it must implement all registers.

the modular alternative (that I generally favour) would be to split the memory 
space into functional slices (SystemControl, SysTick, NVIC, CPUID, MPU, Debug, 
SW Triggers, MCUIDs) and implement them as separate objects, probably in 
separate files.


the changes that I might need in QEMU might also require some updates in the 
exception processing and might also affect NVIC, so if you have any comments on 
how the current structure should be improved, I'm open to suggestions.


regards,

Liviu




reply via email to

[Prev in Thread] Current Thread [Next in Thread]