|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 10/10] xen/arm: Handle different bootwrapper locations for Hip04 platform
>
> Hi Frediano,
>
> This could be merged in #1.
>
> Regards,
>
No, as it require the patch just before it so merging to #1 cause a commit that
does not compile
Frediano
> On 11/03/2014 10:12 AM, Frediano Ziglio wrote:
> > From: Zoltan Kiss <zoltan.kiss@xxxxxxxxxx>
> >
> > Signed-off-by: Zoltan Kiss <zoltan.kiss@xxxxxxxxxx>
> > ---
> > xen/arch/arm/platforms/hip04.c | 63
> > ++++++++++++++++++++++++++----------------
> > 1 file changed, 39 insertions(+), 24 deletions(-)
> >
> > diff --git a/xen/arch/arm/platforms/hip04.c
> > b/xen/arch/arm/platforms/hip04.c index 024c8a0..dec4984 100644
> > --- a/xen/arch/arm/platforms/hip04.c
> > +++ b/xen/arch/arm/platforms/hip04.c
> > @@ -136,7 +136,7 @@ static void hip04_cluster_up(unsigned int cluster)
> >
> > static int __init hip04_smp_init(void) {
> > - struct dt_device_node *np, *np_fab;
> > + struct dt_device_node *np, *np_fab, *bw;
> > const char *msg;
> > u64 addr, size;
> >
> > @@ -150,30 +150,45 @@ static int __init hip04_smp_init(void)
> > if ( !np_fab )
> > goto err;
> >
> > - msg = "failed to get bootwrapper-phys\n";
> > if ( !dt_property_read_u32(np, "bootwrapper-phys",
> > - &hip04_boot.bootwrapper_phys) )
> > - goto err;
> > -
> > - msg = "failed to get bootwrapper-size\n";
> > - if ( !dt_property_read_u32(np, "bootwrapper-size",
> > - &hip04_boot.bootwrapper_size) )
> > - goto err;
> > -
> > - msg = "failed to get bootwrapper-magic\n";
> > - if ( !dt_property_read_u32(np, "bootwrapper-magic",
> > - &hip04_boot.bootwrapper_magic) )
> > - goto err;
> > -
> > - msg = "failed to get relocation-entry\n";
> > - if ( !dt_property_read_u32(np, "relocation-entry",
> > - &hip04_boot.relocation_entry) )
> > - goto err;
> > -
> > - msg = "failed to get relocation-size\n";
> > - if ( !dt_property_read_u32(np, "relocation-size",
> > - &hip04_boot.relocation_size) )
> > - goto err;
> > + &hip04_boot.bootwrapper_phys) ) {
> > + u32 boot_method[4];
> > + bw = dt_find_compatible_node(NULL, NULL, "hisilicon,hip04-
> bootwrapper");
> > + msg = "hisilicon,hip04-bootwrapper missing in DT\n";
> > + if ( !bw )
> > + goto err;
> > +
> > + msg = "failed to get boot-method\n";
> > + if ( !dt_property_read_u32_array(bw, "boot-method",
> boot_method, 4) )
> > + goto err;
> > + hip04_boot.bootwrapper_phys = boot_method[0];
> > + hip04_boot.bootwrapper_size = boot_method[1];
> > + hip04_boot.bootwrapper_magic = 0xa5a5a5a5;
> > + hip04_boot.relocation_entry = boot_method[2];
> > + hip04_boot.relocation_size = boot_method[3];
> > + }
> > + else
> > + {
> > + msg = "failed to get bootwrapper-size\n";
> > + if ( !dt_property_read_u32(np, "bootwrapper-size",
> > + &hip04_boot.bootwrapper_size) )
> > + goto err;
> > +
> > + msg = "failed to get bootwrapper-magic\n";
> > + if ( !dt_property_read_u32(np, "bootwrapper-magic",
> > + &hip04_boot.bootwrapper_magic) )
> > + goto err;
> > +
> > + msg = "failed to get relocation-entry\n";
> > + if ( !dt_property_read_u32(np, "relocation-entry",
> > + &hip04_boot.relocation_entry) )
> > + goto err;
> > +
> > + msg = "failed to get relocation-size\n";
> > + if ( !dt_property_read_u32(np, "relocation-size",
> > + &hip04_boot.relocation_size) )
> > + goto err;
> > + }
> >
> > relocation = ioremap_nocache(hip04_boot.relocation_entry,
> > hip04_boot.relocation_size);
> >
>
>
> --
> Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |