[PATCH] common/cmd_elf : Disable interrupts before boot vxWorks

Ke Pan pppeterpppan at gmail.com
Thu Oct 13 04:34:23 CEST 2011


The vxWorks needs all interrupts to be disabled before its boot.
---
 common/cmd_elf.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/common/cmd_elf.c b/common/cmd_elf.c
index bf32612..a5ef9b4 100644
--- a/common/cmd_elf.c
+++ b/common/cmd_elf.c
@@ -228,6 +228,8 @@ int do_bootvx (cmd_tbl_t *cmdtp, int flag, int
argc, char * const argv[])

 	printf ("## Using bootline (@ 0x%lx): %s\n", bootaddr,
 			(char *) bootaddr);
+	printf("## Disableing interrupts ...\n");
+	disable_interrupts();
 	printf ("## Starting vxWorks at 0x%08lx ...\n", addr);

 	((void (*)(void)) addr) ();
--=20
1.7.4.1



2011/10/12 Wolfgang Denk <wd at denx.de>:
> Dear Peter Pan,
>
> In message <CAGQXtZG4F9dVScMU2Eej6TSteVcRWeHETEP8vfATNeWn0V76qQ at mail.gmai=
l.com> you wrote:
>>
>> vxWorks needs all interrupt to be disabled before it's boot up, while
>> u-boot sometimes enables them.
>
> In which configuration / on which board have you run your tests?
>
>> Recently, I'm facing this kind of problem about booting up vxWorks
>> through bootvx command.
>> So, I added a patch to the common/cmd_elf.c to disable all interrupts
>> before run into vxWorks image.
>> This patch is now working fine on my board. So I think maybe it will
>> be helpful for others.
>>
>> The following is my patch :
>
> Checkpatch says: total: 2 errors, 3 warnings, 10 lines checked
>
> Please see http://www.denx.de/wiki/U-Boot/Patches ; then clean up and
> resubmit.
>
> Thanks.
>
> Best regards,
>
> Wolfgang Denk
>
> --
> DENX Software Engineering GmbH, =A0 =A0 MD: Wolfgang Denk & Detlev Zundel
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
> It's not an optical illusion, it just looks like one. =A0 -- Phil White
>


More information about the U-Boot mailing list