Index ¦ Archives ¦ Atom ¦ RSS > Tag: qemu

Moxie on Altera's Cyclone II, and a Chance Encounter

I recently fired up the Altera software, Quartus II, and spent a little time porting the Marin SoC to the popular Cyclone II based DE2 board. There's no external memory support yet, but on-chip memory is working, and it looks like the on-chip bootloader is coming up properly. As usual …


QEMU 1.5 includes Moxie support

QEMU 1.5 was just released the other day, and in the "And much more..." category I'm happy to say that it includes Moxie support!

This release contains basic Moxie core support, with the imaginary "moxiesim" board support. I have some local changes that provide Marin SoC emulation, and can …


And time ticks on...

The interrupt controller is working now, as is the timer and my exception handling firmware. So now I'm able to write a basic stop-watch application, where the 7-segment display simply increments the count every second. Yes, this sounds basic, but there's a lot of complexity under the hood! This is …


Summer is over, so put away the white pants and start submitting patches!

It's been a while since my last update. What can I say... summer was nice.

But now, back to business! I've just committed some long overdue patches to the upstream GNU tools:


Kernel update: device trees and kernel threads

I've spent a lot of time in airports/planes/hotels recently, which is good news for the moxie linux port. It runs about 6.5M instructions, booting up to the point where a couple of kernel threads are created. However, a few context switches later it all comes tumbling down …


Quick update...

A few quick MoxieDev updates...

  • The verilog output patch is in binutils
  • The moxie ports for binutils, newlib, libgloss and gdb are all upstream. Waiting on sim and gcc reviews.
  • The upstream qemu team have switched to git, so I've rebased MoxieDev's qemu against this new repository.

Also, I've been …


Adding a Real Time Clock

After a UART, one of the most useful and interesting peripherals you can add to a board is a Real Time Clock (RTC). Qemu comes with a simulation of Freescale's MC146818 RTC chip. Adding it to our qemu-defined board was as simple as....

   rtc_mm_init(0x400, 0, 0, 0);

This makes …


Board Support Packages

Today we're introducing the notion of Board Support Packages (BSPs) to the moxie toolchain.

A BSP provides all of the configuration data and code requires to target a specific hardware platform. This mostly involves linker scripts, platform initialization code, and hardware abstraction support libraries.

Until recently the gdb sim was …


Debugging with the moxie qemu simulator

I've finally cracked the gdb+qemu puzzle, so now we can debug code running on the qemu moxie simulator!

The last little gotcha was that the simulated $pc wasn't being updated after single-stepping. This will get you nowhere fast! But it's all fixed now, and here's how it works...

$ qemu-system-moxie …


Progress...

I made some progress on using moxie-elf-gdb with qemu the other day. Qemu has an integrated gdb stub, so GDB speaks to it via the remote protocol. It's still not quite there, but getting close. I'm anxious to get it working, as it's the last step before hacking on the …

© Anthony Green. Built using Pelican. Theme by Giulio Fidente on github.