public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Heiko Schocher <hs@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 12/26 v2][NEXT] ARM: add relocation support
Date: Sun, 19 Sep 2010 13:56:30 +0200	[thread overview]
Message-ID: <4C95FA6E.8030809@denx.de> (raw)
In-Reply-To: <20100919111710.BFF8F157D71@gemini.denx.de>

Hello Wolfgang,

Wolfgang Denk wrote:
> Dear Heiko Schocher,
> 
> In message <1284721853-8298-13-git-send-email-hs@denx.de> you wrote:
>> !! This breaks support for all arm boards !!
> 
> Not only that...
> 
> ...
>> diff --git a/nand_spl/nand_boot.c b/nand_spl/nand_boot.c
>> index b9fd6f5..18ecbe1 100644
>> --- a/nand_spl/nand_boot.c
>> +++ b/nand_spl/nand_boot.c
>> @@ -221,6 +221,13 @@ static int nand_load(struct mtd_info *mtd, unsigned int offs,
>>  	return 0;
>>  }
>>  
>> +#if !defined(CONFIG_SYS_ARM_WITHOUT_RELOC)
>> +void board_init_f (ulong bootflag)
>> +{
>> +	relocate_code (TEXT_BASE - TOTAL_MALLOC_LEN, NULL, TEXT_BASE);
>> +}
>> +#endif
>> +
>>  /*
>>   * The main entry for NAND booting. It's necessary that SDRAM is already
>>   * configured and available since this code loads the main U-Boot image
>> diff --git a/nand_spl/nand_boot_fsl_nfc.c b/nand_spl/nand_boot_fsl_nfc.c
>> index ea3566b..3105657 100644
>> --- a/nand_spl/nand_boot_fsl_nfc.c
>> +++ b/nand_spl/nand_boot_fsl_nfc.c
>> @@ -263,6 +263,13 @@ static int nand_load(unsigned int from, unsigned int size, unsigned char *buf)
>>  	return 0;
>>  }
>>  
>> +#if !defined(CONFIG_SYS_ARM_WITHOUT_RELOC)
>> +void board_init_f (ulong bootflag)
>> +{
>> +	relocate_code (TEXT_BASE - TOTAL_MALLOC_LEN, NULL, TEXT_BASE);
>> +}
>> +#endif
> 
> This is global code, which is used not only on ARM systems. The
> changes break more or less all NAND-booting PowerPC board
> configurations.

Argh, you are right, thanks for finding this!

> I'm currently testing this change:
> 
> -#if !defined(CONFIG_SYS_ARM_WITHOUT_RELOC)
> +#if defined(CONFIG_ARM) && !defined(CONFIG_SYS_ARM_WITHOUT_RELOC)
> 
> 
> If this works, and you are OK with it, I will insert this into the
> commit when checking in.

I am fine with that, if it works ... but actually I am thinking
why this is not needed on PowerPC boards! If I don; t oversee
something, they jump in the nand_spl code to board_init_f() from
arch/powerpc/lib/board.c, and how fit this in the first nand
page?

Ahh! ... they(PowerPc boards) have their "own" board_init_f() in
nand_spl/board/* code for example like the mpc8313erdb ...
Hmm.. don;t know if this is possible for all PowerPc boards, but
I think, this should be also possible to move this board_init_f()
to a common place, like I did this for arm boards ... Ah, all
of this boards have board specific things to initialize in
their board_init_f() and then call relocate_code() ... Hmm...

So, in the end, I am fine with your suggested change!

bye,
Heiko
-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

  reply	other threads:[~2010-09-19 11:56 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4C95FA6E.8030809@denx.de \
    --to=hs@denx.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox