1. 22 8月, 2007 2 次提交
  2. 20 8月, 2007 2 次提交
  3. 10 7月, 2007 2 次提交
    • T
      [POWERPC] Create a dummy zImage if no valid platform has been selected · 4bb09281
      Tony Breeds 提交于
      This simply prevents a build error if no platform is selected.
      Signed-off-by: NTony Breeds <tony@bakeyournoodle.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      4bb09281
    • G
      [POWERPC] PS3: Bootwrapper support. · bafdb645
      Geoff Levand 提交于
      Add support to build the PS3 flash rom image and remove some unneeded
      lmb calls.
      
      The PS3's lv1 loader supports loading gzipped binary images from flash
      rom to addr zero. The loader enters the image at addr 0x100.
      
      In this implementation a bootwrapper overlay is use to arrange for the
      kernel to be loaded to addr zero and to have a suitable bootwrapper
      entry at 0x100.  To construct the rom image, 0x100 bytes from offset
      0x100 in the kernel is copied to the bootwrapper symbol
      __system_reset_kernel.  The 0x100 bytes at the bootwrapper symbol
      __system_reset_overlay is then copied to offset 0x100.  At runtime the
      bootwrapper program copies the 0x100 bytes at __system_reset_kernel to
      addr 0x100.
      
      zImage.ps3 is a wrapped image that contains a flat device tree, an lv1
      compatible entry point, and an optional initrd.  otheros.bld is the gzip
      compresed rom image built from zImage.ps3.  otheros.bld is suitable for
      programming into the PS3 boot flash memory.
      Signed-off-by: NGeoff Levand <geoffrey.levand@am.sony.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      bafdb645
  4. 25 6月, 2007 3 次提交
  5. 14 6月, 2007 2 次提交
    • D
      [POWERPC] Consolidate cuboot initialization code · 85aecac8
      David Gibson 提交于
      The various cuboot platforms (i.e. pre-device tree aware u-boot for
      83xx, 85xx and Ebony) share a certain amount of code for parsing the
      boot parameters.  To a certain extent that's inevitable, since they
      platforms have different definitions of the bd_t structure.  However,
      with some macro work and a helper function, this patch improves the
      situation a bit.
      
      In the process, this fixes a bug on Ebony, which was incorrectly
      handling the parameters passed form u-boot for the command line (the
      bug was copied from 83xx and 85xx which have subsequently been fixed).
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      85aecac8
    • D
      [POWERPC] Split low-level OF-related bootloader code into separate files · 2e601613
      David Gibson 提交于
      Currently, all OF-related code in the bootloader is contained in of.c.
      of.c also provides the platform specific things necessary to boot on
      an OF platform.
      
      However, there are platforms (such as PReP) which can include an OF
      implementation, but are not bootable as pure OF systems.  For use by
      such platforms, this patch splits out the low-level parts of the OF
      code (call_prom() and various wrappers thereof) into a new oflib.c
      file.  In addition, the code related to bootwrapper console output via
      OF are moved to a new ofconsole.c file.  Both these files are included
      in the wrapper.a library where they can be used by both full-OF and
      partial OF platforms.
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      2e601613
  6. 02 6月, 2007 3 次提交
  7. 17 5月, 2007 3 次提交
  8. 12 5月, 2007 5 次提交
    • M
      [POWERPC] Add bootwrapper support for Motorola PrPMC2800 platform · c368d921
      Mark A. Greer 提交于
      The Motorola PrPMC280 and PrPMC2800 processor modules sit on an F101 or
      PrPMC2800 baseboard, respectively.  There are several variants of each
      type of processor module which can have different amounts of memory,
      amounts of FLASH, cpu frequencies, and an mv64360 or an mv64362.
      
      The bootwrapper code for that platform reads VPD from an I2C EEPROM
      to determine the processor module variant.  From the variant, the
      amount of memory, etc. is determined and the device tree is updated
      accordingly.  If the variant cannot be determined (e.g., corrupted
      VPD or a previously unknown variant), the property values already
      in the device tree are used.
      
      Also, the firmware for those platforms does not completely configure
      the mv64x60 host bridge so that configuration is done here.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      c368d921
    • M
      [POWERPC] Add bootwrapper support for Marvell/mv64x60 I2C · ae4b3fbc
      Mark A. Greer 提交于
      Some platforms support a variety processor modules with no method of
      determining which exact processor module is being used except by
      examining Vital Product Data (VPD).  The modules may have different
      amounts of memory, clock frequencies, etc. so reading the VPD becomes
      necessary to correctly set properties in the device tree before its
      passed to the kernel.
      
      Often the VPD is stored in I2C EEPROMs so an I2C driver becomes necessary.
      This I2C driver is for the I2C controller that's embedded on the Marvel
      mv64x60 line of host bridges.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      ae4b3fbc
    • M
      [POWERPC] Add bootwrapper support for Marvell MPSC · e12deb84
      Mark A. Greer 提交于
      The bootwrapper requires a serial driver to allow cmdline editing
      and information reporting on the console.  This driver is required
      by platforms that boot a zImage and use the MPSC for the console.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      e12deb84
    • M
      [POWERPC] Add bootwrapper support for Marvell/mv64x60 hostbridge · 0f81b11d
      Mark A. Greer 提交于
      The mv64x60 host bridge has many windows between its various components
      (cpu, system memory, ethernet ctlr, MPSC, DMA ctlr, PCI MEM, PCI I/O).
      Unfortunately, the firmware on some of mv64x60-based platforms do not
      properly or completely configure those windows (e.g., MPSC->system memory
      windows not configured or CPU->PCI MEM space not configured).
      
      So, the missing configuration needs to be done in either the bootwrapper
      or in the kernel.  To keep the kernel as clean as possible, it is done
      in the bootwrapper.  Note that I/O controller configuration is NOT being
      done, its only the windows to allow the I/O controllers and other components
      to access memory, etc. that is being done--drivers assume that their
      controllers can already access system memory).
      
      Table of routines and the windows they configure:
      	mv64x60_config_ctlr_windows()	ENET->System Memory
      					MPSC->System Memory
      					IDMA->System Memory
      
      	mv64x60_config_pci_windows()	PCI MEM->System Memory
      					PCI I/O->Bridge's Registers
      
      	mv64x60_config_cpu2pci_window()	CPU->PCI MEM
      					CPU->PCI I/O
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      0f81b11d
    • M
      [POWERPC] Add Makefile rules to wrap dts file in zImage · 916066d5
      Mark A. Greer 提交于
      Add 'zImage.dts' and 'zImage.dts_initrd' build rules that automatically
      compile and wrap a dts file from arch/powerpc/boot/dts into the zImage file.
      The resulting zImage will be arch/powerpc/boot/zImage.dts.<platform> and
      arch/powerpc/boot/zImage.dts_initrd.<platform>, respectively.
      
      Having separate rules allows the user to choose whether to include a device
      tree--and which device tree--at build time.  This is useful when one Makefile
      target builds a zImage that runs on several platforms except for differing
      device trees.  By just setting CONFIG_DEVICE_TREE and running "make zImage.dts"
      the exact zImage you want is built without Makefile bloat or manually running
      the wrapper script.
      
      The dts file is expected to be arch/powerpc/boot/dts/$(CONFIG_DEVICE_TREE)
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      916066d5
  9. 08 5月, 2007 2 次提交
  10. 07 5月, 2007 2 次提交
  11. 02 5月, 2007 1 次提交
  12. 30 4月, 2007 1 次提交
  13. 27 4月, 2007 2 次提交
  14. 24 4月, 2007 2 次提交
  15. 13 4月, 2007 3 次提交
  16. 26 3月, 2007 3 次提交
  17. 21 3月, 2007 1 次提交
  18. 13 3月, 2007 1 次提交
    • D
      [POWERPC] zImage: Cleanup and improve zImage entry point · cd197ffc
      David Gibson 提交于
      This patch re-organises the way the zImage wrapper code is entered, to
      allow more flexibility on platforms with unusual entry conditions.
      After this patch, a platform .o file has two options:
      
      1) It can define a _zimage_start, in which case the platform code gets
         control from the very beginning of execution.  In this case the
         platform code is responsible for relocating the zImage if necessary,
         clearing the BSS, performing any platform specific initialization, and
         finally calling start() to load and enter the kernel.
      
      2) It can define platform_init().  In this case the generic crt0.S
         handles initial entry, and calls platform_init() before calling
         start().  The signature of platform_init() is changed, however, to
         take up to 5 parameters (in r3..r7) as they come from the platform's
         initial loader, instead of a fixed set of parameters based on OF's
         usage.
      
         When using the generic crt0.S, the platform .o can optionally
         supply a custom stack to use, using the BSS_STACK() macro.  If this
         is not supplied, the crt0.S will assume that the loader has
         supplied a usable stack.
      
      In either case, the platform code communicates information to the
      generic code (specifically, a PROM pointer for OF systems, and/or an
      initrd image address supplied by the bootloader) via a global
      structure "loader_info".
      
      In addition the wrapper script is rearranged to ensure that the
      platform .o is always linked first.  This means that platforms where
      the zImage entry point is at a fixed address or offset, rather than
      being encoded in the binary header can be supported using option (1).
      Signed-off-by: NDavid Gibson <dwg@au1.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      cd197ffc