4.2.4 Do not make assumptions about I/O subsystem configurations

UEFI drivers should assume neither a fixed nor a maximum number of controllers in a system. All UEFI drivers should be designed to manage any number of controllers even if the driver writer is convinced there are always a fixed number of controllers. This design maximizes the compatibility of the UEFI driver, especially on multi-bus-set (ECR pending at PCI SIG) PCI systems that may contain hundreds of PCI slots. Chapter 8 of this guide introduces the private context data structure, which is a lightweight mechanism that allows a UEFI driver to be designed with no limitations on the number of controllers that the UEFI driver can manage.