mirror of
				https://git.proxmox.com/git/mirror_edk2
				synced 2025-11-04 01:03:23 +00:00 
			
		
		
		
	1. Do not use tab characters 2. No trailing white space in one line 3. All files must end with CRLF Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com>
		
			
				
	
	
		
			44 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
// /** @file
 | 
						|
// This driver produces UEFI PLATFORM_DRIVER_OVERRIDE_PROTOCOL if this protocol doesn't exist.
 | 
						|
//
 | 
						|
// It doesn't install again if this protocol exists.
 | 
						|
// It only implements one interface GetDriver of PLATFORM_DRIVER_OVERRIDE_PROTOCOL protocol
 | 
						|
// and doesn't support other two interfaces GetDriverPath, DriverLoaded.
 | 
						|
//
 | 
						|
// This driver also offers an UI interface in device manager to let user configure
 | 
						|
// platform override protocol to override the default algorithm for matching
 | 
						|
// drivers to controllers.
 | 
						|
//
 | 
						|
// The main flow:
 | 
						|
// 1. It dynamicly locate all controller device path.
 | 
						|
// 2. It dynamicly locate all drivers which support binding protocol.
 | 
						|
// 3. It export and dynamicly update two menu to let user select the
 | 
						|
// mapping between drivers to controllers.
 | 
						|
// 4. It save all the mapping info in NV variables for the following boot,
 | 
						|
// which will be consumed by GetDriver API of the produced the platform override protocol.
 | 
						|
//
 | 
						|
// Caution: This module is a sample implementation for the test purpose.
 | 
						|
//
 | 
						|
// Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
 | 
						|
//
 | 
						|
// This program and the accompanying materials
 | 
						|
// are licensed and made available under the terms and conditions of the BSD License
 | 
						|
// which accompanies this distribution. The full text of the license may be found at
 | 
						|
// http://opensource.org/licenses/bsd-license.php
 | 
						|
//
 | 
						|
// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 | 
						|
// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 | 
						|
//
 | 
						|
// **/
 | 
						|
 | 
						|
 | 
						|
#string STR_MODULE_ABSTRACT             #language en-US "Produces UEFI PLATFORM_DRIVER_OVERRIDE_PROTOCOL if this protocol doesn't exist"
 | 
						|
 | 
						|
#string STR_MODULE_DESCRIPTION          #language en-US "This driver produces UEFI PLATFORM_DRIVER_OVERRIDE_PROTOCOL if this protocol doesn't exist. It only implements the GetDriver() interface of PLATFORM_DRIVER_OVERRIDE_PROTOCOL protocol This driver also offers an UI interface in device manager to let users configure PlatformOverrideProtocol to override the default algorithm for matching drivers to controllers.<BR><BR>\n"
 | 
						|
                                                        "The main flow:<BR>\n"
 | 
						|
                                                        "1. It dynamically locates all controller device path.<BR>\n"
 | 
						|
                                                        "2. It dynamically locates all drivers which support binding protocol.<BR>\n"
 | 
						|
                                                        "3. It exports and dynamicly updates two menu to let user select the  mapping between drivers to controllers.<BR>\n"
 | 
						|
                                                        "4. It saves all the mapping info in NV variables for the following boot,  which will be consumed by GetDriver API of the produced the platform override protocol.<BR>"
 | 
						|
 |