From mboxrd@z Thu Jan 1 00:00:00 1970 From: bharat gohil Subject: Re: ARM64:Porting xen to new hardware Date: Thu, 31 Aug 2017 16:43:12 +0530 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============7533644724238529758==" Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Oleksandr Tyshchenko Cc: Julien Grall , Stefano Stabellini , Xen Devel List-Id: xen-devel@lists.xenproject.org --===============7533644724238529758== Content-Type: multipart/alternative; boundary="94eb2c1cee58fa2a0c05580aba34" --94eb2c1cee58fa2a0c05580aba34 Content-Type: text/plain; charset="UTF-8" Hello Oleksandr, I had removed A72 cluster and tried to boot only two A35 but I got same error. Is anything added or missing in A35 compare to A53? Regards, Bharat On Wed, Aug 30, 2017 at 8:00 PM, bharat gohil wrote: > Hello Oleksandr, > Thank you very much for your input. > > Yes. agree. I will check by removing A72 core from DT. > > Thanks, > Bharat > > On Wed, Aug 30, 2017 at 7:44 PM, Oleksandr Tyshchenko > wrote: > >> Hi, >> >> Not sure that I am a competent person, just my assumptions. >> >> CCed ARM guys. >> >> On Tue, Aug 29, 2017 at 5:21 PM, bharat gohil wrote: >> > Hello All >> > >> > I am trying to run Xen on new hardware which has two A35 and one A72 >> core. >> > Xen booted intially but it hangs at smp_call_function(setup_virt_p >> aging_one, >> > (void *)val, 1) function call. >> >> It might be a consequence of that CPU cores are different. And they >> might have different set of features, or even settings. >> And these features/settings the boot CPU has don't compatible with >> other (non-boot) CPUs. >> Can you try not to bringup A72 core (remove it from DT or another >> way), leave only two A35 and see what will happen. >> >> > Find following log of Xen booting,same set of features. >> > >> > - UART enabled - >> > - CPU 00000000 booting - >> > - Current EL 00000008 - >> > - Xen starting at EL2 - >> > - Zero BSS - >> > - Setting up control registers - >> > - Turning on paging - >> > - Ready - >> > (XEN) Checking for initrd in /chosen >> > (XEN) RAM: 0000000040000000 - 00000000bfffffff >> > (XEN) >> > (XEN) MODULE[0]: 0000000044000000 - 000000004400fd5a Device Tree >> > (XEN) >> > (XEN) Command line: >> Why? Does your device-tree have bootargs? >> >> > (XEN) Placing Xen at 0x00000000bfe00000-0x00000000c0000000 >> > (XEN) Update BOOTMOD_XEN from 0000000040080000-0000000040194e01 => >> > 00000000bfe01 >> > (XEN) Domain heap initialised >> > (XEN) Booting using Device Tree >> > (XEN) Platform: Generic System >> > (XEN) Taking dtuart configuration from /chosen/stdout-path >> > (XEN) Looking for dtuart at "serial0", options "" >> > __ __ _ _ _ ___ _ _ _ >> > \ \/ /___ _ __ | || | / |/ _ \ _ _ _ __ ___| |_ __ _| |__ | | >> ___ >> > \ // _ \ '_ \ | || |_ | | | | |__| | | | '_ \/ __| __/ _` | '_ \| >> |/ _ \ >> > / \ __/ | | | |__ _|| | |_| |__| |_| | | | \__ \ || (_| | |_) | >> | __/ >> > /_/\_\___|_| |_| |_|(_)_|\___/ \__,_|_| >> |_|___/\__\__,_|_.__/|_|\___| >> > >> > (XEN) Xen version 4.10-unstable (bgohil@) (aarch64-linux-gnu-gcc >> > (Ubuntu/Linaro7 >> > (XEN) Latest ChangeSet: Fri Aug 11 19:02:51 2017 +0100 git:9053a74-dirty >> > (XEN) Processor: 410fd041: "ARM Limited", variant: 0x0, part 0xd04, rev >> 0x1 >> > (XEN) 64-bit Execution: >> > (XEN) Processor Features: 0000000000002222 0000000000000000 >> > (XEN) Exception Levels: EL3:64+32 EL2:64+32 EL1:64+32 EL0:64+32 >> > (XEN) Extensions: FloatingPoint AdvancedSIMD >> > (XEN) Debug Features: 0000000010305106 0000000000000000 >> > (XEN) Auxiliary Features: 0000000000000000 0000000000000000 >> > (XEN) Memory Model Features: 0000000000101122 0000000000000000 >> > (XEN) ISA Features: 0000000000011120 0000000000000000 >> > (XEN) 32-bit Execution: >> > (XEN) Processor Features: 00000131:00011011 >> > (XEN) Instruction Sets: AArch32 A32 Thumb Thumb-2 Jazelle >> > (XEN) Extensions: GenericTimer Security >> > (XEN) Debug Features: 03010066 >> > (XEN) Auxiliary Features: 00000000 >> > (XEN) Memory Model Features: 10201105 40000000 01260000 02102211 >> > (XEN) ISA Features: 02101110 13112111 21232042 01112131 00011142 >> 00011121 >> > (XEN) Using PSCI-1.0 for SMP bringup >> > (XEN) SMP: Allowing 3 CPUs >> > (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 13000 KHz >> > (XEN) GICv2: WARNING: The GICC size is too small: 0x1000 expected 0x2000 >> Sounds like GIC settings are not completely correct. >> Wrong GIC settings might lead to that IPIs won't work as expected. And >> boot CPU will >> get stuck waiting for another CPU. >> Just double check. >> >> > (XEN) GICv2 initialization: >> > (XEN) gic_dist_addr=0000000010510000 >> > (XEN) gic_cpu_addr=0000000010520000 >> > (XEN) gic_hyp_addr=0000000010540000 >> > (XEN) gic_vcpu_addr=0000000010560000 >> > (XEN) gic_maintenance_irq=25 >> > (XEN) GICv2: 384 lines, 6 cpus, secure (IID 0200143b). >> > (XEN) Using scheduler: SMP Credit Scheduler (credit) >> > (XEN) Allocated console ring of 32 KiB. >> > (XEN) Bringing up CPU1 >> > - CPU 00000001 booting - >> > - Current EL 00000008 - >> > - Xen starting at EL2 - >> > - Setting up control registers - >> > - Turning on paging - >> > - Ready - >> > (XEN) CPU 1 booted. >> > (XEN) Bringing up CPU2 >> > - CPU 00000200 booting - >> > - Current EL 00000008 - >> > - Xen starting at EL2 - >> > - Setting up control registers - >> > - Turning on paging - >> > - Ready - >> > (XEN) CPU 2 booted. >> > (XEN) Brought up 3 CPUs >> > (XEN) P2M: 40-bit IPA with 40-bit PA and 8-bit VMID >> > (XEN) P2M: 3 levels with order-1 root, VTCR 0x80023558 >> > >> > Can anyone guide me how to debug this problem or what could be wrong >> here? >> > >> > It looks, writing into VTCR_EL2 hang the system. >> > >> > -- >> > Regards, >> > Bharat Gohil >> > >> > >> > _______________________________________________ >> > Xen-devel mailing list >> > Xen-devel@lists.xen.org >> > https://lists.xen.org/xen-devel >> > >> >> -- >> Regards, >> >> Oleksandr Tyshchenko >> > > > > -- > Regards, > Bharat Gohil > Sr.Software Engineer > bharat.gohil@harman.com > +919427054633 <+91%2094270%2054633> > -- Regards, Bharat Gohil Sr.Software Engineer bharat.gohil@harman.com +919427054633 --94eb2c1cee58fa2a0c05580aba34 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello Oleksandr,

I had removed= A72 cluster and tried to boot only two A35 but I got same error.

Is anything added or missing in A35 compare to A53?

<= div>
Regards,
Bharat

On Wed, Aug 30, 2017 at 8:00 PM, bhar= at gohil <ghl.bhrt@gmail.com> wrote:
Hello Oleksandr,
Thank you very much for your input.

Yes. agree. I will check= by removing A72 core from DT.

Thanks,
Bharat

On Wed, Aug 30, 2017 at 7:44 PM, Oleksandr= Tyshchenko <olekstysh@gmail.com> wrote:
Hi,

Not sure that I am a competent person, just my assumptions.

CCed ARM guys.

On Tue, Aug 29, 2017 at 5:21 PM, bharat gohil <ghl.bhrt@gmail.com> wrote:
> Hello All
>
> I am trying to run Xen on new hardware which has two A35 and one A72 c= ore.
> Xen booted intially but it hangs at smp_call_function(setup_virt_paging_one,
> (void *)val, 1) function call.

It might be a consequence of that CPU cores are different. And they<= br> might have different set of features, or even settings.
And these features/settings the boot CPU has don't compatible with
other (non-boot) CPUs.
Can you try not to bringup A72 core (remove it from DT or another
way), leave only two A35 and see what will happen.

> Find following log of Xen booting,same set of features.
>
> - UART enabled -
> - CPU 00000000 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Zero BSS -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Checking for initrd in /chosen
> (XEN) RAM: 0000000040000000 - 00000000bfffffff
> (XEN)
> (XEN) MODULE[0]: 0000000044000000 - 000000004400fd5a Device Tree
> (XEN)
> (XEN) Command line: <NULL>
Why? Does your device-tree have bootargs?

> (XEN) Placing Xen at 0x00000000bfe00000-0x00000000c0000000
> (XEN) Update BOOTMOD_XEN from 0000000040080000-0000000040194e01 = =3D>
> 00000000bfe01
> (XEN) Domain heap initialised
> (XEN) Booting using Device Tree
> (XEN) Platform: Generic System
> (XEN) Taking dtuart configuration from /chosen/stdout-path
> (XEN) Looking for dtuart at "serial0", options ""<= br> >=C2=A0 __=C2=A0 __=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 _=C2=A0 _= =C2=A0 =C2=A0 _=C2=A0 ___=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0_=C2=A0 =C2=A0 =C2=A0 =C2=A0 _=C2=A0 =C2=A0 =C2= =A0_
>=C2=A0 \ \/ /___ _ __=C2=A0 =C2=A0| || |=C2=A0 / |/ _ \=C2=A0 =C2=A0 _= =C2=A0 =C2=A0_ _ __=C2=A0 ___| |_ __ _| |__ | | ___
>=C2=A0 =C2=A0\=C2=A0 // _ \ '_ \=C2=A0 | || |_ | | | | |__| | | | &= #39;_ \/ __| __/ _` | '_ \| |/ _ \
>=C2=A0 =C2=A0/=C2=A0 \=C2=A0 __/ | | | |__=C2=A0 =C2=A0_|| | |_| |__| |= _| | | | \__ \ || (_| | |_) | |=C2=A0 __/
>=C2=A0 /_/\_\___|_| |_|=C2=A0 =C2=A0 |_|(_)_|\___/=C2=A0 =C2=A0 \__,_|_= | |_|___/\__\__,_|_.__/|_|\___|
>
> (XEN) Xen version 4.10-unstable (bgohil@) (aarch64-linux-gnu-gcc
> (Ubuntu/Linaro7
> (XEN) Latest ChangeSet: Fri Aug 11 19:02:51 2017 +0100 git:9053a74-dir= ty
> (XEN) Processor: 410fd041: "ARM Limited", variant: 0x0, part= 0xd04, rev 0x1
> (XEN) 64-bit Execution:
> (XEN)=C2=A0 =C2=A0Processor Features: 0000000000002222 000000000000000= 0
> (XEN)=C2=A0 =C2=A0 =C2=A0Exception Levels: EL3:64+32 EL2:64+32 EL1:64+= 32 EL0:64+32
> (XEN)=C2=A0 =C2=A0 =C2=A0Extensions: FloatingPoint AdvancedSIMD
> (XEN)=C2=A0 =C2=A0Debug Features: 0000000010305106 0000000000000000 > (XEN)=C2=A0 =C2=A0Auxiliary Features: 0000000000000000 000000000000000= 0
> (XEN)=C2=A0 =C2=A0Memory Model Features: 0000000000101122 000000000000= 0000
> (XEN)=C2=A0 =C2=A0ISA Features:=C2=A0 0000000000011120 000000000000000= 0
> (XEN) 32-bit Execution:
> (XEN)=C2=A0 =C2=A0Processor Features: 00000131:00011011
> (XEN)=C2=A0 =C2=A0 =C2=A0Instruction Sets: AArch32 A32 Thumb Thumb-2 J= azelle
> (XEN)=C2=A0 =C2=A0 =C2=A0Extensions: GenericTimer Security
> (XEN)=C2=A0 =C2=A0Debug Features: 03010066
> (XEN)=C2=A0 =C2=A0Auxiliary Features: 00000000
> (XEN)=C2=A0 =C2=A0Memory Model Features: 10201105 40000000 01260000 02= 102211
> (XEN)=C2=A0 ISA Features: 02101110 13112111 21232042 01112131 00011142= 00011121
> (XEN) Using PSCI-1.0 for SMP bringup
> (XEN) SMP: Allowing 3 CPUs
> (XEN) Generic Timer IRQ: phys=3D30 hyp=3D26 virt=3D27 Freq: 13000 KHz<= br> > (XEN) GICv2: WARNING: The GICC size is too small: 0x1000 expected 0x20= 00
Sounds like GIC settings are not completely correct.
Wrong GIC settings might lead to that IPIs won't work as expected. And<= br> boot CPU will
get stuck waiting for another CPU.
Just double check.

> (XEN) GICv2 initialization:
> (XEN)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0gic_dist_addr=3D0000000010= 510000
> (XEN)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0gic_cpu_addr=3D0000000010520000=
> (XEN)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0gic_hyp_addr=3D0000000010540000=
> (XEN)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0gic_vcpu_addr=3D0000000010= 560000
> (XEN)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0gic_maintenance_irq=3D25
> (XEN) GICv2: 384 lines, 6 cpus, secure (IID 0200143b).
> (XEN) Using scheduler: SMP Credit Scheduler (credit)
> (XEN) Allocated console ring of 32 KiB.
> (XEN) Bringing up CPU1
> - CPU 00000001 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 1 booted.
> (XEN) Bringing up CPU2
> - CPU 00000200 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 2 booted.
> (XEN) Brought up 3 CPUs
> (XEN) P2M: 40-bit IPA with 40-bit PA and 8-bit VMID
> (XEN) P2M: 3 levels with order-1 root, VTCR 0x80023558
>
> Can anyone guide me how to debug this problem or what could be wrong h= ere?
>
> It looks, writing into VTCR_EL2 hang the system.
>
> --
> Regards,
> Bharat Gohil
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel= @lists.xen.org
> https://lists.xen.org/xen-devel
>

--
Regards,

Oleksandr Tyshchenko



--
Regards,
Bharat Gohil
Sr.Software Engine= er



--
Regar= ds,
Bharat Gohil
Sr.Software Engineer
+919427054633
--94eb2c1cee58fa2a0c05580aba34-- --===============7533644724238529758== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5v cmcveGVuLWRldmVsCg== --===============7533644724238529758==--