1. 02 12月, 2011 4 次提交
  2. 01 12月, 2011 6 次提交
    • S
      image: Don't detect XIP images as overlapping. · d510859b
      Stephen Warren 提交于
      bootm_load_os() detects when it writes the decompressed image over
      the top of the compressed image. If this happens, the original image
      is corrupted. When the original image is a multi-component legacy image,
      or a (potentially multi-component) FIT image, this implies that other
      components may be corrupted. In turn, this means that booting is unlikely
      to be successful.
      
      However, in the case of no image compresssion coupled with an image with
      load address equal to where the image is already located (e.g. an XIP
      kernel, or IH_TYPE_KERNEL_ANYLOAD), there has been no copy and hence no
      corruption, no matter whether it's a single-component legacy image, a
      multi-component legacy image, or a FIT image. In this case, disable the
      overlap detection, and allow boot to continue.
      
      Without this change, when booting a single-component legacy image that
      contains an IH_TYPE_KERNEL_ANYLOAD, bootm_load_os() would have returned
      BOOTM_ERR_OVERLAP, but the caller ignores this, and boot continues and
      succeeds. Now, the false error is no longer even returned.
      
      Without this change, when booting a FIT image that contains an
      IH_TYPE_KERNEL_ANYLOAD, bootm_load_os() would have returned
      BOOTM_ERR_OVERLAP, which would then cause the caller to reset the board.
      Now, the false error is no longer returned, and boot succeeds.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NStefan Roese <sr@denx.de>
      d510859b
    • S
      image: Implement IH_TYPE_KERNEL_NOLOAD · b9b50e89
      Stephen Warren 提交于
      The legacy uImage format includes an absolute load and entry-point
      address. When bootm operates on a kernel uImage in memory that isn't
      loaded at the address in the image's load address, U-Boot will copy
      the image to its address in the header.
      
      Some kernel images can actually be loaded and used at any arbitrary
      address. An example is an ARM Linux kernel zImage file. To represent
      this capability, IH_TYPE_KERNEL_NOLOAD is implemented, which operates
      just like IH_TYPE_KERNEL, except that the load address header is
      ignored, and U-Boot does not copy the image to its load address, but
      rather uses it in-place.
      
      This is useful when sharing a single (uImage-wrapped) zImage across
      multiple boards with different memory layouts; in this case, a specific
      load address need not be picked when creating the uImage, but instead
      is selected by the board-specific U-Boot environment used to load and
      boot that image.
      
      v2: Rename from IH_TYPE_KERNEL_ANYLOAD to IH_TYPE_KERNEL_NOLOAD.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NStefan Roese <sr@denx.de>
      b9b50e89
    • D
      ppc4xx: Add Io64 board support · 255ef4d9
      Dirk Eibach 提交于
      Board support for the Guntermann & Drunck Io64.
      Signed-off-by: NDirk Eibach <eibach@gdsys.de>
      Signed-off-by: NStefan Roese <sr@denx.de>
      255ef4d9
    • M
      ppc4xx: fix PMC440 painit command · a6569c63
      Matthias Fuchs 提交于
      This patch fixes the PMC440 BSP command painit. The implementation was
      broken since the step to the new environment handling.
      Signed-off-by: NMatthias Fuchs <matthias.fuchs@esd.eu>
      Signed-off-by: NStefan Roese <sr@denx.de>
      a6569c63
    • M
      ppc4xx: remove invalid access to PCI_BRDGOPT2 register · baa3713f
      Matthias Fuchs 提交于
      This patch removes an invalid call to pci_write_config_dword to
      PCI_BRDGOPT2 register. This function must not be used from pci_target_init
      and is also at the wrong place. The correct call is done later in
      pci_target_init via pci_hose_write_config_dword.
      Signed-off-by: NMatthias Fuchs <matthias.fuchs@esd.eu>
      Signed-off-by: NStefan Roese <sr@denx.de>
      baa3713f
    • M
      ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation · 2fe6b7f7
      Matthias Fuchs 提交于
      This patch switches PMC440 board code to the CONFIG_PCI_BOOTDELAY option
      instead of using a private implemention. This relies on Anatolji's patch
      that moves the pcidelay handling behind pci_target_init.
      Signed-off-by: NMatthias Fuchs <matthias.fuchs@esd.eu>
      Signed-off-by: NStefan Roese <sr@denx.de>
      2fe6b7f7
  3. 29 11月, 2011 30 次提交