Hi,

> On 3 Jun 2020, at 19:09, Julien Grall <jul...@xen.org> wrote:
> 
> 
> 
> On 03/06/2020 18:13, CodeWiz2280 wrote:
>> Hi Julien,
> 
> Hello,
> 
> In general, we avoid top post on xen-devel, instead we reply inline. I 
> believe gmail should allow you to do it :).
> 
>> The offset is already applied to the memory nodes in the device tree, 
>> meaning a direct Linux boot from uboot would have only the 36-bit addresses 
>> in the device tree (0x8_0000_0000 and 0x8_8000_0000).  Linux would start 
>> executing from a 32-bit address space however and then switch over to the 
>> aliased 36-bit addresses in the device tree as discussed below by 
>> early_paging_init().
>> I had to add the 32-bit memory node 0x8000_0000 in uboot in place of the 
>> 0x8_0000_0000 node otherwise Xen would detect the 32-bit processor and panic 
>> on "Unable to detect the first memory bank" in domain_build.c. 
> 
> So for 32-bit Xen requires to have the first bank below 4GB. This is because 
> you can't boot from a physical address above 32-bit.
> 
> Obviously, this check wouldn't work on your platform because all your memory 
> will be above 4GB.

I think that the Keystone board has low memory accessible at 2 different 
address (one low and one high).

I would here suggest to have a dtb with 2 regions (one under 4GB and one over) 
and remove from the region over 4G the area already addressed by the region 
under 4GB.

Does that make sense ?

Cheers
Bertrand

> 
>> If I leave only the 36-bit addresses in the device tree and skip past the 
>> panic check in domain_build.c, then I could not get the dom0 kernel to boot 
>> at all.  I believe I would only see "Serial input to DOM0" and nothing else 
>> at that point.
> 
> Which would make sense per above.
> 
>> Yes, leaving LPAE support on for the kernel is preferred.
> 
> Ok, so the solution I suggested below should work. Unfortunately, I don't 
> have time to work on it. Although, I would be more than happy to answers 
> questions and reviewing the patches.
> 
> Would you be willing to have a try to implement it?
> 
> Cheers,
> 
> -- 
> Julien Grall


Reply via email to