diff mbox

[U-Boot,5/6] powerpc/85xx: do not initialize QE if QE's firmware is in nand flash

Message ID 1296499317-26616-6-git-send-email-Haiying.Wang@freescale.com
State Superseded
Headers show

Commit Message

Haiying Wang Jan. 31, 2011, 6:41 p.m. UTC
From: Haiying Wang <Haiying.Wang@freescale.com>

For some board which doesn't have NOR flash and the QE's firmware(ucode) is
saved in its NAND flash, we don't want call qe_init in cpu_init_r, but will
call it later after nand is initialized.

Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
---
 arch/powerpc/cpu/mpc85xx/cpu_init.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Comments

Wolfgang Denk Jan. 31, 2011, 8:08 p.m. UTC | #1
Dear Haiying.Wang@freescale.com,

In message <1296499317-26616-6-git-send-email-Haiying.Wang@freescale.com> you wrote:
> From: Haiying Wang <Haiying.Wang@freescale.com>
> 
> For some board which doesn't have NOR flash and the QE's firmware(ucode) is
> saved in its NAND flash, we don't want call qe_init in cpu_init_r, but will
> call it later after nand is initialized.

Is there a pressing reason to do this so early for other boards?  Can
not all boards initialize this later?


Best regards,

Wolfgang Denk
Haiying Wang Jan. 31, 2011, 9:02 p.m. UTC | #2
On Mon, 2011-01-31 at 21:08 +0100, Wolfgang Denk wrote:
> Dear Haiying.Wang@freescale.com,
> 
> In message <1296499317-26616-6-git-send-email-Haiying.Wang@freescale.com> you wrote:
> > From: Haiying Wang <Haiying.Wang@freescale.com>
> > 
> > For some board which doesn't have NOR flash and the QE's firmware(ucode) is
> > saved in its NAND flash, we don't want call qe_init in cpu_init_r, but will
> > call it later after nand is initialized.
> 
> Is there a pressing reason to do this so early for other boards?  Can
> not all boards initialize this later?
> 
My understanding is that QE is a cpu feature, so it is called early in
cpu_init_r. As Kumar recommended before, I can move qe_init from
cpu_init_r to misc_init_r for every 85xx boards with qe support. Is it
acceptable to you?

Haiying
Wolfgang Denk Jan. 31, 2011, 9:37 p.m. UTC | #3
Dear Haiying Wang,

In message <1296507737.2049.518.camel@haiying-laptop> you wrote:
> On Mon, 2011-01-31 at 21:08 +0100, Wolfgang Denk wrote:
> > Dear Haiying.Wang@freescale.com,
> > 
> > In message <1296499317-26616-6-git-send-email-Haiying.Wang@freescale.com> you wrote:
> > > From: Haiying Wang <Haiying.Wang@freescale.com>
> > > 
> > > For some board which doesn't have NOR flash and the QE's firmware(ucode) is
> > > saved in its NAND flash, we don't want call qe_init in cpu_init_r, but will
> > > call it later after nand is initialized.
> > 
> > Is there a pressing reason to do this so early for other boards?  Can
> > not all boards initialize this later?
> > 
> My understanding is that QE is a cpu feature, so it is called early in
> cpu_init_r. As Kumar recommended before, I can move qe_init from
> cpu_init_r to misc_init_r for every 85xx boards with qe support. Is it
> acceptable to you?

Yes, if this way we can avoid to do the same thing at different
points in the initialization sequence.

Thanks.

Best regards,

Wolfgang Denk
Kumar Gala Feb. 2, 2011, 4:29 a.m. UTC | #4
On Jan 31, 2011, at 3:37 PM, Wolfgang Denk wrote:

> Dear Haiying Wang,
> 
> In message <1296507737.2049.518.camel@haiying-laptop> you wrote:
>> On Mon, 2011-01-31 at 21:08 +0100, Wolfgang Denk wrote:
>>> Dear Haiying.Wang@freescale.com,
>>> 
>>> In message <1296499317-26616-6-git-send-email-Haiying.Wang@freescale.com> you wrote:
>>>> From: Haiying Wang <Haiying.Wang@freescale.com>
>>>> 
>>>> For some board which doesn't have NOR flash and the QE's firmware(ucode) is
>>>> saved in its NAND flash, we don't want call qe_init in cpu_init_r, but will
>>>> call it later after nand is initialized.
>>> 
>>> Is there a pressing reason to do this so early for other boards?  Can
>>> not all boards initialize this later?
>>> 
>> My understanding is that QE is a cpu feature, so it is called early in
>> cpu_init_r. As Kumar recommended before, I can move qe_init from
>> cpu_init_r to misc_init_r for every 85xx boards with qe support. Is it
>> acceptable to you?
> 
> Yes, if this way we can avoid to do the same thing at different
> points in the initialization sequence.

Doing this in misc_init_r() isn't right either.

We've had this argument before, can we just add a cpu_init_late_r() that is post env_relocate() ?

Why should we duplicate cpu generic code in board code?

- k
diff mbox

Patch

diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init.c b/arch/powerpc/cpu/mpc85xx/cpu_init.c
index 8ece970..fcf9e7b 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu_init.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu_init.c
@@ -384,7 +384,7 @@  int cpu_init_r(void)
 
 	enable_cpc();
 
-#ifdef CONFIG_QE
+#if defined(CONFIG_QE) && !defined(CONFIG_SYS_QE_FW_IN_NAND)
 	uint qe_base = CONFIG_SYS_IMMR + 0x00080000; /* QE immr base */
 	qe_init(qe_base);
 	qe_reset();