[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v1 5/5] xen/riscv: map FDT



On Thu, 2024-07-11 at 11:50 +0100, Julien Grall wrote:
> Hi,
Hi Julien,

> 
> On 11/07/2024 10:40, Oleksii wrote:
> > On Wed, 2024-07-10 at 14:38 +0200, Jan Beulich wrote:
> > > On 03.07.2024 12:42, Oleksii Kurochko wrote:
> > > > Except mapping of FDT, it is also printing command line passed
> > > > by
> > > > a DTB and initialize bootinfo from a DTB.
> > > 
> > > I'm glad the description isn't empty here. However, ...
> > > 
> > > > --- a/xen/arch/riscv/riscv64/head.S
> > > > +++ b/xen/arch/riscv/riscv64/head.S
> > > > @@ -41,6 +41,9 @@ FUNC(start)
> > > >   
> > > >           jal     setup_initial_pagetables
> > > >   
> > > > +        mv      a0, s1
> > > > +        jal     fdt_map
> > > > +
> > > >           /* Calculate proper VA after jump from 1:1 mapping */
> > > >           la      a0, .L_primary_switched
> > > >           sub     a0, a0, s2
> > > 
> > > ... it could do with clarifying why this needs calling from
> > > assembly
> > > code. Mapping the FDT clearly looks like something that wants
> > > doing
> > > from start_xen(), i.e. from C code.
> > fdt_map() expected to work while MMU is off as it is using
> > setup_initial_mapping() which is working with physical address.
> 
> Somewhat related to what Jan is asking. You only seem to part the FDT
> in 
> start_xen(). So why do you need to call fdt_map() that early?
Let's continue our discussion in another thread ( I added you there ).

But the answer on your question is here:
https://lore.kernel.org/xen-devel/cover.1720002425.git.oleksii.kurochko@xxxxxxxxx/T/#m2890200a53c6ea2101e0f9e9ea77f589bd187e26

And
here:https://lore.kernel.org/xen-devel/cover.1720002425.git.oleksii.kurochko@xxxxxxxxx/T/#m4e20792121b97465db7081cc4c1e27bdb15cdd51

Let me know if the link above answers your question.

~ Oleksii



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.