Commit Graph

53 Commits

Author SHA1 Message Date
Ruiyu Ni e8e1bdd66a MdeModulePkg: Fix GraphicsConsole driver resolution out of sync issue
When the GOP doesn't support the resolution specified by
PcdVideoHorizontalResolution and PcdVideoVerticalResolution,
the code tries to set the resolution to 800x600 but uses the resolution
equals to the PCD when calculating the text print position.
The patch fixes the bug by updating the resolution to 800x600 for
this case.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Jeff Fan <jeff.fan@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19630 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-11 02:29:09 +00:00
Elvin Li d81c462d61 MdeModulePkg: Removed valid text mode check in SetAttribute interface in GraphicsConsole.
UEFI spec mentioned that the color mask can be set even when the device is in an invalid text mode. But the current code add text mode check. Removed the check now.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Elvin Li <elvin.li@intel.com>
Reviewed-by: Jaben Carsey <Jaben.Carsey@intel.com>


git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15721 6f19259b-4bc3-4df7-8a09-765794883524
2014-07-31 03:21:39 +00:00
Jaben Carsey 6cb9566f26 MdeModulePkg: Fix parameter verification for SetAttribute
Check for 8th bit being reserved as per UEFI spec.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jaben Carsey <Jaben.carsey@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Elvin Li <elvin.li@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15680 6f19259b-4bc3-4df7-8a09-765794883524
2014-07-25 15:57:20 +00:00
lzeng14 adfa1abc09 Don't assume HiiDatabase has been present at the entrypoint and don't assume HiiDatabase and HiiFont are on the same handle according to the UEFI spec.
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Elvin Li <elvin.li@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14236 6f19259b-4bc3-4df7-8a09-765794883524
2013-04-02 03:23:54 +00:00
li-elvin 9fc9446897 Add debug message to output video resolution used by GraphicsConsole.
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@14210 6f19259b-4bc3-4df7-8a09-765794883524
2013-03-15 07:43:16 +00:00
li-elvin 0666b5e858 Take the highest horizontal resolution as highest video resolution.
Signed-off-by: Li Elvin <elvin.li@intel.com>
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com>
Reviewed-by: Tian Hot <hot.tian@intel.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14074 6f19259b-4bc3-4df7-8a09-765794883524
2013-01-22 06:35:57 +00:00
li-elvin c84f048224 Set graphic mode if graphic mode is not same with the one which GraphicsConsole driver find by itself.
Signed-off-by: Li Elvin <elvin.li@intel.com>
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com>
Reviewed-by: Tian Hot <hot.tian@intel.com>


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14023 6f19259b-4bc3-4df7-8a09-765794883524
2012-12-25 08:21:01 +00:00
li-elvin f58fcb0a1d Move GOP and UGA draw from Consplitter entrypoint to start(). When there is one real physical graphics device in system, Consplitter will expose GOP/UGA protocol on the virtual handle. In addition, fix a obvious logic issue in GraphicsConsole.
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@13787 6f19259b-4bc3-4df7-8a09-765794883524
2012-10-08 02:34:33 +00:00
li-elvin d0d0c1b370 Removed SetMode in GraphicsConsole Start() in release BIOS to improve performance. Initialize current text mode number to 0xFF as invalid text mode per UEFI spec. Add current mode check in text out protocol interface to avoid invalid text mode.
Signed-off-by: Li Elvin <elvin.li@intel.com>
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com>, Tian Hot (hot.tian@intel.com)


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13599 6f19259b-4bc3-4df7-8a09-765794883524
2012-08-07 09:32:46 +00:00
ydong10 7c9fbd79d1 Fix memory leak issues.
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Li Elvin <elvin.li@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13288 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-07 08:51:42 +00:00
li-elvin 9381365cf1 Remove PCD usage for console driver, PcdConOutRow and PcdConOutColumn are current text mode during boot, not console device capability.
Signed-off-by: li-elvin
Reviewed-by: hhtian

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12803 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-30 06:01:22 +00:00
li-elvin 79d07c66d9 Updated GraphicsConsole and Terminal driver text mode initialization routine for easy mode extension in future.
Signed-off-by: li-elvin
Reviewed-by: hhtian


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12787 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-25 08:35:00 +00:00
li-elvin b9b5e3078d Remove hard code video resolution in C code and use PCD PcdVideoHorizontalResolution/PcdVideoVerticalResolution for customization. And when PcdConOutRow/PcdConOutColumn and PcdVideoHorizontalResolution/PcdVideoVerticalResolution are all set to 0, the console will be max video resolution and max text mode.
Signed-off-by: li-elvin
Reviewed-by: niruiyu, hhtian


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12595 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-28 08:23:37 +00:00
vanjeff f44e8c16f8 1. Setting cursor position to (0, 0) and flushing cursor directly instead of calling GraphicConSoleConOutSetPosition().
2. Rename the internal function name EraseCursor() to FlushCursor() to remove the confusion on this function name. And add detailed function description for it.

Signed-off-by: vanjeff
Reviewed-by: rsun3


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11710 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-27 05:30:30 +00:00
jljusten b1aab293ea MdeModulePkg GraphicsConsole: Add text mode for PcdConOutColumn/Row
Add a new text mode with a resolution of PcdConOutColumn x PcdConOutRow.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11415 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-23 02:11:14 +00:00
ydong10 cd7bfc2c63 Refine code to make code run safely.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10880 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-16 04:51:25 +00:00
vanjeff 78c0686bde remove duplicated code.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10643 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-12 06:21:42 +00:00
li-elvin 46f0e2a9ee Remove some unnecessary clear screen from console drivers.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10590 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-18 09:19:29 +00:00
hhtian e5eed7d364 Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10418 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24 09:33:45 +00:00
rsun3 aa75dfeccd Fix some coding style issues in MdeModulePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9774 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-15 08:03:23 +00:00
eric_tian 5e0b1e3f82 fix the issue of "Simple File System Protocol Test -> SetInfo_Conf failed on RAS_MB". When it print a string contained a control character of 0xc, it will hang on ConOut->OutputString() which will preprocessor some control character and call HiiStringToImage to render. There is gap between ConOut->OutputString() and HiiStringToImage.The former doesn't identify '0xc' as a line break character and assert only one line font printed. But the latter think it is so and print 2 line, which causes assertion.
I add EFI_HII_IGNORE_LINE_BREAK flag to force HiiStringToImage ignore the force line break character.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8736 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-03 09:18:30 +00:00
vanjeff f618b2fa0a rename array name to avoid naming collision.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8340 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-20 02:12:26 +00:00
rsun3 cb7d01c0c9 HII Library Class interface refine.
The "HiiLib" prefix for all HII Library API function names changed to "Hii".

Remove: 
  HiiLibPreparePackageList(), replaced by HiiAddPackages()
  HiiLibNewString(), replaced by HiiSetString()
  HiiLibGetStringFromHandle(), replaced by HiiGetString()
  HiiLibGetStringFromToken(), replaced by HiiGetPackageString()
  HiiLibExtractGuidFromHiiHandle()
  HiiLibDevicePathToHiiHandle()
  HiiLibGetSupportedSecondaryLanguages()
  HiiLibGetSupportedLanguageNumber()
  HiiLibExportPackageLists()
  HiiLibListPackageLists()
  
Interface change:
  HiiAddPackages()
  HiiSetString()
  HiiGetString()
  HiiGetHiiHandles()

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8083 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-14 10:47:19 +00:00
xli24 28487361ff Move registration of Font into driver entry point.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7948 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-25 07:25:52 +00:00
vanjeff 60c65d37e2 remove klocwork issue.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7346 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-22 09:07:53 +00:00
gikidy 649e72d617 Performance and size optimised.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7280 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-15 03:11:09 +00:00
vanjeff 677fdb90fa ECC clean up.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7213 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-08 08:46:31 +00:00
gikidy 5c03ed0aa1 Code scrub for GraphicConsoleDxe Module.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7179 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-04 09:36:31 +00:00
gikidy 7601dbe7c5 Check comments, format and fix some typo.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7154 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-30 07:34:44 +00:00
gikidy 0322ed7af8 Check Library usage.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7141 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-26 09:22:38 +00:00
gikidy 878670eaa6 Code scrub for Universal\Console\GraphicsConsoleDxe.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7061 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-17 06:23:23 +00:00
jji4 aa79b0b379 Global variables have been moved backward ahead of functions.
Only a few cases were left due to its module structure.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6816 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-03 08:52:39 +00:00
xli24 555e76f83f Refine MdeModulePkg to pass GCC build.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6575 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-18 07:01:14 +00:00
qwang12 676df92c2c Remove SafeFreePool from MemoryAllocationLib as this API's name is misleading. Its implementation only check if a pointer is NULL. If a garbage pointer is passed in, the gBS->FreePool will still ASSERT in debug build and return error code.
It is recommended that module writer should keep track how a pointer is allocated and free it after use.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6306 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-30 07:32:46 +00:00
jji4 fe1e36e550 Patch to remove STATIC modifier. This is on longer recommended by EFI Framework coding style. All duplicated symbols has been renamed accordingly.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6296 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-30 06:05:06 +00:00
vanjeff 8595bdaf58 code scrub for check list.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5549 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-22 07:26:57 +00:00
vanjeff 24248368f7 1. added functions header for GraphicsConsoleDxe module.
2. correct some funtions header for ConPlatformDxe module.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5411 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-07 05:23:31 +00:00
vanjeff 6dcf9abc6a Clean codes per ECC for GraphicsConsoleDxe module.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5390 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-01 06:43:10 +00:00
qwang12 bd1d34eecf Change the ASSERT condition from “ASSERT (RowInfoArraySize == 1);” to “ASSERT (RowInfoArraySize <= 1);”.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5374 6f19259b-4bc3-4df7-8a09-765794883524
2008-06-27 07:45:01 +00:00
qwang12 0898c57ce7 Remove the non-standard definition: GLYPH_WIDTH and GLYPH_HEIGHT. All reference to these name should use the standard name defined in UEFI 2.1 specification which are EFI_GLYPH_WIDTH and EFI_GLYPH_HEIGHT
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5137 6f19259b-4bc3-4df7-8a09-765794883524
2008-04-28 07:38:25 +00:00
vanjeff 695f7e9856 add some error check and return.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4912 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-19 05:49:56 +00:00
vanjeff 8541adab27 add PCD PcdUgaConsumeSupport to switch on/off EFI UGA Draw Protocol's consuming, it could save size by changing PCD's value to FALSE.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4911 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-19 05:22:06 +00:00
qwang12 dca8c6d8d2 [Description]:
1) Remove HiiLibAddFontPackageToHiiDatabase as it is not properly defined API. It only cover Simplified Font. User is recomended to use Hii Font Protocol API to add various font into HII database.

[Impaction]:
All modules that may reference HiiLibAddFontPackageToHiiDatabase function.
[Reference Info]:
No.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4856 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-15 05:04:45 +00:00
qwang12 d42d853ee0 1) Enable GraphicsConsole module to support a legacy platform which only produce UGA protocol. Under such system, HiiFont->StringToImage is used to draw the string to blt buffer first. Then, UGA->Blt is used to draw to the physical devices.
2) Remove all references to EFI_SPECIFICATION_VERSION in *.c file as module in MdeModulePkg only support UEFI 2.1.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4739 6f19259b-4bc3-4df7-8a09-765794883524
2008-02-20 10:50:15 +00:00
qwang12 38c0d70af8 Check the handle for font package before remove it.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4667 6f19259b-4bc3-4df7-8a09-765794883524
2008-02-04 03:18:43 +00:00
qwang12 9226efe5eb 1) Cleanup HiiLib, IfrSupportLib.
2) Add ExtendedHiiLib and ExtendedIfrSupportLib which implement APIs that require the OPcode and Device Path which is specific to Intel's implementation.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4662 6f19259b-4bc3-4df7-8a09-765794883524
2008-02-02 13:15:44 +00:00
qwang12 93e3992d1e UEFI HII: Merge UEFI HII support changes from branch.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4599 6f19259b-4bc3-4df7-8a09-765794883524
2008-01-21 14:39:56 +00:00
vanjeff 7347d5d6e6 1. Sync the tracker for supporting the ModeNumber larger than 2.
2. Fixed one bug in SetMode(), Cursor should not be enabled with mandatory.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4594 6f19259b-4bc3-4df7-8a09-765794883524
2008-01-21 09:40:59 +00:00
vanjeff 3012ce5cf7 1. Fixed bugs in DxeNetLib to meet consistence with network module DriverBinding protocol.
2. Sync bugs in console modules.
3. Sync bugs in PlatDriOverLib.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4571 6f19259b-4bc3-4df7-8a09-765794883524
2008-01-17 05:56:45 +00:00
qhuang8 8a7d75b062 Clean up: update "EFI" to "UEFI" if applicable.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4317 6f19259b-4bc3-4df7-8a09-765794883524
2007-11-22 06:00:39 +00:00