Jian J Wang 
							
						 
					 
					
						
						
							
						
						2ea3576e16 
					 
					
						
						
							
							IntelFrameworkModulePkg/LegacyBios: Use macro to enable/disable page 0  
						
						... 
						
						
						
						Current implementation uses following two methods
    EnableNullDetection()
    DisableNullDetection()
to enable/disable page 0. These two methods will check PCD
PcdNullPointerDetectionPropertyMask to know if the page 0 is disabled or not.
This is due to the fact that old GCD service doesn't provide paging related
attributes of memory block. Since this issue has been fixed, GCD services
can be used to determine the paging status of page 0. This is also make it
possible to just use a new macro
    ACCESS_PAGE0_CODE(
      <code accessing page 0>
    );
to replace above methods to do the same job, which also makes code more
readability.
Cc: Liming Gao <liming.gao@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Ruiyu Ni <ruiyu.ni@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jian J Wang <jian.j.wang@intel.com >
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com > 
						
						
					 
					
						2017-12-08 14:38:45 +08:00 
						 
				 
			
				
					
						
							
							
								Dandan Bi 
							
						 
					 
					
						
						
							
						
						2f909679b0 
					 
					
						
						
							
							IntelFrameworkModulePkg/Csm: Refine coding style in comments  
						
						... 
						
						
						
						Make the comments follow Edk2 coding style:
1. Make the comments starts with /** and end with **/.
2. Make the comments descrition end with '.'
Cc: Jian J Wang <jian.j.wang@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Dandan Bi <dandan.bi@intel.com >
Reviewed-by: Jian J Wang <jian.j.wang@intel.com > 
						
						
					 
					
						2017-10-24 09:14:16 +08:00 
						 
				 
			
				
					
						
							
							
								Jian J Wang 
							
						 
					 
					
						
						
							
						
						d057d8c4e9 
					 
					
						
						
							
							IntelFrameworkModulePkg/Csm: Add code to bypass NULL pointer detection  
						
						... 
						
						
						
						Legacy has to access interrupt vector, BDA, etc. located in memory between
0-4095. To allow as much code as possible to be monitored by NULL pointer
detection, we add code to temporarily disable this feature right before
those memory access and enable it again afterwards.
Cc: Star Zeng <star.zeng@intel.com >
Cc: Eric Dong <eric.dong@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Michael Kinney <michael.d.kinney@intel.com >
Cc: Ayellet Wolman <ayellet.wolman@intel.com >
Suggested-by: Ayellet Wolman <ayellet.wolman@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jian J Wang <jian.j.wang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com > 
						
						
					 
					
						2017-10-11 16:39:01 +08:00 
						 
				 
			
				
					
						
							
							
								Jiewen Yao 
							
						 
					 
					
						
						
							
						
						60794ee6b0 
					 
					
						
						
							
							IntelFramdworkModulePkg/LegacyBios: Add IoMmu Support.  
						
						... 
						
						
						
						If IOMMU is enabled, the legacy BIOS need allow the legacy memory
access by the legacy device.
The legacy memory is below 1M memory and HighPmm memory.
Cc: Star Zeng <star.zeng@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com > 
						
						
					 
					
						2017-09-06 12:11:16 +08:00 
						 
				 
			
				
					
						
							
							
								Gary Lin 
							
						 
					 
					
						
						
							
						
						70d3fe9dad 
					 
					
						
						
							
							IntelFrameworkModulePkg: Fix typos in comments  
						
						... 
						
						
						
						- stoping -> stopping
- Pointion -> Position
- Arrary -> Array
- reseting -> resetting
- excute -> execute
- isTRUE -> is TRUE
- connectted -> connected
- Retrive -> Retrieve
- dirvers -> drivers
- funciton -> function
- paramter -> parameter
- availible -> available
- permenent -> permanent
- boundry -> boundary
Cc: Jeff Fan <jeff.fan@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gary Lin <glin@suse.com >
Reviewed-by: Jeff Fan <jeff.fan@intel.com > 
						
						
					 
					
						2016-10-24 09:09:06 +08:00 
						 
				 
			
				
					
						
							
							
								Ruiyu Ni 
							
						 
					 
					
						
						
							
						
						62ade6d233 
					 
					
						
						
							
							IntelFrameworkModulePkg/LegacyBios: Get SIO data from SIO interface  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com >
Reviewed-by: Eric Dong <eric.dong@intel.com > 
						
						
					 
					
						2016-06-14 09:45:40 +08:00 
						 
				 
			
				
					
						
							
							
								Ruiyu Ni 
							
						 
					 
					
						
						
							
						
						faef695239 
					 
					
						
						
							
							IntelFrameworkModulePkg/LegacyBios: Get COM base from SerialIo parent  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com >
Reviewed-by: Eric Dong <eric.dong@intel.com > 
						
						
					 
					
						2016-06-14 09:45:40 +08:00 
						 
				 
			
				
					
						
							
							
								Liming Gao 
							
						 
					 
					
						
						
							
						
						b483e74d5a 
					 
					
						
						
							
							IntelFrameworkModulePkg: Add UEFI2.5 PersistentMemory support in LegacyBios  
						
						... 
						
						
						
						LegacyBiosDxe converts EfiPersistentMemory to E820 EfiAddressRangePersistentMemory.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <liming.gao@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17244  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2015-04-29 01:38:01 +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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						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 
						 
				 
			
				
					
						
							
							
								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