1. 13 Apr, 2010 2 commits
  2. 07 Apr, 2010 1 commit
    • Timur Tabi's avatar
      fsl: improve the PIXIS code and fix a few bugs · 2feb4af0
      Timur Tabi authored
      Refactor and document the Freescale PIXIS code, used on most 85xx and 86xx
      boards.  This makes the code easier to read and more flexible.
      
      Delete pixis.h, because none of the exported functions were actually being
      used by any other file.  Make all of the functions in pixis.c 'static'.
      Remove "#include pixis.h" from every file that has it.
      
      Remove some unnecessary #includes.
      
      Make 'pixis_base' into a macro, so that we don't need to define it in every
      function.
      
      Add "while(1);" loops at the end of functions that reset the board, so that
      execution doesn't continue while the reset is in progress.
      
      Replace in_8/out_8 calls with clrbits_8, setbits_8, or clrsetbits_8, where
      appropriate.
      
      Replace ulong/uint with their spelled-out equivalents.  Remove unnecessary
      typecasts, changing the types of some variables if necessary.
      
      Add CONFIG_SYS_PIXIS_VCFGEN0_ENABLE and CONFIG_SYS_PIXIS_VBOOT_ENABLE to make
      it easier for specific boards to support variations in the PIXIS registers
      sets.  No current boards appears to need this feature.
      
      Fix the definition of CONFIG_SYS_PIXIS_VBOOT_MASK for the MPC8610 HPCD.
      Apparently, "pixis_reset altbank" has never worked on this board.
      Signed-off-by: default avatarTimur Tabi <timur@freescale.com>
      Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
      2feb4af0
  3. 30 Mar, 2010 1 commit
    • Timur Tabi's avatar
      mpc86xx: set the DDR BATs after calculating true DDR size · 9ff32d8c
      Timur Tabi authored
      After determining how much DDR is actually in the system, set DBAT0 and
      IBAT0 accordingly.  This ensures that the CPU won't attempt to access
      (via speculation) addresses outside of actual memory.
      
      On 86xx systems, DBAT0 and IBAT0 (the BATs for DDR) are initialized to 2GB
      and kept that way.  If the system has less than 2GB of memory (typical for
      an MPC8610 HPCD), the CPU may attempt to access this memory during
      speculation.  The zlib code is notorious for generating such memory reads,
      and indeed on the MPC8610, uncompressing the Linux kernel causes a machine
      check (without this patch).
      
      Currently we are limited to power of two sized DDR since we only use a
      single bat.  If a non-power of two size is used that is less than
      CONFIG_MAX_MEM_MAPPED u-boot will crash.
      Signed-off-by: default avatarTimur Tabi <timur@freescale.com>
      Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
      9ff32d8c
  4. 17 Jan, 2010 1 commit
  5. 05 Jan, 2010 1 commit
  6. 05 Nov, 2009 1 commit
  7. 03 Oct, 2009 1 commit
    • Peter Tyser's avatar
      ppc: Enable full relocation to RAM · 85829017
      Peter Tyser authored
      The following changes allow U-Boot to fully relocate from flash to
      RAM:
       - Remove linker scripts' .fixup sections from the .text section
       - Add -mrelocatable to PLATFORM_RELFLAGS for all boards
       - Define CONFIG_RELOC_FIXUP_WORKS for all boards
      
      Previously, U-Boot would partially relocate, but statically initialized
      pointers needed to be manually relocated.
      Signed-off-by: default avatarPeter Tyser <ptyser@xes-inc.com>
      85829017
  8. 24 Sep, 2009 1 commit
  9. 08 Sep, 2009 1 commit
  10. 28 Aug, 2009 3 commits
  11. 22 Jul, 2009 2 commits
  12. 17 Jul, 2009 1 commit
    • Jean-Christophe PLAGNIOL-VILLARD's avatar
      stdio/device: rework function naming convention · 52cb4d4f
      Jean-Christophe PLAGNIOL-VILLARD authored
      So far the console API uses the following naming convention:
      
      	======Extract======
      	typedef struct device_t;
      
      	int	device_register (device_t * dev);
      	int	devices_init (void);
      	int	device_deregister(char *devname);
      	struct list_head* device_get_list(void);
      	device_t* device_get_by_name(char* name);
      	device_t* device_clone(device_t *dev);
      	=======
      
      which is too generic and confusing.
      
      Instead of using device_XX and device_t we change this
      into stdio_XX and stdio_dev
      
      This will also allow to add later a generic device mechanism in order
      to have support for multiple devices and driver instances.
      Signed-off-by: default avatarJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
      
      Edited commit message.
      Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
      52cb4d4f
  13. 12 Jun, 2009 1 commit
    • Wolfgang Denk's avatar
      General help message cleanup · a89c33db
      Wolfgang Denk authored
      Many of the help messages were not really helpful; for example, many
      commands that take no arguments would not print a correct synopsis
      line, but "No additional help available." which is not exactly wrong,
      but not helpful either.
      
      Commit ``Make "usage" messages more helpful.'' changed this
      partially. But it also became clear that lots of "Usage" and "Help"
      messages (fields "usage" and "help" in struct cmd_tbl_s respective)
      were actually redundant.
      
      This patch cleans this up - for example:
      
      Before:
      	=> help dtt
      	dtt - Digital Thermometer and Thermostat
      
      	Usage:
      	dtt         - Read temperature from digital thermometer and thermostat.
      
      After:
      	=> help dtt
      	dtt - Read temperature from Digital Thermometer and Thermostat
      
      	Usage:
      	dtt
      Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
      a89c33db
  14. 04 Apr, 2009 2 commits
  15. 20 Mar, 2009 1 commit
    • Trent Piepho's avatar
      Fix all linker script to handle all rodata sections · f62fb999
      Trent Piepho authored
      A recent gcc added a new unaligned rodata section called '.rodata.str1.1',
      which needs to be added the the linker script.  Instead of just adding this
      one section, we use a wildcard ".rodata*" to get all rodata linker section
      gcc has now and might add in the future.
      
      However, '*(.rodata*)' by itself will result in sub-optimal section
      ordering.  The sections will be sorted by object file, which causes extra
      padding between the unaligned rodata.str.1.1 of one object file and the
      aligned rodata of the next object file.  This is easy to fix by using the
      SORT_BY_ALIGNMENT command.
      
      This patch has not be tested one most of the boards modified.  Some boards
      have a linker script that looks something like this:
      
      *(.text)
      . = ALIGN(16);
      *(.rodata)
      *(.rodata.str1.4)
      *(.eh_frame)
      
      I change this to:
      
      *(.text)
      . = ALIGN(16);
      *(.eh_frame)
      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
      
      This means the start of rodata will no longer be 16 bytes aligned.
      However, the boundary between text and rodata/eh_frame is still aligned to
      16 bytes, which is what I think the real purpose of the ALIGN call is.
      Signed-off-by: default avatarTrent Piepho <xyzzy@speakeasy.org>
      f62fb999
  16. 17 Feb, 2009 1 commit
    • Peter Tyser's avatar
      86xx: Reset update · 4ef630df
      Peter Tyser authored
      Update the 86xx reset sequence to try executing a board-specific reset
      function.  If the board-specific reset is not implemented or does not
      succeed, then assert #HRESET_REQ.  Using #HRESET_REQ is a more standard
      reset procedure than the previous method and allows all board
      peripherals to be reset if needed.
      Signed-off-by: default avatarPeter Tyser <ptyser@xes-inc.com>
      4ef630df
  17. 28 Jan, 2009 3 commits
  18. 23 Jan, 2009 1 commit
  19. 13 Jan, 2009 1 commit
  20. 18 Nov, 2008 1 commit
  21. 03 Nov, 2008 1 commit
  22. 02 Nov, 2008 1 commit
  23. 30 Oct, 2008 1 commit
  24. 24 Oct, 2008 1 commit
  25. 18 Oct, 2008 2 commits
  26. 03 Sep, 2008 1 commit
  27. 27 Aug, 2008 2 commits
  28. 10 Jul, 2008 1 commit
  29. 02 Jul, 2008 1 commit
  30. 19 Jun, 2008 1 commit
  31. 12 Jun, 2008 1 commit
    • Becky Bruce's avatar
      Change initdram() return type to phys_size_t · 9973e3c6
      Becky Bruce authored
      This patch changes the return type of initdram() from long int to phys_size_t.
      This is required for a couple of reasons: long int limits the amount of dram
      to 2GB, and u-boot in general is moving over to phys_size_t to represent the
      size of physical memory.  phys_size_t is defined as an unsigned long on almost
      all current platforms.
      
      This patch *only* changes the return type of the initdram function (in
      include/common.h, as well as in each board's implementation of initdram).  It
      does not actually modify the code inside the function on any of the platforms;
      platforms which wish to support more than 2GB of DRAM will need to modify
      their initdram() function code.
      
      Build tested with MAKEALL for ppc, arm, mips, mips-el. Booted on powerpc
      MPC8641HPCN.
      Signed-off-by: default avatarBecky Bruce <becky.bruce@freescale.com>
      9973e3c6