[U-Boot-Users] ColdFire: do_bootm_linux() implements passing bd_t struct, initrd and cmdline

Liew Tsi Chung-r5aahp
2007-08-13T18:12:07Z

Hi all,

I am going to replace the old do_bootm_linux() in lib_m68k/m68k_linux.c to pass bd_t struct, initrd and cmdline. So that, the linux kernel able to obtain the information of bd_t struct, initrd and cmdline thru the stack.

The implementation has been successful proven working very well in other platforms using linux 2.6.xx kernel.

Regards,
TsiChung

-----Original Message-----
From: Stefan Roese [mailto:sr at denx.de]
Sent: Friday, August 10, 2007 8:15 AM
To: u-boot-users at lists.sourceforge.net
Cc: Wolfgang Denk; w.wegner at astro-kom.de; Aaron Sells; Liew Tsi Chung-r5aahp
Subject: Re: [U-Boot-Users] interrupts in general / Fix for mcf5329evb - spurious interrupts on Linux/uClinux kernel boot

On Friday 10 August 2007, Wolfgang Denk wrote:
> > Please correct me if I am wrong, but should not interrupts be
> > completely disabled before transferring control to the linux kernel
> > to avoid any confusion?
>
> Right.

IIRC the function we are talking about here is do_bootm_linux() (m68k version) which is called from the common do_bootm() function. Before calling
do_bootm_linux() the follwing code is called:

/*
* We have reached the point of no return: we are going to
* overwrite all exception vector code, so we cannot easily
* recover from any failures any more...
*/

iflag = disable_interrupts();

So at the point of do_bootm_linux() the interrupts should already be off. If this is not the case, then it is probably better to fix this in the disable_interrupts implementation of the ColdFire.

Best regards,
Stefan

=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de =====================================================================