> On 4 Jun 2020, at 09:59, Julien Grall <jul...@xen.org> wrote:
> 
> 
> 
> On 04/06/2020 09:02, Bertrand Marquis wrote:
>> Hi,
> 
> Hi Bertrand,
> 
>>> 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.
> 
> I thought about this. However, in an earlier reply, David wrote:
> 
> "4. The dom0 kernel will boot from xen if the early_paging_init switch step 
> is skipped, and the low mem stays in 32-bit....but there is a
> problem with the peripherals so this is not an acceptable solution."
> 
> It is not clear to me what sort of issues will arise with the peripherals. 
> But I have assumed that it wouldn't be possible for Dom0 to keep using the 
> memory below 4GB.

I would have thought that linux would have need some memory, even small in the 
32bit space in order to boot.
I could understand that some memory in the low address space needs to be 
reserved by Linux as DMA area for peripherals not supporting 36-bit addresses, 
but the whole low memory sounds like a big restriction.

Would it be possible to have a bit more information on the “problem with 
peripherals” here ?

Cheers
Bertrand

Reply via email to