[U-Boot-Users] [PATCH] ARTOS boot support for u-boot
Pantelis Antoniou
panto at intracom.gr
Mon Apr 21 09:34:36 CEST 2003
Wolfgang Denk wrote:
>Dear Pantelis,
>
>in message <3E9E9B5C.30904 at intracom.gr> you wrote:
>
>
>>The following patch against u-boot-0.3.0 adds support for booting ARTOS
>>images
>>using u-boot. ARTOS is a custom in-house operating system in use by my
>>company.
>>
>>
>
>I will not add the patch for now, as it contains some severe
>problems:
>
>
Correct.
>
>
>>+ /*
>>+ * Booting an ARTOS kernel image + application
>>+ */
>>+
>>+ /* place data at the top of memory */
>>+ top = gd->bd->bi_memstart + gd->bd->bi_memsize;
>>+
>>+ /* first check the artos specific boot args, then the linux args*/
>>+ if ((s = getenv("abootargs")) == NULL && (s = getenv("bootargs")) == NULL)
>>+ s = "";
>>+
>>+ /* get length of cmdline, and place it */
>>+ len = strlen(s);
>>+ top = (top - (len + 1)) & ~0xF;
>>+ cmdline = (char *)top;
>>+ debug ("## cmdline at 0x%08lX ", top);
>>+ strcpy(cmdline, s);
>>
>>
>^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
>
>>+ /* copy bdinfo */
>>+ top = (top - sizeof(bd_t)) & ~0xF;
>>+ debug ("## bd at 0x%08lX ", top);
>>+ kbd = (bd_t *)top;
>>+ memcpy(kbd, gd->bd, sizeof(bd_t));
>>
>>
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
>You cannot do that. U-Boot copies itself to the top of memory, so you
>are overwriting U-Boot's data here. It was pure luck if this wrked
>for you. but the behaviour is completely undefined.
>
>Please implement this in a way that is compatible to U-Boot's memory
>map.
>
>Also, since this is a proprietary OS with a very limited propagation
>I would like to ask to make the ARTOS boot code configurable, i. e.
>add a #define so it can enabled it in the board config file, but will
>not add to the code size for those systems that don't want it.
>
>Best regards,
>
>Wolfgang Denk
>
>
>
Points addressed with this patch.
That it worked the first time was very lucky indeed.
Regards
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: u-boot-0.3.0-artos-v2.patch
Url: http://lists.denx.de/pipermail/u-boot/attachments/20030421/097e7518/attachment.txt
More information about the U-Boot
mailing list