Commit Graph

52 Commits

Author SHA1 Message Date
andrewfish 7d9524051e Fix semihosting on gcc. We need to save lr as svc instruction will change it.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11171 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 02:39:00 +00:00
andrewfish 63ca740217 Update remaining ARM .S files with INTERWORK_FUNC macro. This is the 2nd half of check-in 11167.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11169 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 01:06:20 +00:00
andrewfish d9629029f2 Add support for semihosting with GCC. Still needs more testing.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11168 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 01:00:54 +00:00
hhtian b28fe0e209 update copyright format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10857 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-08 03:15:05 +00:00
andrewfish 934309d58e Add a temp BasePeCoffLib that deals with MOVT instruction. At this point we don't know how the PE/COFF spec will change, but we can merge the real change into the MdePkg when the PE/COFF spec is updated and remove this library. To be clear I made up the PE/COFF relocation extension for these relocations, but as long as the tools match it all works.... Mainly doing this to support gcc.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10762 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-31 01:50:35 +00:00
andrewfish 28d1916584 Fix Xcode build break.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10713 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-29 18:26:19 +00:00
andrewfish 54a7013153 Fix CodeSourcery 2010q1 link issue by adding missing intrinsics
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10692 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-25 05:38:36 +00:00
andrewfish 3ea3ff88e3 Fix issue in DmaMap with buffers that are smaller than a cache line. Also make any buffer that is not an even quanta of cache lines double buffer.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10654 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-15 17:27:13 +00:00
andrewfish 938f46b44f Add DMA Lib for generic ARM cache coherency model.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10556 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-29 00:34:43 +00:00
hhtian d6ebcab769 Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10444 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-29 12:15:47 +00:00
andrewfish d39eb83cc5 Add some ldm/vldm optimized CopyMem routines. Add performance macros to BDS
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10388 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-21 22:04:35 +00:00
andrewfish 5b792f1abf Add a PE/COFF extra action lib that DEBUG prints the debugger command to load symbols. Turn off DXE Core DEBUG print on load and use this new library in its place.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10373 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-14 21:52:26 +00:00
andrewfish e9fc14b6e1 Make sure FIQ debugger stuff can work.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10369 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-13 22:30:42 +00:00
andrewfish bb02cb8071 Cleanup MMU code to do book required sync. Update exception handler to clear fault registers.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10366 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-13 19:27:03 +00:00
andrewfish 7800c283e0 Cleanup Cache an MMU operations.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10348 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-07 18:13:58 +00:00
andrewfish 3a753121f2 Fix bug
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10263 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-17 02:29:58 +00:00
andrewfish 4e471bfd4d Update intrinsics for code sourcery gcc
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10262 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-17 02:29:12 +00:00
andrewfish 0416278cfd Added FIQ interrupt primatives. Update exception handler to disable/reenable FIQ when updating in case debug agent library is using FIQ.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10197 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-05 02:15:41 +00:00
andrewfish 548af3e780 Syncing GCC and ARMASM assembly. Made chunks of the ARMASM lowercase to make the diff easier.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10163 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-03 04:14:16 +00:00
jljusten a495774f69 Remove svn:executable on *.c, *.h, *.asm, *.S, *.inf and *.asl*
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10087 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-25 18:17:41 +00:00
andrewfish 4b9fa12943 Move ARMv5 (ARM9) barrier instructions into assembler files
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10064 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-24 23:20:00 +00:00
andrewfish 026c3d34ee Updated Hardware Interrupt protocol to add an EOI member. Added ARM Data/Instruction syncronization barrier support to the ARM lib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10063 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-24 22:38:46 +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 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 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 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 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 883b666e0f Clean up UncachedMemoryAllocationLib to use CPU AP.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9960 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-10 01:49:46 +00:00
andrewfish 85e385f42b Added CWD to EfiFileLib. Fix some X64 warnings.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9942 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-07 22:04:03 +00:00
andrewfish f3198cba84 Update input of disasmembler to support IfThen construct. Add prototype dos script to build BeagleBoard.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9936 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-05 06:50:09 +00:00
andrewfish fef5272652 More disasm work.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9932 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-04 18:16:22 +00:00
andrewfish c5c902dad2 More updated
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9926 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-04 04:14:39 +00:00
andrewfish c639c2def9 Fix GCC warnings
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9925 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-03 23:07:29 +00:00
andrewfish eeb78924ec Cleanup to match MdePkg cleanups. More progress on ARM disassembler.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9924 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-03 22:34:43 +00:00
andrewfish b32fecd247 Added Thumb2 loads and stores to Disassmebler
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9916 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-03 03:13:21 +00:00
andrewfish c7ed09e34b Fix thumb2 Branch instruction in disassembler
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9913 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-02 18:59:41 +00:00
andrewfish 7c34497d5d More progress on the disassebler lib
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9909 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-02 04:37:34 +00:00
andrewfish f9f937d243 Move ARM disassembler into a library and out of the exception handler. Add a hook to call the lib from a platform specific EBL command on BeagleBoard.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9903 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-01 18:59:27 +00:00
andrewfish 097bd461c4 Move ARM disassembler into a library.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9902 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-01 18:25:18 +00:00
andrewfish 7e1ae735ec Remove out of date comment and fix gcc warning.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9882 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-30 20:57:49 +00:00
andrewfish d5b0f232f7 Update execption handler to print out DFSR & IFSR info.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9864 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-29 21:49:26 +00:00
andrewfish 6f72e28d04 Added a library for the default exception handler and started to add a dissasembler. Cleaned up some issues with BlockIo in BeagleBoard and add some extra info on Ebl devices command to show if a blk device has a file system on it.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9830 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-27 02:47:47 +00:00
AJFISH d4f167a92a Missed a fix in the Cpu Driver. Added some more debug for Execption handling and clean up some uncached stuff.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9789 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-17 02:54:31 +00:00
AJFISH 225290eba7 Added new PeCoffGetEntryPoint lib function to get size of PE/COFF header. This is needed for debug prints with PE/COFF images that started as ELF or Mach-O. Moved and debugged ARM semihosting lib for RVD that prints out the debugger symbol load commands in a window on the debugger. Trying to write a script file, but that crashes RVD. Added debug print to BeagleBoard Sec that prints out RVD debugger command to load symbols for the Sec. Synced the rest of the code.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9763 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 23:39:29 +00:00
AJFISH 62e797a489 Fix GCC build bug and add a debug library to dump load and unload commands into the RVI debugger window.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9752 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 16:18:02 +00:00
AJFISH f659880bfa Added support for L2 (4K) page tables and made the CPU driver change cachability attributes on request. Also got the DebugUncache infrastructure working for the first time. Looks like it works for the simple case. Checking in so we can get more eyes looking at the code.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9734 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 03:25:08 +00:00
AJFISH 965626c940 Adding a Debug version of the UncachedMemoryAllocationLib that will make the PCI DMA address not match the CPU C address for a DMA buffer. The PCI DMA address will generate a page fault if accessed from the CPU. This should make it easy to debug EFI DMA code to make sure it is following the correct rules for which pointer to use.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9725 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-13 15:18:34 +00:00
AJFISH c2b5ca8b56 Need to add some extra functions to the libraries to support paging in the CpuDxe driver (still working on that). Also looks like some of the .INF file hade the token used to search replace the copyright headers and not the headers so I updated that.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9716 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-12 18:47:28 +00:00