All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andre Przywara <andre.przywara@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, julien.grall@arm.com,
	bharat gohil <ghl.bhrt@gmail.com>
Subject: Re: ARM:Booting xen on pine64 board
Date: Tue, 4 Apr 2017 20:25:19 +0100	[thread overview]
Message-ID: <8e29c986-07f9-daec-539c-5694d7b68c61@arm.com> (raw)
In-Reply-To: <alpine.DEB.2.10.1704041202060.3039@sstabellini-ThinkPad-X260>

Hi,

On 04/04/17 20:02, Stefano Stabellini wrote:
> Also CC'ing Andre that I think has a pine64.
> 
> On Tue, 4 Apr 2017, Stefano Stabellini wrote:
>> On Sat, 1 Apr 2017, bharat gohil wrote:
>>> Hello
>>
>> Hello Bharat, thanks for your email.
>>
>>
>>> I am trying to boot xen(debug build) on pine64 ARM64 based board but its hangs at following position,
>>>
>>> - 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: 0000000041000000 - 000000007fffffff
>>> (XEN)
>>> (XEN) MODULE[0]: 000000007e200000 - 000000007e202000 Device Tree
>>> (XEN) MODULE[1]: 000000007e400000 - 000000007ef46a00 Kernel       console=hvc0 ro root=/dev/mmcblk0p2 clk_ignore_unused rootwait
>>> (XEN)  RESVD[0]: 000000007e200000 - 000000007e202000
>>> (XEN)
>>> (XEN) Command line: dtuart=serial0 earlyprint loglvl=all conswitch=x dom0_mem=128M
>>> (XEN) Placing Xen at 0x000000007fc00000-0x000000007fe00000
>>> (XEN) Update BOOTMOD_XEN from 000000007fe00000-000000007fefad81 => 000000007fc00000-000000007fcfad81
>>> (XEN) Booting using Device Tree
>>> (XEN) Domain heap initialised
>>> (XEN) Platform: Generic System
>>> (XEN) Looking for dtuart at "serial0", options ""
>>>  Xen 4.9-unstable
>>> (XEN) Xen version 4.9-unstable (bgohil@) (aarch64-linux-gnu-gcc (Linaro GCC 6.2-2016.11) 6.2.1 20161016) debug=n  Tue Mar 28 16:12:32 IST 2017
>>> (XEN) Latest ChangeSet: Fri Mar 24 14:19:47 2017 +0100 git:5b08f85
>>> (XEN) Processor: 410fd034: "ARM Limited", variant: 0x0, part 0xd03, rev 0x4
>>> (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: 0000000000001122 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-0.2 for SMP bringup
>>> (XEN) SMP: Allowing 4 CPUs
>>> (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 24000 KHz
>>> (XEN) GICv2 initialization:
>>> (XEN)         gic_dist_addr=0000000001c81000
>>> (XEN)         gic_cpu_addr=0000000001c82000
>>> (XEN)         gic_hyp_addr=0000000001c84000
>>> (XEN)         gic_vcpu_addr=0000000001c86000
>>> (XEN)         gic_maintenance_irq=25
>>> (XEN) GICv2: 224 lines, 4 cpus, secure (IID 0200143b).
>>> (XEN) Using scheduler: SMP Credit Scheduler (credit)
>>>
>>> but when I boot dtuart=<unknown value> say duart=xyz instead of dtuart=serial0, xen booted successfully but Dom0 crash while probing 'serial0' driver. 
>>>
>>> If I remove 'serial0' node from device tree, Dom0 boot successfully but unable to enter input into 'hvc' console. 
>>>
>>> what could be wrong here or missing something?
>>
>> What is your dom0 command line? Are you passing console=hvc0?
>>
>> It looks like pine64 is using an allwinner sun50i-uart, for which we
>> don't have a proper driver in Xen yet. That is probably the reason why
>> you can see some output from Xen, but you cannot type anything in later
>> in Dom0 (which is sent to Xen via the HVC console).  Please send a patch
>> to add a simple sun50i-uart driver (see xen/drivers/char/). Given that
>> both Xen and Linux are GPLv2, you can import code from Linux if you find
>> it appropriate.

The UART is exactly the same as in the other Allwinner SoCs, so there is
no need for a new UART driver.
Another issue inherited from the 32-bit Allwinner chips is that the
first four UARTs share a page, so they have to be blacklisted, as Xen
can't properly separate them.
You might want to look at xen/arch/arm/platforms/sunxi.c. Not sure if
this needs to be tied in arm64 somehow.

HTH,
Cheers,
Andre.

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

  reply	other threads:[~2017-04-04 19:23 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-01 11:32 ARM:Booting xen on pine64 board bharat gohil
2017-04-04 18:59 ` Stefano Stabellini
2017-04-04 19:02   ` Stefano Stabellini
2017-04-04 19:25     ` Andre Przywara [this message]
2017-04-04 20:45       ` Stefano Stabellini
2017-04-04 21:02         ` Julien Grall
2017-04-05 10:34           ` bharat gohil

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=8e29c986-07f9-daec-539c-5694d7b68c61@arm.com \
    --to=andre.przywara@arm.com \
    --cc=ghl.bhrt@gmail.com \
    --cc=julien.grall@arm.com \
    --cc=sstabellini@kernel.org \
    --cc=xen-devel@lists.xenproject.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.