[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: Porting Xen to Jetson Nano
Hi, On 23/07/2020 05:26, Christopher Clark wrote: On Wed, Jul 22, 2020 at 10:59 AM Srinivas Bangalore <srini@xxxxxxxxxx> wrote:Dear Xen experts, Would greatly appreciate some hints on how to move forward with this one…Hi Srini, I don't have any strong recommendations for you, but I do want to say that I'm very happy to see you taking this project on and I am hoping for your success. I have a newly-arrived Jetson Nano sitting on my desk here, purchased with the intention of getting Xen up and running on it, that I just haven't got to work on yet. I'm also familiar with Chris Patterson, Kyle Temkin and Ian Campbell's previous Tegra Jetson patches and it would be great to see some further progress made from those. I agree that it would be good to have the support in upstream! In my recent experience with the Raspberry Pi 4, one basic observation with ARM kernel bringup is that if your device tree isn't good, your dom0 kernel can be missing the configuration it needs to use the serial port correctly and you don't get any diagnostics from it after Xen attempts to launch it, so I would just patch the right serial port config directly into your Linux kernel (eg. hardcode specific things onto the kernel command line) so you're not messing about with that any more. The other thing I would recommend is patching in some printks into the earliest part of the Xen parts of the Dom0 Linux kernel start code. Others who are more familar with Xen on ARM may have some better recommendations, but linux/arch/arm/xen/enlighten.c has a function xen_guest_init that looks like a good place to stuff some extra printks for some early proof-of-entry from your kernel, and that way you'll have some indication whether execution has actually commenced in there. Linux provides earlyprintk facilities that can be used in Xen. To enable it, you need to have your kernel built with CONFIG_EARLY_PRINTK=y and CONFIG_XEN=y. This can then be enabled by passing earlyprintk=xenboot on your command line. Note that Linux needs to detect you are using Xen before using earlyprintk. If you need earlier, then what I usually do is hacking xen_raw_console_write() (in drivers/tty/hvc/hvc_xen.c) and replace 'if (xen_domain())' with 'if (1)'. I don't think you're going to get a great deal of enthusiasm on this list for Xen 4.8.5, unfortunately; most people around here work off Xen's staging branch, and I'd be surprised to hear of anyone having tried a 5.7 Linux kernel with Xen 4.8.5. I can understand why you might start there from the existing patch series though. Right, 4.8.5 is now out of support and we improved Xen quite a lot since then. As a general recommendation, I would suggest to move the series to the latest staging once you get it working on 4.8.5. However, I don't see any reason why 5.7 wouldn't boot on 4.8.5. I will have a look at your stack trace and answer there. Best regards, -- Julien Grall
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |