> -----Original Message-----
> From: Ard Biesheuvel [mailto:[email protected]]
> Sent: Tuesday, December 11, 2018 5:55 PM
> To: Pankaj Bansal <[email protected]>
> Cc: Bhupesh Sharma <[email protected]>; Mark Rutland
> <[email protected]>; Leif Lindholm <[email protected]>; Grant
> Likely <[email protected]>; Varun Sethi <[email protected]>; Udit Kumar
> <[email protected]>; linux-efi <[email protected]>
> Subject: Re: [PATCH v2 2/2] drivers: firmware: efi: install new fdt in
> configuration table
> 
> On Tue, 11 Dec 2018 at 13:22, Pankaj Bansal <[email protected]> wrote:
> > > -----Original Message-----
> > > From: Bhupesh Sharma [mailto:[email protected]]
> > > Sent: Tuesday, December 11, 2018 4:25 PM
> > > To: Pankaj Bansal <[email protected]>
> > > Cc: Ard Biesheuvel <[email protected]>; Mark Rutland
> > > <[email protected]>; Leif Lindholm <[email protected]>;
> > > Grant Likely <[email protected]>; Varun Sethi <[email protected]>;
> > > Udit Kumar <[email protected]>; [email protected]
> > > Subject: Re: [PATCH v2 2/2] drivers: firmware: efi: install new fdt
> > > in configuration table
> > >
> > > Hi Pankaj,
> > >
> ..
> > > Can you please share an example, as the above description is not
> > > very clear to me. May be you can include a dt property that you are
> > > trying to fix via kernel and what happens in the kernel driver when it is 
> > > not in
> a expected state.
> >
> > We already do. The "status = "okay";" or "status = "disabled";" is added to 
> > the
> device node in dts file.
> > Based on this the device structure is created or not created in kernel when
> booting.
> >
> > >
> > > Also may be you can share why the boot firmware is not able to set a
> > > correct state of the same.
> >
> > The correct state of device would depend on the user supplied parameters and
> boot time configuration.
> > Boot firmware is able to set the "status" in fdt file in exit boot services.
> 
> But why not before? Why does it have to wait until ExitBootServices() to do 
> this?

We attempt to apply the user supplied parameters in ExitBootServices.
If it fails, then the device state is un deterministic. If it passed, then 
device can be used in kernel.
Once there parameters are applied, regardless of they failed or passed, the 
boot firmware cannot use the device.
So we have no choice but to apply these parameters when we no longer wish to 
use the device in boot firmware.

Reply via email to