> > > +             arm_load_kernel(env, &versatile_binfo);
> > > +     }
> > > 
> > >  }
> > 
> > This should be using the new object you just added.
> 
> Yes I agree. There is another question tho that if this approach is to be
> considered, should this call to arm_load_kernel be removed from the machine
> model altogether? Only reason to keep it would be backwards compatibility
> for the original command line format.

I think we want the -kernel commandline option, butI'mnot attached to a 
particular implementation.

Once we have an arm_linux_loader device then arm_load_kernel should go away, 
or at least be a private implementation detail of arm_linux_loader.


Who creates the arm_linux_loader object (common code or board init function),  
and how we arrange for it to have the right properties (filename from -kernel, 
board ID from specific machine) is something I haven't entirely figured out.

I suspect we want to replace the arm_load_kernel call with an arm_linux_loader 
device with appropriate properties.

We should have some mechanism for the user to override/augment those 
properties (e.g. overriding the FDT file).  I don't know if that functionality 
actually exists, or if what we have is particularly well thought out.  Ideally 
the -kernel commandline would just be shorthand for setting/overriding the 
filename property on that device.  The machine->init arguments are removed. 
That's probably going to need wider coordination with other arches.

Paul

Reply via email to