[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Xen on ARMv8
On Tue, Dec 10, 2013 at 5:59 PM, Vijay Kilari <vijay.kilari@xxxxxxxxx> wrote: > On Mon, Dec 9, 2013 at 7:34 PM, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote: >> 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? >> > > Changing console=hvc0 works. > > Kernel boot still fails. I have my rootfs of IDE(ATA) on AHCI. Because there > is > no link up interrupt from IDE and hence it fails to boot and mount rootfs. > Where as the same kernel boots fine without Xen > > From HW traces, I see that GIC does not raise IRQ. > > I am using kernel 3.10.14+. Can you please let me know Dom0 kernel > configuration. Missed to mention. On top of 3.10.14 I added following patches for arm64 1e33368 arm/xen: define xen_remap as ioremap_cached 71750f7 arm64/xen: introduce asm/xen header files on arm64 a554a92 xen/arm and xen/arm64: implement HYPERVISOR_tmem_op b80ef86 arm64/xen: introduce CONFIG_XEN and hypercall.S on ARM64 7605d0c xen/arm: disable cpuidle and cpufreq when linux is running as dom0 > I have enabled following configuration in dom0 kernel > > CONFIG_XEN_DOM0=y > CONFIG_XEN=y > CONFIG_XEN_NETDEV_FRONTEND=y > CONFIG_XEN_NETDEV_BACKEND=y > CONFIG_HVC_DRIVER=y > CONFIG_HVC_IRQ=y > CONFIG_HVC_XEN=y > CONFIG_HVC_XEN_FRONTEND=y > CONFIG_XEN_DEV_EVTCHN=y > CONFIG_XEN_BACKEND=y > CONFIG_XENFS=y > CONFIG_XEN_COMPAT_XENFS=y > CONFIG_XEN_XENBUS_FRONTEND=y > CONFIG_XEN_GNTDEV=y > CONFIG_XEN_PRIVCMD=y > > >> 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 |