Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
- Update to latest QEMU version (I tried merging version 2.2.0 but had trouble due to changes in the unit testing IRQ intercept code). Probably the best approach would be this: remove the stm32 unit tests, perform the merge and resolve the conflicts, then restore the unit tests making any changes necessary.
- Incorporate patch detailed here: https://devel.rtems.org/wiki/TBR/BSP/STM32F105
- Need to check on this issue: "when running code linked from 0x08000000, you need to do a rom_reset() before cpu_reset(), to copy the image to processor memory, otherwise the code used to read MSP & PC will fail."
- Convert STM32 to QOM framework. Make Cortex M3 into a device and have the STM32 device extend it. Also make NVIC into a device (as well as all other peripherals). This would require changing the Stellaris chip as well. When done, the entire microntroller would be browsable in the device tree (and ultimately controllable via the tree as well).
- Write a QOM clock device (I started this in the stm32_clock branch).
- Enhance the unit testing framework.
- Allow devices to be instantiated directly from the unit test so that a device can be tested independently without having to use a machine.
- Enhance timer testing. One idea I have is to expose testing properties through the QOM tree. These for example could be used to manually control a timer - the timer could be paused and then triggered from within a unit test so that a device can be tested in a deterministic manner.
- Look into pulling in code from the Pebble QEMU emulator.
Clone this wiki locally
Press h to open a hovercard with more details.