ron minnich [mailto:rminnich@gmail.com] wrote:
]A number of us used bochs years ago for coreboot debugging. IIRC it ]"just worked" when we tried it. ] ]ron
I remember in 2008 when a guy named Kevin proposed changing the bochs bios from asm code to C code because the build environment for the asm version was next to impossible to setup. Others were skeptical about his proposal to use gcc for 16-bit x86 code generation, but it worked out OK. Today that C coded BIOS is the default coreboot payload. Though I have not used bochs for several years, I bet SeaBIOS would still work without too much trouble.
But coreboot itself is a different story I imagine. Today, the DDR3 memory reference code used by AMD contains elaborate algorithms for receiver enable training, DQS read and write position training, etc. I think it takes a significant amount of memory controller emulation code to make the AMD DDR3 initialization pass. I imagine the situation is similar for Intel memory reference code. Same for HT and QPI.
In 2004 I modified bochs enough to boot a production HP ProLiant DL145 BIOS (http://notabs.org/bochs/). That took some work, but the work mostly involved adding enough Opteron/AMD8111 PCI config space emulation to make the AMI BIOS happy. Memory initialization was relatively simple in those days. In 2004, bochs had no PCI config space emulation at all as far as I remember.
AMD simnow has enough chipset and memory controller to boot an unmodified coreboot. The biggest limitation of AMD simnow is the public version doesn't support fusion and more recent processors.
Intel can boot unmodified images using Simics, according to something I read a while back. But I don't think Intel has a public version of Simics.
Thanks, Scott
]On Thu, Jan 9, 2014 at 5:22 PM, behrouz khosravi bz.khosravi@gmail.com wrote: ]> Hello every one. I have searched a lot on the Net to find my answer but ]> I didn't got any helpful results so I decided to use the mailing list. my ]> question is that has any body ported coreboot to Bochs emulator ]> successfully. ]> I know that Qemu or Simnow are available for emulating a platform but I like ]> to test it Bochs. ]> thanks