niruiyu
1a395747fd
TPL of Pcd Dxe driver was changed to TPL_CALLBACK from TPL_NOTIFY to follow UEFI spec that caller of variable interface should run at TPL <= TPL_CALLBACK.
...
The change is to enable PcdsDynamicHii in Duet platform. Duet's variable driver should run at TPL <= TPL_CALLBACK so Pcd Dxe driver should run at TPL <= TPL_CALLBACK.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10040 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-22 06:05:11 +00:00
niruiyu
230319040a
Enable BootTimeOut and ConsoleMode (80x25/100x30) setting save/restore in Duet Setup.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10039 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-22 06:03:08 +00:00
jgong5
25973fc3ea
Enhance memory copy logic for PEI core image read. The change uses CopyMem() library function for unshadowed version and uses inline implementation for a shadowed version. This reduces PE image reading time to 1/5 - 1/10 when code cache is disabled. The change also fixed a memory leak when allocating shadow space for image read function.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10038 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-22 05:48:06 +00:00
mdkinney
e906eae4a5
Add [depex] on gEfiMpServiceProtocolGuid so the number of CPUs is known
...
Add [depex] on gEfiSmmCpuIo2Protocol so we know that the SMM CPU I/O 2 Protocol in the PI SMST is valid
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10037 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-21 20:56:40 +00:00
mdkinney
f5501a6512
Change RegisterProtocolNotify for dependent protocols to [Depex] expression
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10036 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-21 20:55:00 +00:00
mdkinney
09163a4d9d
Fix build breaks
...
Update EfiAcpiResetSystem() to match function prototype for EFI_RESET_SYSTEM
Add CpuDeadLoop() in all paths, so EfiAcpiResetSystem() can never return to be compliant with UEFI Spec, even when ASSERT() statements are disabled.
Change DEBUG() messages from EFI_D_ERROR to DEBUG_INFO because they are not error messages.
Simplify implementation from 4 files down to 2 files.
Use IoAndTheOr16() and MmioAndTheOr16() instead if IoRead/Write16() and MmioRead/Write16()
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10035 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-21 20:46:36 +00:00
niruiyu
0e047a2a83
Port AcpiResetDxe from EDK to EDKII to enable reset function on DUET above legacy free platform.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10034 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-21 09:30:01 +00:00
klu2
450ec0ed87
Correct the table's version according to PI/UEFI spec.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10033 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-21 03:31:44 +00:00
niruiyu
c39c3e2190
add more comments for gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10032 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-20 07:11:13 +00:00
niruiyu
c943ee0336
gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport should be TRUE in DUET platform.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10031 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-20 07:10:16 +00:00
andrewfish
d5505a2afb
Make the passed in string not require \n
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10030 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-20 00:12:19 +00:00
andrewfish
b2a73e2162
Adding a command to show how symbols work in EFI
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10029 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-19 23:49:51 +00:00
andrewfish
37b91c49fc
Clean up some externs
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10028 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-19 23:05:04 +00:00
andrewfish
23cb7cb285
Make build script exit on build error
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10027 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-19 22:48:26 +00:00
andrewfish
fea3a3a4cf
Fix typo
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10026 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-19 22:31:35 +00:00
andrewfish
98bc0c8c05
Sync gcc with armasm. update some memory barriers.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10025 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-19 18:51:10 +00:00
andrewfish
752d258a42
Update gcc flags to armv7
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10024 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-19 18:45:29 +00:00
andrewfish
1a27eb4887
Hack in some DSB, ISB syncronization primatives. Need to do it a little cleaner.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10023 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-18 04:25:31 +00:00
andrewfish
5dea9bd6e6
Change Cortex-A8 references to ARMv7. Cortex-A8 is a branded implementation of the ARMv7 processor architecture.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10022 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-18 01:57:13 +00:00
andrewfish
3cfc857647
Fix case bug.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10021 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-17 05:14:22 +00:00
andrewfish
3351d21fe1
Cleanup HOB DEBUG prints
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10020 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-17 01:12:55 +00:00
andrewfish
eea555312c
Update to pass up Decompress, and PECOFF code from SEC to DXE Core. Turn on USB, even though it does not currently work.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10019 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-17 00:21:18 +00:00
andrewfish
65e2744587
Fix bug in UncachedMemoryAllocationLib, Assembler, make DefaultExceptionHandler lib inc the PC past the faulting instruction to aid debug. Update LR in Exception hanlder, so return address can get updated properly.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10018 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 23:45:42 +00:00
andrewfish
56015d8801
Fix typo in mfill command
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10017 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 23:43:28 +00:00
mdkinney
74e44290e2
1) Fix build issues
...
2) Change ARCHITECTURAL_PROTOCOL_ENTRY name to EFI_CORE_PROTOCOL_NOTIFY_ENTRY so it can be used for both Architectural Protocols and optional protocols that the DXE Core may use. Also remove BOOLEAN ArchitecturalProtocol field, so it is back to its original form.
3) Put mArchProtocols[] back to its original form, but add a NULL entry at the end so the end of the table can be easily detected in loops
4) Add mOptionalProtocols[] that at this time only has the SMM Base 2 Protocol in it.
5) Add NULL entry to mMissingProtocols[] so the end of the table can be easily detected.
6) Update all loops on mArchProtocols[], mOptionalProtocols, and mMissingProtocols[] to remove Index(s) and simply looks for a NULL ProtocolGuid to find the end of the table.
7) Update protocol notify events to pass the associated EFI_CORE_PROTOCOL_NOTIFY_ENTRY * as the Context parameter. This simplifies GenericProtocolNotify() by completely eliminating the search loop.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10016 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 20:59:57 +00:00
mdkinney
27af6f9d0a
Use Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10015 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 04:07:39 +00:00
mdkinney
d3308de7f5
Use Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10014 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 04:06:46 +00:00
mdkinney
300240b62b
Use Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10013 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 04:04:58 +00:00
andrewfish
8e90dd6b54
Clean up HOB debug prints
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10012 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 03:05:59 +00:00
andrewfish
b33339fa64
Fix crash in UnixPkg and BeagleBoard caused by gSmmBase2 getting added to the now incorectly named mARchProtocols list. CoreDispatchMissingArchProtocols() did to check to see if the element was an AP (not all are now). Also Missing entry was not bounds checked, it was assumed to be <= Index witch is no longer true. So in both UnixPkg and BeagleBoard the loop was blowing past the end and garbage data caused page faults. Also add m prefix to global.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10011 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 02:52:15 +00:00
andrewfish
d629c28396
After the ASSERT adjust the PC so you skip the faulting instruction. Lets you walk out of the exception handler and keeprunning code. This way you can walk out of the call stack.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10010 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 01:03:16 +00:00
andrewfish
026e30c4bb
Cleanup SerailIO drivers to have a device path and use PCD settings for various stuff. Also clean up a few coding convention items.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10009 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-15 20:40:51 +00:00
mdkinney
95572bd1b8
Remove SMM_CORE as a supported module type for the MemoryAllocationLib instance that uses UEFI Boot Services
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10008 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-15 18:16:05 +00:00
mdkinney
75196b0d80
Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10007 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 06:29:47 +00:00
mdkinney
c0b516d4ef
Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10006 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 06:20:41 +00:00
mdkinney
70836cb60e
Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10005 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 06:20:06 +00:00
mdkinney
8d96b9765e
Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10004 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 06:18:15 +00:00
mdkinney
1039a25744
Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10003 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 06:17:51 +00:00
mdkinney
1b45a67165
Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10002 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 06:00:11 +00:00
mdkinney
c819c01665
Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10001 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 05:59:31 +00:00
mdkinney
53b85bcbf0
1) Remove dependency on the UEFI Boot Services Table Library so the gBS, gST, and gImageHandle symbols will not be automatically linked into an SMM Driver that uses this library.
...
2) Remove redundant include of <PiDxe.h>
3) Clean up constructor to use InSmm() library function instead of duplicating logic.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10000 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 05:49:44 +00:00
mdkinney
112af4265f
Remove constructor from this library. This library already has SMM CPU I/O 2 in its [Depex], so any module using this library will not be dispatched until the SMM CPU I/O 2 Protocol is installed into the SMM handle database and also copied into the SMM Services Table.
...
The worker functions in this library have also been updated to simply use the instance of the SMM CPU I/O 2 Protocol that is present in the SMM Services Table.
The dependency on the UEFI Boot Services Table Library has also been removed so the gBS, gST, and gImageHandle symbols will not be automatically linked into an SMM Driver that uses this library.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9999 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 05:47:00 +00:00
mdkinney
58b23d903e
Use atomic AsmDisableCache() and AsmDisableCache() functions instead of AsmWriteCr0() and AsmWbinvd() calls
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9998 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 00:44:27 +00:00
mdkinney
0803854bc1
Update DXE Core to be compatible with PI 1.2 SMM Drivers.
...
PI 1.2 SMM Drivers are allowed to call UEFI/DXE services and Protocols from the entry point of the PI 1.2 SMM Driver. These UEFI/DXE services and Protocols may directly or indirectly calls the UEFI Boot Services RaiseTPL() and RestoreTPL(). These UEFI Boot Services use the CPU Architectural Protocol to enable interrupts if the TPL level is below TPL_HIGH_LEVEL and enable interrupts of the TPL is at TPL_HIGH_LEVEL. Interrupts should be masked while executing SMM drivers, so if a direct or indirect call to the UEFI Boot Service RestoreTPL() would enable interrupts, then an interrupt could be incorrectly delivered in SMM context.
The solution is for the DXE Core to register for the PI 1.2 SMM Base2 Protocol. If that protocol is present in the platform, then the DXE Core can use the SMM Base 2 Protocol's InSmm() function to determine if the platform is currently executing in SMM content. If the current context is in SMM, then do not allow any requests to be forwarded to the CPU Architecture Protocol to enable interrupts.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9997 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-13 01:57:22 +00:00
andrewfish
60428d0000
Fix help command scroll issue. Also add FV space used, and free space to dir command.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9996 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-12 20:13:55 +00:00
xdu2
135ec2db42
Update UNDI driver to expose dynamic media detect capability.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9995 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-12 08:45:38 +00:00
xdu2
c777c3574e
Update SnpDxe to support dynamic media detect.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9994 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-12 08:45:15 +00:00
xdu2
993702aa7b
Add media status relative definition to UEFI PXE header file.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9993 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-12 08:45:07 +00:00
andrewfish
3575301ce7
Change UI for dir of FV to make it less confusing.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9992 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-12 00:12:14 +00:00
andrewfish
875c883ef3
Add support for Seeking on FV, and update the device syntax to support specifying which section of the FV file you want to operate on, previously the only option was to operate on the Raw file.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9991 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-11 19:57:56 +00:00