1. 03 7月, 2007 2 次提交
  2. 29 6月, 2007 2 次提交
  3. 28 6月, 2007 6 次提交
  4. 25 6月, 2007 4 次提交
  5. 14 6月, 2007 6 次提交
    • D
      [POWERPC] Fix problems with device tree representation of TSI-1xx bridges · e58ca3de
      David Gibson 提交于
      This fixes some problems with the way the some things
      represented in the device tree for the Holly and Taiga boards.  This
      means changes both to the dts files, and to the code which
      instantiates the tsi108 ethernet platform devices based on the device
      tree.
      
      	- First, and most importantly, the ethernet PHYs are given
      with an identical 'reg' property.  This reg currently encodes the
      accessible register used to initiate mdio interaction with the PHYs,
      rather than a meaningful address on the parent bus (mdio in this
      case), which is incorrect.  Instead we give the address of these
      registers as 'reg' in the mdio node itself, and encode the ID of each
      phy in their 'reg' propertyies.
      	- Currently the platform device constructor enables a
      workaround in the tsi108 ethernet driver based on the compatible
      property of the PHY.  This is incorrect, because the workaround in
      question is necessary due to the board's wiring of the PHY, not the
      model of PHY itself.  This patch alters the constructor to instead
      enable the workaround based on a new special property in the PHY node.
      	- The compatible properties on a number of nodes in the device
      tree are insufficiently precise.  In particular the PHYs give only
      "bcm54xx", which is broken, since there are many bcm54xx PHY models,
      and they have differences which matter.  The mdio had a compatible
      property of "tsi-ethernet" identical to the ethernet MAC nodes, which
      doesn't make sense.  The ethernet, i2c, bridge and PCI nodes were
      given only as "tsi-*" which is somewhat inprecise, we replace with
      "tsi108-*" in the case of Taiga (which has a TSI108 bridge), and
      "tsi109-*", "tsi108-*" in the case of Holly (which has a TSI109
      bridge).
      	- We remove some "model" properties from the ethernets on
      Taiga board which were neither useful nor adequately precise.
      	- On Holly we change to using a dtc label instead of a full
      path to reference the MPIC node, which makes the dts a little more
      readable.
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      e58ca3de
    • D
      [POWERPC] Don't store a command line in the Holly device tree · e60c526f
      David Gibson 提交于
      Currently, the Holly device tree includes a bootargs property in
      /chosen, which gives a commandline.  This is somewhat inconvenient,
      because it means an alternative default command line can't be given in
      the kernel config - the value obtained from the dts via the
      bootwrapper will always override CONFIG_CMDLINE.
      
      This removes the command line from the dts, and instead puts the
      same command line as a default in holly_defconfig.
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      e60c526f
    • 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] Derive ebc ranges property from EBC registers · b2ba34f3
      David Gibson 提交于
      In the device tree for Ebony, the 'ranges' property in the node for
      the EBC bridge shows the mappings from the chip select / address lines
      actually used for the EBC peripherals into the address space of the
      OPB.  At present, these mappings are hardcoded in ebony.dts for the
      mappings set up by the OpenBIOS firmware when it configures the EBC
      bridge.
      
      This replaces the hardcoded mappings with code in the zImage to
      read the EBC configuration registers and create an appropriate ranges
      property based on them.  This should make the zImage and kernel more
      robust to changes in firmware configuration.  In particular, some of
      the Ebony's DIP switches can change the effective address of the Flash
      and other peripherals in OPB space.  With this patch, the kernel will
      be able to cope with at least some of the possible variations.
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      b2ba34f3
    • D
      [POWERPC] Factor zImage's 44x reset code out of ebony.c · 11123346
      David Gibson 提交于
      The ebony_exit() function which resets the Ebony board should in fact
      be common to most if not all 44x boards.  This moves the function out
      into 44x.c, renaming it, so it can be used by other 44x platforms.
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      11123346
    • 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. 07 6月, 2007 1 次提交
    • P
      [POWERPC] Fix building of COFF zImages · f40e524e
      Paul Mackerras 提交于
      The COFF zImage (for booting oldworld powermacs) wasn't being built
      correctly because the procedure descriptor in crt0.S for the zImage
      entry point wasn't declared as .globl, and therefore wasn't getting
      pulled in from wrapper.a by the linker.  This adds the necessary
      .globl statement.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      f40e524e
  7. 02 6月, 2007 4 次提交
  8. 23 5月, 2007 1 次提交
  9. 17 5月, 2007 8 次提交
  10. 12 5月, 2007 6 次提交
    • 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 DTS file for the Motorola PrPMC2800 platform · 3f456cc1
      Mark A. Greer 提交于
      Add the device tree source file for the prpmc2800 line of processor PMCs.
      Several of the property values are updated by the bootwrapper but sane
      defaults have been chosen in case the bootwrapper can't determine the
      exact processor board variant.  The defaults should allow the kernel
      to boot despite having non-optimal device tree property values.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      3f456cc1
    • 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