public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: kow9loon <easter8@hotmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] stand alone application
Date: Sat, 31 Mar 2007 12:13:07 -0700 (PDT)	[thread overview]
Message-ID: <9771147.post@talk.nabble.com> (raw)


I am trying to write a stand alone application, which is supposed to be a
board diagnostics for manufacturing. The way it supposes to work is as
follows: U_boot could either download the diagnostics manually under the
U_boot prompt, or be calling up do_tftp() directly if it is to be done
automatically. Results generated from the diagnostics are to be recorded in
the RAM, whose contents shall later be uploaded as a log file to an external
server via tftp. After reading the examples provided in the example
directory, I have the following questions:

(1) In my understanding, the stand alone application (the board diagnostic
for manufacturing) is supposed to be compiled as a separately entity in the
U-boot path and then be placed in an external server, waiting to be
downloaded to the RAM on board; when either go <address> or do_go(address)
is executed, control get passed to the stand alone application, how could
the stand alone application be able to make calls to functions that are
exported (those appeared in both exports.c and export.h), without some kind
of "linking"? Unless go <address> or do_go(address) perform some sort of
"linking" or "peudo linking" action, this doesn't sound possible. Could
someone explain to me how this works? 

My expectation of how this could work is: on execution of the go <address>
command or do_go (address), address of the jump table is to be loaded into a
register, and it is the responsibility of the application to save the value
of this register before anything else, in such a way to allow the
application to call up functions that it elects by picking up the correct
addresses of these functions via indexing. However, after reading the
examples provided in U-boot, I have not seen any motion of saving the value
of the register. However, vwhich register U-boot chooses to use would be
processor dependent. This is just my two cents.

(2) Is uploading currently being supported in U-boot's tftp implementation?
Judging from the do_tftp codes, it looks that only "downloading" action is
supported not "uploading". Could someone confirm that or point to the place
where "uploading" is implemented?

Any input would be greatly appreciated. Thanks.



Kow9loon
-- 
View this message in context: http://www.nabble.com/stand-alone-application-tf3498698.html#a9771147
Sent from the Uboot - Users mailing list archive at Nabble.com.

             reply	other threads:[~2007-03-31 19:13 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-31 19:13 kow9loon [this message]
2007-04-01  0:37 ` [U-Boot-Users] stand alone application Wolfgang Denk
2007-04-01 16:31   ` kow9loon
2007-04-01 19:36     ` Wolfgang Denk
2007-04-01 17:11 ` kow9loon
2007-04-01 19:39   ` Wolfgang Denk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9771147.post@talk.nabble.com \
    --to=easter8@hotmail.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox