andrewfish
1ef41207dc
InOsEmuPkg: Add TimerLib for PEI, DXE_CORE, and DXE/EFI drivers/applications.
...
Start using MdeModulePkg MetronomeDxe driver. Add PEI and DXE_CORE TimerLibs that just call back to the emulator. Add a DXE/UEFI TimerLib that also does a gBS->WaitForEvent() if the stall is for a long period of time. Change the Thunk API for Sleep to nanoseconds.
Signed-off-by: andrewfish
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11872 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-21 23:41:31 +00:00
jljusten
d7dd93876b
InOsEmuPkg: Remove unreference local variables
...
GCC44 will flag a warning for these unused variables.
Signed-off-by: jljusten
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11864 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-20 21:57:27 +00:00
andrewfish
57c7d70ff9
InOsEmuPkg: Implement gIdleLoopEventGuid.
...
Added a CpuSleep () API to the Emulator Thunk. We needed to do this as the Stall() works hard to not get broken by the timer tic (POSIX signal). nanosleep() gets interrupted by the timer signal so it is a good emulator of a CpuSleep(); I was also able to remove some stalls in the X11 keyboard and mouse checking events, now that the gIdleLoopEventGuid was added.
Signed-off-by: andrewfish
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11846 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-17 18:21:16 +00:00
andrewfish
7e284acb40
Add support for SerialPortLib that maps into POSIX StdIn and StdOut. Add a device path text to lib as a holding point waiting on getting it reviewed for other packages. Some minor fixes. Also map the FV as writable, so the Variable store becomes writable.
...
I plan to try and make only the Variable store and logs writable, and make the executable/compressed FV read only in a future checkin.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11760 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-08 02:34:12 +00:00
andrewfish
8b6d0c057f
Cleanup MpService interface. Still needs more testing, but now it is much closer to PI spec.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11669 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-17 03:48:27 +00:00
jljusten
10d1be3ed9
InOsEmuPkg: Rename EmuPthreadThunk to EmuThreadThunk
...
This reflects that the threading system may vary in the
OS/thunk layer.
Signed-off-by: jljusten
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11662 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-16 04:47:40 +00:00
jljusten
224e13333b
InOsEmuPkg: Fix warnings with GCC44 toolchain
...
Signed-off-by: jljusten
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11648 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-15 17:22:37 +00:00
andrewfish
c4671a67d8
Add MP support. Based on PcdEmuApCount APs (Application Processors) are created in the CpuRuntimeDxe driver. If PcdEmuApCount > 0 then the MpServices protocol is created on top of pthreads and the APs are availible to use vis the MpService protocol.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11644 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-13 00:03:26 +00:00
andrewfish
949f388f5f
Add InOsEmuPkg. Like UnixPkg and Nt32Pkg, but EFI code can be common and does not require including system include files. Currently only Unix 64-bit is supported and it has only been tested on Mac OS X. Not all features are ported over, but GOP, via X11, and access to local file systems are supported and you can boot to the shell.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11641 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-11 18:31:20 +00:00