QEmu + PXA27x patch

因為目前有需要跑 PXA27x的 Simulation來寫Bootloader,可是我慣用平台是M$的Windows,找了一些Open Source 的Emulator program 後看到QEmu有用 MinGW 的Windows version(Cygwin 已經放棄它,用它不如VMWare + Linux) 
但是目前QEmu 還沒有Support PXA XScale 系列 但是經過Google search 在目前有下列

Fw: [Qemu-devel] PXA27x processor support (XScale)

Click to flag this post 4 stars

by Warner Losh-4 Feb 07, 2007; 03:31pm :: Rate this Message: – Use ratings to moderate (?)

Reply | Reply to Author | View Threaded | Show Only this Message

FYI.  This looks interesting.


  for anybody interested I uploaded a patch containing support for
Intel’s PXA270 processor emulation for qemu. The patch is against
current CVS (or 0.9.0) and you can find it at


(450 kB). PXA is a series of embedded processors used in PDAs, mobile
phones and other devices. PXA is an ARM based system-on-chip. 27x is
the newest out of the ones produced by Intel. PXA 25x and 260 devices
can be emulated using the same code. Main additions are:

 – On-chip peripherals: DMA, interrupt controller, GPIOs, sysem
timers, memory manager, clocks manager, power manager, LCD controller,
PCMCIA cards controller, MMC/SD host controller, I2C device, USB host
(OHCI), I2S controller, SSP controller, UARTs, an RTC.

 – NAND memory emulation – should work for all chips supported by
Linux given the ID of the chip to emulate (small or large page).
 – PCMCIA bus with hotplugging (added "info pcmcia" command for
listing sockets and inserted cards).
 – an IBM/hitachi microdrive, reuses existing IDE code adding the
CF-ATA command set.
 – ADS7846 touchscreen controller from Texas Instruments (used in maaany PDAs).
 – Wolfson WM8750 audio codec chip (I2C slave).
 – Maxim MAX1111 ADC chip.
 – Maxim MAX7310 gpio expander chip (I2C slave).
 – SD card emulator (unchanged from the omap support patch)
 – iwMMXt coprocessor support (untested).
 – some bugfixes.

I’m posting this as is because I won’t have time to make a final
clean-up and I was asked for it by some persons who want to emulate
pxa270 based devices. I also want to avoid duplicating code. One case
of duplication is the I2C bus, there was a different I2C bus recently
merged in qemu. Our implementation is slightly more detailed (as need
by some I2C hosts) and does some buffering, but is 8-bit only.
(hw/i2c.h should probably be made into a template that implements 8
and 16 bit i2c included two time from vl.h).


Qemu-devel mailing list

但是該網址已經失效或是網站維護中? 去信詢問不知是不是我的破英文讓對方搞不懂,因此只有另謀管道了,實際上在台灣一樣有一個計畫是PXA270 Linux 由 OrzLab 發起,主要負責的人是 鼎鼎有名的熱血工讀生 JServ, 因此我就厚顏找上 http://orzlab.blogspot.com/2007/03/intelmarwell-pxa27x.html,向Jserv 提出要求,果不期然,Jserv 在昨日已有回應並提供一個 linked 可以下載上述patch。
特此感謝 !! 但是根據 JServ 的說明該 patch 並未implement HW emulate 害我還是一整個 Orz。看來還是要硬上目前的Physical HW了
剛剛又用 Google一次另外發現這篇 email 看起來 Andrew 應該有收到不少回應才是,下列網址此時仍有作用(Mar. 22 2007)


[Qemu-devel] [PATCH] ARM XScale core features. PXA270 and PXA255 emulation.

andrzej zaborowski
Sat, 17 Mar 2007 06:50:00 -0800

Implements basic differences between XScale and plain ARM. The patch
also adds the main on-chip peripherals of PXA2xx: interrupt
controller, DMA, GPIO controller, SSP, I2C, I2S busses, UARTs, FIR
port, RTC, Clock/Power/Memory managers.

There's also an api to hook funcitons to coprocessor writes and reads
becaue PXA uses those in various on-chip peripherals (and they're
supposed to be faster than memory IO access to the same peripherals,
on the real hardware).

[Apparently, this patch is too big for the list software, this time I
uploaded it at 
instead of attaching. All 17 files I sent yesterday are in
http://students.mimuw.edu.pl/~az258116/qemu-pxa-patches.tar ]




WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )


您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s