All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 00/26] arm: add full relocation / cache support
@ 2010-08-11 18:15 Heiko Schocher
  2010-08-11 20:00 ` Ben Gardiner
                   ` (3 more replies)
  0 siblings, 4 replies; 60+ messages in thread
From: Heiko Schocher @ 2010-08-11 18:15 UTC (permalink / raw)
  To: u-boot

This patch series add full relocation and cache support for arm
based boards. I test this for arm1136, arm_cortexa8 and arm926ejs
based boards.

Relocation support:

!! This change is not compatible to old code !!

If you want to compile in old style, you can set

CONFIG_SYS_ARM_WITHOUT_RELOC

but this possibility will be removed soon, so please
adapt your board(s)

changed arch/arm/lib/board.c to get inline with arch/powerpc/lib/board.c
maybe it is possible to snyc them to one arch/generic/lib/board.c?

This approach is similiar to powerpc, so there is a need for
an initial stack pointer addr defined through CONFIG_SYS_INIT_SP_ADDR.

Please also read doc/README.arm-relocation There is more
info what is done, and maybe should be done.

Cache support:

I used the patches from Alessandro Rubini:
http://lists.denx.de/pipermail/u-boot/2010-January/067099.html

and rebased them to actual code. Also, in case of full relocation,
the position of the TLB can not be set on compile time, instead
it is calculated in board_init_f() and stored in gd. Also added
cache support for arm_cortexa8 and arm1136.

Heiko Schocher (26):
      arm: get rid of bi_env
      ARM: flush cache for arm926
      ARM: cp15: setup mmu and enable dcache
      ARM V7 (OMAP): add data cache support, test on Beagle board
      ARM (ARM11): add data cache support, test on Qong board
      relocation: fixup cmdtable
      common: move TOTAL_MALLOC_LEN to include/common.h
      i2c: fix command usage help
      disk/part.c: fix relocation fixup
      i2c, omap24xx: set bus_initialized only after relocation.
      nand_boot_fsl_nfc.c: make "nfc" a "static const" pointer
      ARM: add relocation support
      ARM: implement relocation for ARM11
      ARM: implement relocation for ARM V7 (OMAP)
      ARM: implement relocation for ARM926
      ARM: implement relocation for ARM920
      ARM: implement relocation for ARM925
      ARM: implement relocation for ARM946
      ARM: implement relocation for pxa
      ARM: implement relocation for ixp
      ARM: implement relocation for sa1100
      ARM: implement relocation for s3c44b0
      ARM: implement relocation for lh7a40x
      ARM: implement relocation for arm_intcm
      ARM: implement relocation for arm720t
      ARM: implement relocation for arm1176

 arch/arm/config.mk                    |    8 +
 arch/arm/cpu/arm1136/start.S          |  206 +++++++++++++++
 arch/arm/cpu/arm1136/u-boot.lds       |   14 +-
 arch/arm/cpu/arm1176/start.S          |  286 ++++++++++++++++++++
 arch/arm/cpu/arm1176/u-boot.lds       |   14 +-
 arch/arm/cpu/arm720t/start.S          |  170 ++++++++++++
 arch/arm/cpu/arm720t/u-boot.lds       |   14 +-
 arch/arm/cpu/arm920t/start.S          |  225 ++++++++++++++++-
 arch/arm/cpu/arm920t/u-boot.lds       |   14 +-
 arch/arm/cpu/arm925t/start.S          |  204 ++++++++++++++-
 arch/arm/cpu/arm925t/u-boot.lds       |   14 +-
 arch/arm/cpu/arm926ejs/orion5x/dram.c |   24 ++-
 arch/arm/cpu/arm926ejs/start.S        |  172 ++++++++++++-
 arch/arm/cpu/arm926ejs/u-boot.lds     |   14 +-
 arch/arm/cpu/arm946es/start.S         |  168 ++++++++++++-
 arch/arm/cpu/arm946es/u-boot.lds      |   14 +-
 arch/arm/cpu/arm_intcm/start.S        |  166 ++++++++++++
 arch/arm/cpu/arm_intcm/u-boot.lds     |   14 +-
 arch/arm/cpu/armv7/mx51/u-boot.lds    |   14 +-
 arch/arm/cpu/armv7/omap3/cache.S      |   82 ++++++
 arch/arm/cpu/armv7/omap3/emif4.c      |   34 +++
 arch/arm/cpu/armv7/omap3/sdrc.c       |   38 +++
 arch/arm/cpu/armv7/start.S            |  191 +++++++++++++-
 arch/arm/cpu/armv7/u-boot.lds         |   14 +-
 arch/arm/cpu/ixp/start.S              |  280 ++++++++++++++++++++
 arch/arm/cpu/ixp/u-boot.lds           |   14 +-
 arch/arm/cpu/lh7a40x/start.S          |  187 +++++++++++++-
 arch/arm/cpu/lh7a40x/u-boot.lds       |   14 +-
 arch/arm/cpu/pxa/start.S              |  168 ++++++++++++
 arch/arm/cpu/pxa/u-boot.lds           |   14 +-
 arch/arm/cpu/s3c44b0/start.S          |  174 ++++++++++++
 arch/arm/cpu/s3c44b0/u-boot.lds       |   14 +-
 arch/arm/cpu/sa1100/start.S           |  162 ++++++++++++
 arch/arm/cpu/sa1100/u-boot.lds        |   14 +-
 arch/arm/include/asm/config.h         |    3 +-
 arch/arm/include/asm/global_data.h    |   11 +
 arch/arm/include/asm/u-boot-arm.h     |   14 +-
 arch/arm/include/asm/u-boot.h         |    4 -
 arch/arm/lib/board.c                  |  468 ++++++++++++++++++++++++++++++++-
 arch/arm/lib/cache-cp15.c             |   82 ++++++
 arch/arm/lib/cache.c                  |   13 +-
 arch/arm/lib/interrupts.c             |   19 ++-
 arch/avr32/include/asm/u-boot.h       |    1 -
 arch/avr32/lib/board.c                |   25 +--
 arch/i386/include/asm/u-boot.h        |    4 -
 arch/m68k/lib/board.c                 |   35 +---
 arch/mips/include/asm/u-boot.h        |    2 -
 arch/mips/lib/board.c                 |   36 +---
 arch/powerpc/lib/board.c              |   10 -
 arch/sparc/lib/board.c                |   28 +--
 board/davedenx/qong/config.mk         |    4 +-
 board/davedenx/qong/qong.c            |   87 ++++---
 board/karo/tx25/config.mk             |    4 +-
 board/karo/tx25/tx25.c                |   11 +-
 board/keymile/km_arm/km_arm.c         |   24 ++
 board/logicpd/imx27lite/config.mk     |    2 +-
 board/logicpd/imx27lite/imx27lite.c   |   15 +-
 board/ti/beagle/config.mk             |    2 +-
 common/cmd_bdinfo.c                   |   12 +-
 common/cmd_bmp.c                      |    6 +
 common/cmd_i2c.c                      |    9 +
 common/command.c                      |   37 +++
 disk/part.c                           |   11 +-
 doc/README.arm-relocation             |  321 ++++++++++++++++++++++
 drivers/i2c/omap24xx_i2c.c            |    4 +-
 include/command.h                     |    3 +
 include/common.h                      |    9 +
 include/configs/da850evm.h            |    6 +-
 include/configs/imx27lite-common.h    |    5 +
 include/configs/km_arm.h              |    4 +
 include/configs/omap3_beagle.h        |    6 +
 include/configs/qong.h                |   11 +
 include/configs/tx25.h                |   13 +-
 nand_spl/board/karo/tx25/u-boot.lds   |   14 +-
 nand_spl/nand_boot.c                  |    7 +
 nand_spl/nand_boot_fsl_nfc.c          |   13 +-
 76 files changed, 4320 insertions(+), 230 deletions(-)
 create mode 100644 doc/README.arm-relocation

- changes since previous patch set
  - add CONFIG_SYS_ARM_WITHOUT_RELOC
  - changed order of patches -> cache patches are independent
    from relocation patches
  - add missing cpu types:
    arm1176  arm720t  arm920t  arm925t  arm946es  arm_intcm
    ixp  lh7a40x  pxa  s3c44b0  sa1100
  - only converted boards which I had tested
  - rebased againt current top of tree
-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

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

end of thread, other threads:[~2010-09-22 17:51 UTC | newest]

Thread overview: 60+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-08-11 18:15 [U-Boot] [PATCH 00/26] arm: add full relocation / cache support Heiko Schocher
2010-08-11 20:00 ` Ben Gardiner
2010-08-11 20:36   ` Ben Gardiner
2010-08-11 20:01 ` Wolfgang Denk
2010-08-12  5:34   ` Heiko Schocher
2010-08-12 20:49   ` Magnus Lilja
2010-08-13 10:01     ` Wolfgang Denk
2010-08-12 12:50 ` Shinya Kuribayashi
2010-08-12 12:55   ` Shinya Kuribayashi
2010-08-12 20:19     ` Wolfgang Denk
2010-08-12 20:17   ` Wolfgang Denk
2010-08-13 14:36     ` Shinya Kuribayashi
2010-09-17 11:10 ` [U-Boot] [PATCH 00/26 v2][NEXT] " Heiko Schocher
2010-09-17 11:10   ` [U-Boot] [PATCH 01/26 v2][NEXT] arm: get rid of bi_env Heiko Schocher
2010-09-17 11:10     ` [U-Boot] [PATCH 02/26 v2][NEXT] ARM: cp15: setup mmu and enable dcache Heiko Schocher
2010-09-17 11:10       ` [U-Boot] [PATCH 03/26 v2][NEXT] ARM (ARM926ejs): add data cache support, tested on magnesium and tx25 board Heiko Schocher
2010-09-17 11:10         ` [U-Boot] [PATCH 04/26 v2][NEXT] ARM V7 (OMAP): add data cache support, test on Beagle board Heiko Schocher
2010-09-17 11:10           ` [U-Boot] [PATCH 05/26 v2][NEXT] ARM (ARM11): add data cache support, test on Qong board Heiko Schocher
2010-09-17 11:10             ` [U-Boot] [PATCH 06/26 v2][NEXT] relocation: fixup cmdtable Heiko Schocher
2010-09-17 11:10               ` [U-Boot] [PATCH 07/26 v2][NEXT] common: move TOTAL_MALLOC_LEN to include/common.h Heiko Schocher
2010-09-17 11:10                 ` [U-Boot] [PATCH 08/26 v2][NEXT] i2c: fix command usage help Heiko Schocher
2010-09-17 11:10                   ` [U-Boot] [PATCH 09/26 v2][NEXT] disk/part.c: fix relocation fixup Heiko Schocher
2010-09-17 11:10                     ` [U-Boot] [PATCH 10/26 v2][NEXT] i2c, omap24xx: set bus_initialized only after relocation Heiko Schocher
2010-09-17 11:10                       ` [U-Boot] [PATCH 11/26 v2][NEXT] nand_boot_fsl_nfc.c: make "nfc" a "static const" pointer Heiko Schocher
2010-09-17 11:10                         ` [U-Boot] [PATCH 12/26 v2][NEXT] ARM: add relocation support Heiko Schocher
2010-09-17 11:10                           ` [U-Boot] [PATCH 13/26 v2][NEXT] ARM: implement relocation for ARM11 Heiko Schocher
2010-09-17 11:10                             ` [U-Boot] [PATCH 14/26 v2][NEXT] ARM: implement relocation for ARM V7 (OMAP) Heiko Schocher
2010-09-17 11:10                               ` [U-Boot] [PATCH 15/26 v2][NEXT] ARM: implement relocation for ARM926 Heiko Schocher
2010-09-17 11:10                                 ` [U-Boot] [PATCH 16/26 v2][NEXT] ARM: implement relocation for ARM920 Heiko Schocher
2010-09-17 11:10                                   ` [U-Boot] [PATCH 17/26 v2][NEXT] ARM: implement relocation for ARM925 Heiko Schocher
2010-09-17 11:10                                     ` [U-Boot] [PATCH 18/26 v2][NEXT] ARM: implement relocation for ARM946 Heiko Schocher
2010-09-17 11:10                                       ` [U-Boot] [PATCH 19/26 v2][NEXT] ARM: implement relocation for pxa Heiko Schocher
2010-09-17 11:10                                         ` [U-Boot] [PATCH 20/26 v2][NEXT] ARM: implement relocation for ixp Heiko Schocher
2010-09-17 11:10                                           ` [U-Boot] [PATCH 21/26 v2][NEXT] ARM: implement relocation for sa1100 Heiko Schocher
2010-09-17 11:10                                             ` [U-Boot] [PATCH 22/26 v2][NEXT] ARM: implement relocation for s3c44b0 Heiko Schocher
2010-09-17 11:10                                               ` [U-Boot] [PATCH 23/26 v2][NEXT] ARM: implement relocation for lh7a40x Heiko Schocher
2010-09-17 11:10                                                 ` [U-Boot] [PATCH 24/26 v2][NEXT] ARM: implement relocation for arm_intcm Heiko Schocher
2010-09-17 11:10                                                   ` [U-Boot] [PATCH 25/26 v2][NEXT] ARM: implement relocation for arm720t Heiko Schocher
2010-09-17 11:10                                                     ` [U-Boot] [PATCH 26/26 v2][NEXT] ARM: implement relocation for arm1176 Heiko Schocher
2010-09-22  9:32                                 ` [U-Boot] [PATCH 15/26 v2][NEXT] ARM: implement relocation for ARM926 Albert ARIBAUD
2010-09-17 21:40                               ` [U-Boot] [PATCH 14/26 v2][NEXT] ARM: implement relocation for ARM V7 (OMAP) John Rigby
2010-09-17 22:02                                 ` Wolfgang Denk
2010-09-19  1:21                                   ` John Rigby
2010-09-19  6:07                                     ` Heiko Schocher
2010-09-19  6:59                                       ` Wolfgang Denk
2010-09-19  6:58                                     ` Wolfgang Denk
2010-09-17 13:07                           ` [U-Boot] [PATCH 12/26 v2][NEXT] ARM: add relocation support Albert ARIBAUD
2010-09-17 14:54                             ` Wolfgang Denk
2010-09-17 16:44                               ` Albert ARIBAUD
2010-09-17 19:22                                 ` Wolfgang Denk
2010-09-17 22:58                                   ` Albert ARIBAUD
2010-09-18 22:35                           ` Albert ARIBAUD
2010-09-18 22:58                             ` Wolfgang Denk
2010-09-19  6:04                               ` Heiko Schocher
2010-09-19  7:17                                 ` Albert ARIBAUD
2010-09-19  8:28                           ` Albert ARIBAUD
2010-09-19 11:17                           ` Wolfgang Denk
2010-09-19 11:56                             ` Heiko Schocher
2010-09-18 23:19   ` [U-Boot] [PATCH 00/26 v2][NEXT] arm: add full relocation / cache support Wolfgang Denk
2010-09-22 17:51   ` Ben Gardiner

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.