Hi Ian, can we push multiboot v2 support for Xen/ARM still into 4.3? It looks like it can coexists with zImage in the same binary - the multiboot structure can be put just behind the zImage header and the code can determine how it has been started: zImage bootloaders clears r0, multiboot one''s would set r0 to the MB magic. I will sketch a patch tomorrow, just wondering if we can have this in 4.3 to have a sane booting protocol from the very beginning. Of course bootloaders need to be enabled also, I could take care of the u-boot port. Regards, Andre.
On Fri, 2013-05-24 at 00:38 +0200, Andre Przywara wrote:> Hi Ian, > > can we push multiboot v2 support for Xen/ARM still into 4.3?I''m OK with it in principal, since it sounds like it should be rather unobtrusive.> It looks like it can coexists with zImage in the same binary - the > multiboot structure can be put just behind the zImage header and the > code can determine how it has been started: zImage bootloaders clears > r0, multiboot one''s would set r0 to the MB magic. > I will sketch a patch tomorrow, just wondering if we can have this in > 4.3 to have a sane booting protocol from the very beginning.My main concern is that AFAIK multiboot2 on ARM is not well (at all?) defined so we may (lets face it: probably will, Murphy''s law and all) end up with 4.3.0 having something which isn''t actually multiboot baked into it. However I would support backporting an incremental fix to implement the final protocol into 4.3.x so that''s probably ok.> Of course bootloaders need to be enabled also, I could take care of the > u-boot port.That would be great of course! Ian.
On 05/24/2013 10:36 AM, Ian Campbell wrote: Ian,>> can we push multiboot v2 support for Xen/ARM still into 4.3? > > I''m OK with it in principal, since it sounds like it should be rather > unobtrusive. > >> It looks like it can coexists with zImage in the same binary - the >> multiboot structure can be put just behind the zImage header and the >> code can determine how it has been started: zImage bootloaders clears >> r0, multiboot one''s would set r0 to the MB magic. >> I will sketch a patch tomorrow, just wondering if we can have this in >> 4.3 to have a sane booting protocol from the very beginning. > > My main concern is that AFAIK multiboot2 on ARM is not well (at all?) > definedActually I did not find any ARM extension so far, aside from one hobbyist project, as it seems. So basically we would set the rules here. The actual machine dependent interface is rather simple, for x86 for instance: eax: multiboot magic, ebx: pointer to multiboot structure, and some definitions like MMU off and protected mode. Translated to ARM that would mean: r0: multiboot magic, r1: pointer to multiboot structure, r2: dtb pointer (optional, could well be a tag in the multiboot structure). The rest are the standard requirements we have when entering Xen or the Linux kernel. So I would not expect many problems from this (famous last words ;-)> so we may (lets face it: probably will, Murphy''s law and all) > end up with 4.3.0 having something which isn''t actually multiboot baked > into it. However I would support backporting an incremental fix to > implement the final protocol into 4.3.x so that''s probably ok.That sounds fine. I am OK with having it in Xen 4.3.1, I just don''t want to wait for 4.4. Thanks, Andre.
On Fri, 2013-05-24 at 17:35 +0200, Andre Przywara wrote:> On 05/24/2013 10:36 AM, Ian Campbell wrote: > > Ian, > > >> can we push multiboot v2 support for Xen/ARM still into 4.3? > > > > I''m OK with it in principal, since it sounds like it should be rather > > unobtrusive. > > > >> It looks like it can coexists with zImage in the same binary - the > >> multiboot structure can be put just behind the zImage header and the > >> code can determine how it has been started: zImage bootloaders clears > >> r0, multiboot one''s would set r0 to the MB magic. > >> I will sketch a patch tomorrow, just wondering if we can have this in > >> 4.3 to have a sane booting protocol from the very beginning. > > > > My main concern is that AFAIK multiboot2 on ARM is not well (at all?) > > defined > > Actually I did not find any ARM extension so far, aside from one > hobbyist project, as it seems. So basically we would set the rules here.I''m not sure we really have the freedom to just wander off ourselves and define what multiboot on arm means by simply committing code to Xen. That said I''ve no idea what the process would be -- but it at least needs to be discussed with the multiboot folks and some appropriate ARM folks and a patch agreed against some document somewhere.> The actual machine dependent interface is rather simple, for x86 for > instance: > eax: multiboot magic, ebx: pointer to multiboot structure, and some > definitions like MMU off and protected mode. > Translated to ARM that would mean: > r0: multiboot magic, r1: pointer to multiboot structure, r2: dtb pointer > (optional, could well be a tag in the multiboot structure). > The rest are the standard requirements we have when entering Xen or the > Linux kernel. > So I would not expect many problems from this (famous last words ;-)Yes, I don''t imagine it will be hard to define, but it needs to be done in the right forum, whatever that is.> > so we may (lets face it: probably will, Murphy''s law and all) > > end up with 4.3.0 having something which isn''t actually multiboot baked > > into it. However I would support backporting an incremental fix to > > implement the final protocol into 4.3.x so that''s probably ok. > > That sounds fine. I am OK with having it in Xen 4.3.1, I just don''t want > to wait for 4.4. > > Thanks, > Andre. >