Hello microblaze maintainers:

I tried to run upstream qemu for microblaze, but failed. It seems only
special qemu branch can run it. And after try Xilinx qemu branch, I got
"segment fault" which is related with "-dtb".  So I want to consult:

 - Can our main upstream qemu (not other branches) run microblaze?

 - Is what I have done for Xilinx related qemu correct?

The related operation for Xilinx related qemu is below:

 * For kernel:

   - building:

     git clone https://github.com/Xilinx/linux-xlnx.git
     cd linux-xlnx
     make ARCH=microblaze 
CROSS_COMPILE=/upstream/release/bin/microblaze-gchen-linux- mmu_config
     make ARCH=microblaze 
CROSS_COMPILE=/upstream/release/bin/microblaze-gchen-linux-

   - output:

     arch/microblaze/boot/linux.bin
     scripts/dtc/dtc

   - get 'system.dtb':

     ./scripts/dtc/dtc -I dts -O dtb -o system.dtb 
arch/microblaze/boot/dts/system.dts

 * For ramdisk:

   wget 
http://www.wiki.xilinx.com/file/view/microblaze_complete.cpio.gz/419243588/microblaze_complete.cpio.gz

 * For qemu:

   - building:

     git clone git://github.com/Xilinx/qemu.git
     ./configure --target-list="arm-softmmu,microblazeel-softmmu" --enable-fdt 
--disable-kvm
     make

   - running:

     ./arm-softmmu/qemu-system-arm -M arm-generic-fdt -nographic -smp 2 
-machine linux=on -serial mon:stdio -dtb ../linux-xlnx/system.dtb \
       -kernel ../linux-xlnx/arch/microblaze/boot/linux.bin -initrd 
../microblaze_complete.cpio.gz

   - result:

     Segmentation fault (core dumped) (after a simple try, I am sure, it is 
caused by "dtb").

And excuse me, at present, I have to only focus on fixing upstream qemu
issues (I have no enough time resource for other qemu branches), please
understand.

Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

Reply via email to