[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Xen on ARMv8
On Mon, 2013-12-09 at 19:22 +0530, Vijay Kilari wrote: > On Fri, Dec 6, 2013 at 8:55 PM, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote: > I don't have any work around as of now. I just reverted changes made > to pl011 driver in staging branch on top of stable 4.3. I see couple of > patches that has changed pl011 registers initialization. > > I will check once I get the my setup is up & running. OK, thanks. > > >> (XEN) Using PSCI for SMP bringup > [..] > >> (XEN) Panic on CPU 0: > >> (XEN) Unable to copy the DTB to dom0 memory (rc = 18446744073709551602) > >> (XEN) **************************************** > > > > It looks like you are trying to load an ELF format kernel, which > > probably doesn't work for Linux. Try passing it the > > arch/arm64/boot/Image and it should work. > > > > (ELF is useful for *BSD I think, which is why we don't just nuke this > > support right now) > > > Yes, I have set my Image to vmlinux (stripped) for 4.3 stable as it was > failing > to load plain arch/arm64/boot/Image > I forget to revert back this change with staging branch. Now I could > boot Xen hypervisor. Excellent! > Thanks for this help. > > But my console on dom0 is not showing any logs. > However ARMv8 simulator shows that dom0 is booted and > cpu has entered idle loop. Do you have console=hvc0 on your dom0 command line and CONFIG_HVC_XEN in your kernel build? You might also want to try enabling earlyprintk, either via a second UART not used by Xen, or the vuart which Xen replaces its console with for dom0 (assuming your Xen console driver exports the right hooks) or with something like: diff --git a/arch/arm64/kernel/early_printk.c b/arch/arm64/kernel/early_printk.c index fbb6e18..9302d7a 100644 --- a/arch/arm64/kernel/early_printk.c +++ b/arch/arm64/kernel/early_printk.c @@ -26,6 +26,8 @@ #include <linux/amba/serial.h> #include <linux/serial_reg.h> +#include <asm/xen/hypercall.h> + static void __iomem *early_base; static void (*printch)(char ch); @@ -52,6 +54,11 @@ static void smh_printch(char ch) : : "r" (&ch) : "x0", "x1", "memory"); } +static void xen_printch(char ch) +{ + HYPERVISOR_console_io(CONSOLEIO_write, 1, &ch); +} + /* * 8250/16550 (8-bit aligned registers) single character TX. */ @@ -80,6 +87,7 @@ struct earlycon_match { static const struct earlycon_match earlycon_match[] __initconst = { { .name = "pl011", .printch = pl011_printch, }, { .name = "smh", .printch = smh_printch, }, + { .name = "xen", .printch = xen_printch, }, { .name = "uart8250-8bit", .printch = uart8250_8bit_printch, }, { .name = "uart8250-32bit", .printch = uart8250_32bit_printch, }, {} _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |