On Feb 25, 2013, at 8:18 PM, baban devkate <baban...@gmail.com> wrote:
> Hi All,
>
> what I learnt?
> PCI Bus driver enums PCI bus for PCI devices, checks Oprom is there, check
> Oprom header, checks UEFI driver and if yes loads it into RAM. StartImage
> calls Drivers entry point & it exits successfully with driver in RAM.
>
>
> I have one query related to supporting multiple controllers in my driver.
>
> Query?
> Is same thing applicable for all HBA the in the system or UEFI drivers for
> devices only in boot path will be executed and it is decided in BDS phase?
>
I'm not 100% sure what you are asking?
The model in EFI is the Boot Manager (called BDS in PI) can only request
certain device paths (console in, console out, boot device, etc.) be connected
to improve boot performance. Where connected means calling the Driver Binding
Start() functions while passing in the remaining device path. So the parent
gets called to produce the child, then the child gets called, and this process
keeps happening until the device path is produced. UEFI advocates that if
possible the driver optimize its start behavior by utilizing information in the
Start() functions remaining device path to prevent the need to do things like
discover devices on a bus.
So for example a Fibre Channel fabric could be very very complex and attempting
to discover all the possible devices on the fabric could be very slow. Having
the remaining device path allows a much quicker connection, and can remove the
need to wait for things like a timeout when probing for a device that does not
exist.
In the case of the PCI bus driver it is not possible to create just the handle
for a single device. Efficient PCI enumeration requires discovery of all the
PCI devices and assigning resources to all of the devices. So given the work
has to be done the PCI bus driver choses to produce handles for all its
children , even though a remaining device path was passed in.
Thanks,
Andrew Fish
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel