All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 00/36] Massive x86 Update - Bring x86 in line with ARM and PPC
@ 2011-01-03 19:46 Graeme Russ
  2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 01/36] x86 - Fix definition of global_data struct for asm-offsets.c Graeme Russ
                   ` (36 more replies)
  0 siblings, 37 replies; 41+ messages in thread
From: Graeme Russ @ 2011-01-03 19:46 UTC (permalink / raw)
  To: u-boot

It's been a while since I've posted a patch (missed the last release cycle
entirely). I've been working on bringing x86 into line with ARM and PowerPC
with the init sequence running in flash. Currently, the SDRAM gets
initialised in asm before jumping into C and the first thing the C code did
was copy U-Boot to RAM.

The breakthrough came when I discovered that the sc520 CPU can be configured
to enable the 16kB cache to be used as Cache-As-RAM (Thanks to Juergen
Beisert). The 'big' changes in this series are:

 - Memory initialisation is done in C (26)
 - The initial global data is placed in CAR (Patches 24 & 36) - These are
   interesting and could be used to get rid of the fixed register for
   global data, but that would break the standalone API which uses it
 - Board initialisation moved into RAM (patches 27 - 34)

 The fist 22 patches are mostly cleanups to make the remaining patches a
 little simpler.

 Regards,

 Graeme

 Graeme Russ (36):
  x86 - Fix definition of global_data struct for asm-offsets.c
  x86 - Fix mangled umlauts
  x86 - Move config.mk options to arch/i386/config.mk
  x86 - move linker script into arch folder
  x86 - Paramatize link locations
  x86 - Add stack dump to register dump
  x86 - Parametize location of Real Mode code
  x86 - Move Global Descriptor Table defines to processor.h
  x86 - Add processor flags header from linux
  x86 - Call early_board_init when warm booting
  x86 - Make cpu init functions weak
  sc520 - Sort Makefile
  sc520 - Define MMCR address in include file
  sc520 - Move board specific settings to board init function
  sc520 - Remove printf calls from cpu_init_f
  eNET - Remove --no-warn when compiling dlmalloc.c
  eNET - Fix eNET Interrupt Setup for Linux
  eNET - Add RTC support to eNET
  eNET - Update board configurations
  eNET - Define MMCR values in config.h
  eNET - Define PAR settings in board configuration file
  eNET - Rearrange PAR assignments
  sc520 - Init SDRAM PAR early
  x86 - Move initial gd to fixed location
  x86 - Use Cache-As-RAM for initial stack
  sc520 - Move RAM sizing code from asm to C
  x86 - Defer setup of final stack
  x86 - Move call to dram_init_f into board_init_f
  x86 - Move test for cold boot into init functions
  x86 - Move console initialisation into board_init_f
  x86 - Fix incorrect usage of relocation offset
  x86 - Split board_init_f() into init_fnc_t compatible functions
  x86 - Rearrange function calls in board_init_f
  x86 - Convert board_init_f to use an init_sequence
  sc520 - Release CAR and enable caching
  eNET - Move initial Global Data into CAR

 arch/i386/config.mk                     |   13 +-
 arch/i386/cpu/config.mk                 |    9 +-
 arch/i386/cpu/cpu.c                     |   35 ++-
 arch/i386/cpu/interrupts.c              |   19 +-
 arch/i386/cpu/sc520/Makefile            |    5 +-
 arch/i386/cpu/sc520/sc520.c             |  146 +-------
 arch/i386/cpu/sc520/sc520_asm.S         |  615 -------------------------------
 arch/i386/cpu/sc520/sc520_car.S         |   94 +++++
 arch/i386/cpu/sc520/sc520_sdram.c       |  522 ++++++++++++++++++++++++++
 arch/i386/cpu/start.S                   |  107 +++---
 arch/i386/cpu/start16.S                 |    5 +-
 arch/i386/cpu/u-boot.lds                |   96 +++++
 arch/i386/include/asm/global_data.h     |   21 +-
 arch/i386/include/asm/ic/sc520.h        |   70 ++++-
 arch/i386/include/asm/processor-flags.h |  100 +++++
 arch/i386/include/asm/processor.h       |    9 +-
 arch/i386/include/asm/u-boot-i386.h     |    2 +
 arch/i386/lib/board.c                   |  148 +++++---
 arch/i386/lib/realmode.c                |    7 +-
 board/eNET/config.mk                    |    6 +-
 board/eNET/eNET.c                       |  120 ++++---
 board/eNET/eNET_start.S                 |    3 +-
 board/eNET/eNET_start16.S               |   16 +-
 board/eNET/u-boot.lds                   |  104 ------
 boards.cfg                              |    3 +-
 drivers/rtc/mc146818.c                  |    6 +
 include/configs/eNET.h                  |  147 ++++++++-
 27 files changed, 1351 insertions(+), 1077 deletions(-)
 delete mode 100644 arch/i386/cpu/sc520/sc520_asm.S
 create mode 100644 arch/i386/cpu/sc520/sc520_car.S
 create mode 100644 arch/i386/cpu/sc520/sc520_sdram.c
 create mode 100644 arch/i386/cpu/u-boot.lds
 create mode 100644 arch/i386/include/asm/processor-flags.h
 delete mode 100644 board/eNET/u-boot.lds

^ permalink raw reply	[flat|nested] 41+ messages in thread

end of thread, other threads:[~2011-01-27 10:46 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-03 19:46 [U-Boot] [PATCH 00/36] Massive x86 Update - Bring x86 in line with ARM and PPC Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 01/36] x86 - Fix definition of global_data struct for asm-offsets.c Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 02/36] x86 - Fix mangled umlauts Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 03/36] x86 - Move config.mk options to arch/i386/config.mk Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 04/36] x86 - move linker script into arch folder Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 05/36] x86 - Paramatize link locations Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 06/36] x86 - Add stack dump to register dump Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 07/36] x86 - Parametize location of Real Mode code Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 08/36] x86 - Move Global Descriptor Table defines to processor.h Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 09/36] x86 - Add processor flags header from linux Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 10/36] x86 - Call early_board_init when warm booting Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 11/36] x86 - Make cpu init functions weak Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 12/36] sc520 - Sort Makefile Graeme Russ
2011-01-25 20:23   ` Wolfgang Denk
2011-01-26 22:28     ` Graeme Russ
2011-01-27 10:46       ` Wolfgang Denk
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 13/36] sc520 - Define MMCR address in include file Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 14/36] sc520 - Move board specific settings to board init function Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 15/36] sc520 - Remove printf calls from cpu_init_f Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 16/36] eNET - Remove --no-warn when compiling dlmalloc.c Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 17/36] eNET - Fix eNET Interrupt Setup for Linux Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 18/36] eNET - Add RTC support to eNET Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 19/36] eNET - Update board configurations Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 20/36] eNET - Define MMCR values in config.h Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 21/36] eNET - Define PAR settings in board configuration file Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 22/36] eNET - Rearrange PAR assignments Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 23/36] sc520 - Init SDRAM PAR early Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 24/36] x86 - Move initial gd to fixed location Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 25/36] x86 - Use Cache-As-RAM for initial stack Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 26/36] sc520 - Move RAM sizing code from asm to C Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 27/36] x86 - Defer setup of final stack Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 28/36] x86 - Move call to dram_init_f into board_init_f Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 29/36] x86 - Move test for cold boot into init functions Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 30/36] x86 - Move console initialisation into board_init_f Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 31/36] x86 - Fix incorrect usage of relocation offset Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 32/36] x86 - Split board_init_f() into init_fnc_t compatible functions Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 33/36] x86 - Rearrange function calls in board_init_f Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 34/36] x86 - Convert board_init_f to use an init_sequence Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 35/36] sc520 - Release CAR and enable caching Graeme Russ
2011-01-03 19:46 ` [U-Boot] [RFC][PATCH 36/36] eNET - Move initial Global Data into CAR Graeme Russ
2011-01-25 20:31 ` [U-Boot] [PATCH 00/36] Massive x86 Update - Bring x86 in line with ARM and PPC Wolfgang Denk

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.