[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH RFC 09/15] libxc: arm: rename various bits of zimage load with 32 suffix



On 10/07/2013 05:39 PM, Ian Campbell wrote:
> Making room for a 64 bit implementation.
> 
> Also fix a typo and stop refering to it as a bzImage, which is an x86-ism.
> 
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Acked-by: Julien Grall <julien.grall@xxxxxxxxxx>

> ---
>  tools/libxc/xc_dom_armzimageloader.c |   44 
> ++++++++++++++++++++--------------
>  1 file changed, 26 insertions(+), 18 deletions(-)
> 
> diff --git a/tools/libxc/xc_dom_armzimageloader.c 
> b/tools/libxc/xc_dom_armzimageloader.c
> index 54728b8..b693390 100644
> --- a/tools/libxc/xc_dom_armzimageloader.c
> +++ b/tools/libxc/xc_dom_armzimageloader.c
> @@ -36,12 +36,6 @@
>   */
>  #define GUEST_RAM_BASE 0x80000000
>  
> -#define ZIMAGE_MAGIC_OFFSET 0x24
> -#define ZIMAGE_START_OFFSET 0x28
> -#define ZIMAGE_END_OFFSET   0x2c
> -
> -#define ZIMAGE_MAGIC 0x016f2818
> -
>  struct minimal_dtb_header {
>      uint32_t magic;
>      uint32_t total_size;
> @@ -50,7 +44,17 @@ struct minimal_dtb_header {
>  
>  #define DTB_MAGIC 0xd00dfeed
>  
> -static int xc_dom_probe_zimage_kernel(struct xc_dom_image *dom)
> +/* ------------------------------------------------------------ */
> +/* 32-bit zImage Support                                        */
> +/* ------------------------------------------------------------ */
> +
> +#define ZIMAGE32_MAGIC_OFFSET 0x24
> +#define ZIMAGE32_START_OFFSET 0x28
> +#define ZIMAGE32_END_OFFSET   0x2c
> +
> +#define ZIMAGE32_MAGIC 0x016f2818
> +
> +static int xc_dom_probe_zimage32_kernel(struct xc_dom_image *dom)
>  {
>      uint32_t *zimage;
>      uint32_t end;
> @@ -69,13 +73,13 @@ static int xc_dom_probe_zimage_kernel(struct xc_dom_image 
> *dom)
>      }
>  
>      zimage = (uint32_t *)dom->kernel_blob;
> -    if ( zimage[ZIMAGE_MAGIC_OFFSET/4] != ZIMAGE_MAGIC )
> +    if ( zimage[ZIMAGE32_MAGIC_OFFSET/4] != ZIMAGE32_MAGIC )
>      {
> -        xc_dom_printf(dom->xch, "%s: kernel is not a bzImage", __FUNCTION__);
> +        xc_dom_printf(dom->xch, "%s: kernel is not an arm32 zImage", 
> __FUNCTION__);
>          return -EINVAL;
>      }
>  
> -    end = zimage[ZIMAGE_END_OFFSET/4];
> +    end = zimage[ZIMAGE32_END_OFFSET/4];
>  
>      /*
>       * Check for an appended DTB.
> @@ -94,7 +98,7 @@ static int xc_dom_probe_zimage_kernel(struct xc_dom_image 
> *dom)
>      return 0;
>  }
>  
> -static int xc_dom_parse_zimage_kernel(struct xc_dom_image *dom)
> +static int xc_dom_parse_zimage32_kernel(struct xc_dom_image *dom)
>  {
>      uint32_t *zimage;
>      uint32_t start, entry_addr;
> @@ -111,7 +115,7 @@ static int xc_dom_parse_zimage_kernel(struct xc_dom_image 
> *dom)
>      v_start = rambase + 0x8000;
>      v_end = v_start + dom->kernel_size;
>  
> -    start = zimage[ZIMAGE_START_OFFSET/4];
> +    start = zimage[ZIMAGE32_START_OFFSET/4];
>  
>      if (start == 0)
>          entry_addr = v_start;
> @@ -134,6 +138,10 @@ static int xc_dom_parse_zimage_kernel(struct 
> xc_dom_image *dom)
>      return 0;
>  }
>  
> +/* ------------------------------------------------------------ */
> +/* Common zImage Support                                        */
> +/* ------------------------------------------------------------ */
> +
>  static int xc_dom_load_zimage_kernel(struct xc_dom_image *dom)
>  {
>      void *dst;
> @@ -148,7 +156,7 @@ static int xc_dom_load_zimage_kernel(struct xc_dom_image 
> *dom)
>          return -1;
>      }
>  
> -    DOMPRINTF("%s: kernel sed %#"PRIx64"-%#"PRIx64,
> +    DOMPRINTF("%s: kernel seg %#"PRIx64"-%#"PRIx64,
>                __func__, dom->kernel_seg.vstart, dom->kernel_seg.vend);
>      DOMPRINTF("%s: copy %zd bytes from blob %p to dst %p",
>                __func__, dom->kernel_size, dom->kernel_blob, dst);
> @@ -158,16 +166,16 @@ static int xc_dom_load_zimage_kernel(struct 
> xc_dom_image *dom)
>      return 0;
>  }
>  
> -static struct xc_dom_loader zimage_loader = {
> -    .name = "Linux zImage (ARM)",
> -    .probe = xc_dom_probe_zimage_kernel,
> -    .parser = xc_dom_parse_zimage_kernel,
> +static struct xc_dom_loader zimage32_loader = {
> +    .name = "Linux zImage (ARM32)",
> +    .probe = xc_dom_probe_zimage32_kernel,
> +    .parser = xc_dom_parse_zimage32_kernel,
>      .loader = xc_dom_load_zimage_kernel,
>  };
>  
>  static void __init register_loader(void)
>  {
> -    xc_dom_register_loader(&zimage_loader);
> +    xc_dom_register_loader(&zimage32_loader);
>  }
>  
>  /*
> 


-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.