Message ID | CAGQXtZG4F9dVScMU2Eej6TSteVcRWeHETEP8vfATNeWn0V76qQ@mail.gmail.com |
---|---|
State | Changes Requested |
Headers | show |
Dear Peter Pan, In message <CAGQXtZG4F9dVScMU2Eej6TSteVcRWeHETEP8vfATNeWn0V76qQ@mail.gmail.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
diff --git a/common/cmd_elf.c b/common/cmd_elf.c index bf32612..7fc5ef5 100644 --- a/common/cmd_elf.c +++ b/common/cmd_elf.c @@ -229,6 +229,9 @@ 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 ("## Starting vxWorks at 0x%08lx ...\n", addr); + printf ("## Disableing interrupts ...\n"); + + disable_interrupts(); ((void (*)(void)) addr) ();