1

I want to emulate the friendlyARM board, the Mini2440 or the mini6410, so I can get to practice the embedded programming, the QT programming and this due to some financial difficulties and strange import policy in my country.

Anyway, the problem is that I can't seem to understand what's the first step to proceed the emulation: Am running ubuntu 12.04 on VirtualBox then, I installed the qemu-kvn-extras then what ? Do I need a new kernel for qemu and the emulation process ? What's its specifications ? In the other hand, when I read all of the tutorials in the net, I can't see the hardware specification part : I mean where is the part in the "qemu-i386 command" that refers to the fact that I'm using Mini2440 ?

After a long period of research, I don't know whether I can emulate the board so I can get used to the u-boot and cross compiling, etc.. or it's just a dream I can't reach ..

auselen
  • 27,577
  • 7
  • 73
  • 114

2 Answers2

0

(Sorry for reviving an old thread but I had similar issues, so this might be useful for some other people, too)

To run my tests I used (see also man qemu-system-arm):

$ qemu-system-arm -machine versatilepb -cpu arm1176 -m 128M -nographic -kernel kernel.img

You might not want the -nographic here when you are testing Qt and need to replace kernel.img with the image you want to run. However, note that you need the ARM version of qemu qemu-system-arm. It will not work with the Intel version qemu-i386 as the mini6410 runs an ARM processor (the ARM1176JZF-S).

For me, connecting with gdb was also useful (-S halts the CPU at start, -s starts a gdbserver on port 1234):

$ qemu-system-arm -machine versatilepb -cpu arm1176 -S -s -m 128M -nographic -kernel kernel.img

And then:

$ arm-none-eabi-gdb
(gdb) target remote localhost:1234

By the way, host system can be any Linux distribution, so you do not need VirtualBox if your host is already Linux.

Another remark: I am currently struggling to get the interrupts to run on qemu (see also ARM Interrupt Handling in QEMU), so not sure if everything will work for you though.

Good luck! ;)

0

The closest thing I know about emulating the Mini2440 is that it's emulated on MAME.

The only problem is that you're not only stuck with the 3 pre installed OSes (Windows Mobile, old version Android and a Linux distro) but it's also slow and you can't connect to anything outside of the device itself.

You'll probably need a beefy computer if you want to run this, the beefier the PC is, the faster you can run it.

Plus, you can't use your mouse as a touch screen. You'll need to map out the touch screen controls that are already present in MAME if you want something like that.