[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5403EF50.3080706@gmail.com>
Date: Mon, 01 Sep 2014 12:00:16 +0800
From: Chen Gang <gang.chen.5i5j@...il.com>
To: Guenter Roeck <linux@...ck-us.net>, linux-kernel@...r.kernel.org
CC: Guan Xuetao <gxt@...c.pku.edu.cn>,
Grant Likely <grant.likely@...aro.org>
Subject: Re: Status of 'unicore32' architecture in Linux kernel
Firstly, what you have done encourage me, thanks.
On 9/1/14 7:51, Guenter Roeck wrote:
> Status of 'unicore32' architecture in Linux kernel
> --------------------------------------------------
>
> The idea was to create a working kernel and initramfs for the ongoing Linux
> kernel test project. This summary describes the result of this effort.
>
> Overall, conclusion is that the architecture would need some work
> (both in qemu and the kernel itself) to make it testable with qemu.
>
> Guenter
>
> ---------------------
> Toolchain used was from [1]. I did not attempt to build my own toolchain.
>
I also use it, but for me, hope we can use an open source toolchain for
it, in the future. If possible, I will be glad to join for it (develop
open source unicore32 gcc cross compiler with other related members).
> Configuration:
>
> make ARCH=unicore32 defconfig && make ARCH=unicore32
>
> This configuration currently fails to build in the upstream kernel.
> A patch to fix the problem has been submitted and is pending upstream
> integration [2]. With this patch merged, the 'defconfig' image can
> be built.
>
Thank you for what you have done.
> ----------------
> qemu
>
> Attempts to load the unicore32:defconfig image with qemu failed.
>
> Research points to [3], which includes a working unicore32 linux kernel
> in its linux repository [4], in branch unicore32-working. This branch
> includes a working unicore32 qemu configuration. It also includes
> a critical patch which is not available in the upstream kernel.
>
> unicore32: Add ocd console and qemu-defconfig to support qemu simulator
> This patch adds a primitive OCD console to communicate with qemu.
> The same code is already used for early console support.
>
> With this patch added, and with qemu_defconfig as provided by the same patch,
> it is possible to build and load a unicore32 image in qemu using the following
> qemu command line.
>
> qemu-system-unicore32 -curses -M puv3 -m 512 -kernel arch/unicore32/boot/zImage
>
For me, hope they also can be merged into upstream main line, next.
> Caveats:
> - The use of -nographic instead of -curses causes a qemu crash
> - The qemu emulation only accepts a built-in initramfs.
> - The only working image is arch/unicore32/boot/zImage.
> All other variants, arch/unicore32/boot/Image and vmlinux, cause a crash.
> The same (or a similar) crash is also seen if I don't provide a built-in
> kernel command line and try to load zImage.
> - There is no networking. There is another patch in the github linux
> respository [4] which is not available upstream. The driver was submitted
> for integration back in 2011 [5] but it was never accepted or merged.
>
For me, suggest also Cc to qemu-devel@...gnu.org, and gxt is the related
maintainer for qemu unicore32, too.
In the future (maybe several months later), I am glad to try to analyze
these caveats (but excuse me, at present, I have no enough time resource
on it).
> [1] http://mprc.pku.edu.cn/~guanxuetao/linux/
> [2] https://lkml.org/lkml/2014/8/31/86
> [3] https://github.com/gxt
> [4] git://github.com/gxt/linux.git
> [5] https://lkml.org/lkml/2011/5/27/17
>
Thanks.
--
Chen Gang
Open, share, and attitude like air, water, and life which God blessed
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists