From: Julien Grall <julien.grall@linaro.org>
To: Oleksandr Dmytryshyn <oleksandr.dmytryshyn@globallogic.com>,
Ian Campbell <ian.campbell@citrix.com>,
Stefano Stabellini <stefano.stabellini@citrix.com>,
Tim Deegan <tim@xen.org>,
xen-devel@lists.xen.org
Subject: Re: [PATCH v2] xen: arm: introduce uImage probe function for Dom0
Date: Wed, 20 Aug 2014 10:59:47 -0500 [thread overview]
Message-ID: <53F4C5F3.2090301@linaro.org> (raw)
In-Reply-To: <1408529074-20013-1-git-send-email-oleksandr.dmytryshyn@globallogic.com>
Hi Oleksandr,
On 20/08/14 05:04, Oleksandr Dmytryshyn wrote:
> Patch adds a possibility to boot dom0 kernel from uImage.
> This is needed to improve boot-time. Comparing to zImage,
> uImage is not packed, therefore we can save time needed
> to unpack.
Can you add a link to the uImage format in the commit message and/or patch?
> Signed-off-by: Oleksandr Dmytryshyn <oleksandr.dmytryshyn@globallogic.com>
> ---
> Changed since v1:
> * fixed commit message
> * added uimage structure definition
> * removed checking of the append device tree
>
> xen/arch/arm/kernel.c | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 63 insertions(+)
>
> diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c
> index d635a7e..20e6884 100644
> --- a/xen/arch/arm/kernel.c
> +++ b/xen/arch/arm/kernel.c
> @@ -16,6 +16,9 @@
>
> #include "kernel.h"
>
> +#define UIMAGE32_MAGIC 0x27051956
> +#define UIMAGE32_NMLEN 32
> +
Why did you add "32" in the name? The uimage header is architecture
independent.
[..]
> + start = be32_to_cpu(uimage.load);
> + len = be32_to_cpu(uimage.size);
> +
> + if ( len > size )
> + return -EINVAL;
> +
> + /*
> + * If start is sizeof(zimage) zImage is position independent -- load it
> + * at 32k from start of RAM.
The comment doesn't seems relevant. Why are you talking about zimage?
> + */
> + if ( start == 0 )
> + info->zimage.start = info->mem.bank[0].start + 0x8000;
> + else
> + info->zimage.start = start;
I know we have this check on zImage. As the kernel should be position
independent, otherwise it will unlikely boot as DOM0, I think it would
be better to print a warning if start != 0.
Or maybe we should just ignore it so the same uImage would be able to
work on both bare-metal and Xen.
> +
> + info->zimage.kernel_addr = addr + sizeof(uimage);
> + info->zimage.len = len;
> + info->entry = info->zimage.start;
> + info->load = kernel_zimage_load;
> +
> +#ifdef CONFIG_ARM_64
> + info->type = DOMAIN_32BIT;
> +#endif
As said a bit earlier, the uImage is architecture independent. You have
to check the arch field to know the kernel is 32 or 64 bits.
Regards,
--
Julien Grall
prev parent reply other threads:[~2014-08-20 15:59 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-20 10:04 [PATCH v2] xen: arm: introduce uImage probe function for Dom0 Oleksandr Dmytryshyn
2014-08-20 15:59 ` Julien Grall [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53F4C5F3.2090301@linaro.org \
--to=julien.grall@linaro.org \
--cc=ian.campbell@citrix.com \
--cc=oleksandr.dmytryshyn@globallogic.com \
--cc=stefano.stabellini@citrix.com \
--cc=tim@xen.org \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).