Mike Maslenkin 
							
						 
					 
					
						
						
							
						
						de2eccc46a 
					 
					
						
						
							
							The size of platform memory above 1M is measured in kilobytes.  
						
						... 
						
						
						
						This patch fixes truncation of this value. Actually 0 Mb memory size was set by reason of overflow of 16 bit word caused by wrong value used.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Mike Maslenkin <mihailm@parallels.com >
Reviewed-by: Elvin Li <elvin.li@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15318  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-03-05 08:45:13 +00:00 
						 
				 
			
				
					
						
							
							
								Tian, Hot 
							
						 
					 
					
						
						
							
						
						4c8f6044a2 
					 
					
						
						
							
							Fix CRLF format  
						
						... 
						
						
						
						Signed-off-by: Tian, Hot <hot.tian@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15154  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-01-22 08:38:20 +00:00 
						 
				 
			
				
					
						
							
							
								Elvin Li 
							
						 
					 
					
						
						
							
						
						ad793176de 
					 
					
						
						
							
							Add additional check mRuntimeSmbiosEntryPoint == NULL to avoid K9 error.  
						
						... 
						
						
						
						Signed-off-by: Elvin Li <elvin.li@intel.com >
Reviewed-by: Eric Dong <eric.dong@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14962  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-12-11 08:53:19 +00:00 
						 
				 
			
				
					
						
							
							
								Elvin Li 
							
						 
					 
					
						
						
							
						
						b68237300a 
					 
					
						
						
							
							Following UEFI spec, update SmbiosDxe to use EfiRuntimeServicesData to put SMBIOS table. Update LegacyBiosDxe to move SMBIOS table to reserved memory for backward compatibility.  
						
						... 
						
						
						
						Signed-off-by: Elvin Li <elvin.li@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14932  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-12-05 05:30:27 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						ee65c5083b 
					 
					
						
						
							
							Check if video device exists before trying to install Video OpROM.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14335  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-05-09 08:47:09 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						007f932de6 
					 
					
						
						
							
							Add OpROM code type check to ensure OpROM is PCAT legacy OpROM when an OpROM is passed to InstallPciRom.  
						
						... 
						
						
						
						Signed-off-by: Li Elvin <elvin.li@intel.com >
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14260  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-04-12 07:34:27 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						0934a60581 
					 
					
						
						
							
							Call LegacyBiosInstallVgaRom to shadow Legacy VBIOS instead of LegacyBiosInstallPciRom during legacy boot.  
						
						... 
						
						
						
						Signed-off-by: Li Elvin <elvin.li@intel.com >
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14205  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-03-15 01:34:21 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						3e5eb44701 
					 
					
						
						
							
							Remove hard code value and create new PCDs for OpROM reserved range in CSM module.  
						
						... 
						
						
						
						Signed-off-by: Li Elvin <elvin.li@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13991  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-12-12 07:47:33 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						d316f1dca1 
					 
					
						
						
							
							Fix GCC44 build failure.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13956  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-11-21 03:03:32 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						6d55565d68 
					 
					
						
						
							
							If IDE controller is not in IDE mode, we should not clear IO bar.  
						
						... 
						
						
						
						Signed-off-by: Li Elvin <elvin.li@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13953  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-11-20 00:59:17 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						22921b02ab 
					 
					
						
						
							
							Remove 0xc8000 check when searching PNP header. Remove the check about the size of Init code when validating if PCI 3.0 OPROM is successfully started.  
						
						... 
						
						
						
						Signed-off-by: Li Elvin <elvin.li@intel.com >
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13944  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-11-15 02:10:44 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						cb38c322f0 
					 
					
						
						
							
							Add missing status code in several modules.  
						
						... 
						
						
						
						Signed-off-by: Li Elvin <elvin.li@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com >
Reviewed-by: Gao Liming <liming.gao@intel.com >
Reviewed-by: Tian Feng <feng.tian@intel.com >
Reviewed-by: Fan Jeff <jeff.fan@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13889  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-10-30 04:19:03 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						7f446eba26 
					 
					
						
						
							
							Handle the case when OpROM wants to completely remove itself.  
						
						... 
						
						
						
						Signed-off-by: Ruiyu Ni<ruiyu.ni@intel.com >
Reviewed-by: Elvin Li<elvin.li@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13736  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-09-24 02:57:47 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						edf4af6fb9 
					 
					
						
						
							
							Check if active video mode is changed after OpROM starts, if active video mode is not changed, skip INT10 calls to improve performance.  
						
						... 
						
						
						
						Signed-off-by: Li Elvin <elvin.li@intel.com >
Reviewed-by: Yao Jiewen<jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13609  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-08-13 09:33:49 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						0f8b02980e 
					 
					
						
						
							
							Added secure boot in CSM module entrypoint, if UEFI secure boot is enabled, CSM module cannot be started.  
						
						... 
						
						
						
						Signed-off-by: Li Elvin <elvin.li@intel.com >
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13537  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-07-17 09:25:26 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						74dee93181 
					 
					
						
						
							
							Update the way to allocate high PMM, firstly try to allocate high PMM below 16MB, if it fails, allocate high PMM below 4GB.  
						
						... 
						
						
						
						Signed-off-by: li-elvin <elvin.li@intel.com >
Reviewed-by: jyao1 <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13352  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-05-23 07:26:17 +00:00 
						 
				 
			
				
					
						
							
							
								rsun3 
							
						 
					 
					
						
						
							
						
						94020bb40f 
					 
					
						
						
							
							Improve robustness when scanning PCI Option ROM.  
						
						... 
						
						
						
						Signed-off-by: rsun3
Reviewed-by: geekboy15a
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13095  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-03-14 03:17:17 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						81c0d6e9a7 
					 
					
						
						
							
							When CSM uses EFI_SEGMENT and EFI_OFFSET to call CSM16 function, some CSM16 use es:[offset + 0xabcd] to get data passed from CSM32, offset + 0xabcd could exceed 0xFFFF which is invalid in real mode. So added NORMALIZE_EFI_SEGMENT and  NORMALIZE_EFI_OFFSET to keep offset as small as possible to avoid this issue during CSM16 function call.  
						
						... 
						
						
						
						Signed-off-by: li-elvin
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13074  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-03-01 11:16:42 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						3512efa9b2 
					 
					
						
						
							
							CSM is updated to remove RaiseTPL (TPL_HIGH_LEVEL) and disable 2 known UEFI interrupts instead. This is needed to process HPET timer interrupt before going into real mode.  
						
						... 
						
						
						
						Signed-off-by: li-elvin
Reviewed-by: vanjeff
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12701  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-11-15 07:59:21 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						b17f22f50b 
					 
					
						
						
							
							CSM should firstly set timer to enable state at first, then RestoreTpl is called.  
						
						... 
						
						
						
						Signed-off-by: li-elvin
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12555  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-10-21 08:45:07 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						26a74a36c1 
					 
					
						
						
							
							Use a local variable and assign 0 to it, then use it as legacy interrupt table base address.  
						
						... 
						
						
						
						Signed-off-by: li-elvin
Reviewed-by: mdkinney, ydong10
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12547  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-10-19 00:45:13 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						091bb7138b 
					 
					
						
						
							
							InstallOpROM in CSM driver could be enhanced to start video when RomImage is passed in directly.  
						
						... 
						
						
						
						Signed-off-by: li-elvin
Reviewed-by: niruiyu
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12521  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-10-10 07:54:47 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						befbc4f3fb 
					 
					
						
						
							
							Use PCD for PMM size and EndOpromShadowAddress to remove hard code value in CSM module.  
						
						... 
						
						
						
						Signed-off-by: li-elvin
Reviewed-by: jyao1
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12519  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-10-10 01:43:13 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						16adc27692 
					 
					
						
						
							
							Add RomImage pointer NULL check.  
						
						... 
						
						
						
						Signed-off-by: li-elvin
Reviewed-by: niruiyu
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12473  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-09-29 06:35:51 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						f767f99009 
					 
					
						
						
							
							Update CSM module to provide the general solution when the Timer Arch Protocol is not 8254 timer. CSM module should set 8254 timer to 54ms for the execution in real mode.  
						
						... 
						
						
						
						Signed-off-by: li-elvin
Reviewed-by: jyao1
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12229  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-08-30 05:52:28 +00:00 
						 
				 
			
				
					
						
							
							
								li-elvin 
							
						 
					 
					
						
						
							
						
						47a43df2df 
					 
					
						
						
							
							Remove the code added originally to restore 8254 timer to 54ms.  
						
						... 
						
						
						
						Signed-off-by: li-elvin
Reviewed-by: jyao1
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12109  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-08-09 05:39:20 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						7dad86fc60 
					 
					
						
						
							
							Print PCI Interrupt Line/Interrupt Pin registers before booting legacy OS.  
						
						... 
						
						
						
						Signed-off-by: niruiyu
Reviewed-by: li-elvin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12088  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-08-04 09:14:31 +00:00 
						 
				 
			
				
					
						
							
							
								jljusten 
							
						 
					 
					
						
						
							
						
						bcecde140a 
					 
					
						
						
							
							IntelFrameworkModulePkg: Add Compatibility Support Module (CSM) drivers  
						
						... 
						
						
						
						Added these drivers:
* LegacyBiosDxe
* BlockIoDxe
* KeyboardDxe
* Snp16Dxe
* VideoDxe
Signed-off-by: jljusten
Reviewed-by: mdkinney
Reviewed-by: geekboy15a
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11905  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-06-27 23:32:56 +00:00