1. 21 3月, 2018 2 次提交
  2. 07 3月, 2018 4 次提交
  3. 09 2月, 2018 1 次提交
  4. 19 9月, 2017 1 次提交
  5. 31 8月, 2017 1 次提交
  6. 22 12月, 2016 1 次提交
  7. 23 3月, 2016 1 次提交
  8. 04 3月, 2016 1 次提交
    • P
      loader: Add data swap option to load-elf · 7ef295ea
      Peter Crosthwaite 提交于
      Some CPUs are of an opposite data-endianness to other components in the
      system. Sometimes elfs have the data sections layed out with this CPU
      data-endianness accounting for when loaded via the CPU, so byte swaps
      (relative to other system components) will occur.
      
      The leading example, is ARM's BE32 mode, which is is basically LE with
      address manipulation on half-word and byte accesses to access the
      hw/byte reversed address. This means that word data is invariant
      across LE and BE32. This also means that instructions are still LE.
      The expectation is that the elf will be loaded via the CPU in this
      endianness scheme, which means the data in the elf is reversed at
      compile time.
      
      As QEMU loads via the system memory directly, rather than the CPU, we
      need a mechanism to reverse elf data endianness to implement this
      possibility.
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NPeter Crosthwaite <crosthwaite.peter@gmail.com>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      7ef295ea
  9. 29 1月, 2016 1 次提交
    • P
      x86: Clean up includes · b6a0aa05
      Peter Maydell 提交于
      Clean up includes so that osdep.h is included first and headers
      which it implies are not included manually.
      
      This commit was created with scripts/clean-includes.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1453832250-766-11-git-send-email-peter.maydell@linaro.org
      b6a0aa05
  10. 25 9月, 2015 1 次提交
  11. 26 1月, 2015 1 次提交
  12. 15 12月, 2014 1 次提交
  13. 29 6月, 2013 1 次提交
    • K
      multiboot: Calculate upper_mem in the ROM · 26a8ec07
      Kevin Wolf 提交于
      The upper_mem field of the Multiboot information struct doesn't really
      contain the RAM size - 1 MB like we used to calculate it, but only the
      memory from 1 MB up to the first (upper) memory hole.
      
      In order to correctly retrieve this information, the multiboot ROM now
      looks at the mmap it creates anyway and tries to find the size of
      contiguous usable memory from 1 MB.
      
      Drop the multiboot.c definition of lower_mem and upper_mem because both
      are queried at runtime now.
      Signed-off-by: NKevin Wolf <mail@kevin-wolf.de>
      Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com>
      Message-id: 1372018066-21822-3-git-send-email-mail@kevin-wolf.de
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      26a8ec07
  14. 02 6月, 2013 1 次提交
  15. 09 4月, 2013 2 次提交
  16. 01 3月, 2013 2 次提交
  17. 19 12月, 2012 1 次提交
  18. 23 10月, 2012 1 次提交
    • A
      Rename target_phys_addr_t to hwaddr · a8170e5e
      Avi Kivity 提交于
      target_phys_addr_t is unwieldly, violates the C standard (_t suffixes are
      reserved) and its purpose doesn't match the name (most target_phys_addr_t
      addresses are not target specific).  Replace it with a finger-friendly,
      standards conformant hwaddr.
      
      Outstanding patchsets can be fixed up with the command
      
        git rebase -i --exec 'find -name "*.[ch]"
                              | xargs s/target_phys_addr_t/hwaddr/g' origin
      Signed-off-by: NAvi Kivity <avi@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      a8170e5e
  19. 30 5月, 2012 1 次提交
    • S
      fix multiboot loading if load_end_addr == 0 · 9c3a596a
      Scott Moser 提交于
      The previous multiboot load code did not treat the case where
      load_end_addr was 0 specially.  The multiboot specification says the
      following:
       * load_end_addr
         Contains the physical address of the end of the data segment.
         (load_end_addr - load_addr) specifies how much data to load. This
         implies that the text and data segments must be consecutive in the
         OS image; this is true for existing a.out executable formats. If
         this field is zero, the boot loader assumes that the text and data
         segments occupy the whole OS image file.
      Signed-off-by: NScott Moser <smoser@ubuntu.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      9c3a596a
  20. 21 8月, 2011 1 次提交
  21. 29 7月, 2011 1 次提交
    • G
      multiboot: Fix bss segment support · 6b8273a1
      Göran Weinholt 提交于
      Multiboot images can specify a bss segment. The boot loader must clear
      the memory of the bss and ensure that no modules or structures are
      allocated inside it. Several fields are provided in the Multiboot
      header that were previously not used properly. The header is now used
      to determine how much data should be read from the image and how much
      memory should be reserved to the bss segment.
      Signed-off-by: NGöran Weinholt <goran@weinholt.se>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      6b8273a1
  22. 23 7月, 2011 1 次提交
  23. 04 6月, 2011 1 次提交
  24. 09 4月, 2011 1 次提交
  25. 24 1月, 2011 1 次提交
  26. 12 12月, 2010 1 次提交
  27. 16 11月, 2010 1 次提交
  28. 04 9月, 2010 1 次提交
  29. 11 6月, 2010 1 次提交
    • I
      multiboot: compilation fix with DEBUG_MULTIBOOT enabled. · bd418d90
      Isaku Yamahata 提交于
      This patch fixes the following compilation errors in multiboot.c
      when DEBUG_MULTIBOOT is defined.
      Use TARGET_FMT_plx instead of %x for target_phys_addr_t.
      
        CC    i386-softmmu/multiboot.o
      cc1: warnings being treated as errors
      qemu/hw/multiboot.c: In function 'mb_add_mod':
      qemu/hw/multiboot.c:121: error: format '%08x' expects type 'unsigned int', but argument 4 has type 'target_phys_addr_t'
      qemu/hw/multiboot.c:121: error: format '%08x' expects type 'unsigned int', but argument 5 has type 'target_phys_addr_t'
      qemu/hw/multiboot.c: In function 'load_multiboot':
      qemu/hw/multiboot.c:279: error: format '%#x' expects type 'unsigned int', but argument 5 has type 'target_phys_addr_t'
      qemu/hw/multiboot.c:307: error: format '%x' expects type 'unsigned int', but argument 3 has type 'target_phys_addr_t'
      qemu/hw/multiboot.c:308: error: format '%x' expects type 'unsigned int', but argument 3 has type 'target_phys_addr_t'
      make[1]: *** [multiboot.o] Error 1
      Signed-off-by: NIsaku Yamahata <yamahata@valinux.co.jp>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      bd418d90
  30. 16 3月, 2010 1 次提交
    • A
      load_elf: replace the address addend by a translation function · 409dbce5
      Aurelien Jarno 提交于
      A few machines need to translate the ELF header addresses into physical
      addresses. Currently the only possibility is to add a value to the
      addresses.
      
      This patch replaces the addend argument by and a translation function
      and an opaque passed to the function. A NULL function does not translate
      the address.
      
      The patch also convert all machines that have an addend, simplify the
      PowerPC kernel loading and fix the MIPS kernel loading using this new
      feature. Other machines may benefit from this feature.
      Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
      409dbce5
  31. 08 1月, 2010 1 次提交