Access global data from standalone application
Hi,
Is there any way to access global data defined in U-Boot from standalone applications? For example, hello_world wants to access flash_info[].
Regards,
-Shawn.
Quoted 4 lines · In message <[email protected]> you wrote:
Is there any way to access global data defined in U-Boot from standalone applications? For example,
hello_worldwants to access flash_info[].
Be careful with your terms. It is trivial to access "global data" in SA apps as the GD pointer is passed in a register - but "Global Data" in U-Boot is something which has nothing to do with flash_info[].
You can export and call in SA apps functions which perform operations on flash_info[], but you cannot access flash_info[] or any other global variables directly.
Note that this is intentional.
Best regards,
Wolfgang Denk
Signature · 6 lines
Software Engineering: Embedded and Realtime Systems, Embedded Linux Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de G's Third Law: In spite of all evidence to the contra- ry, the entire universe is composed of only two basic substances: magic and bullshit. H's Dictum: There is no magic ...
Quoted 7 lines
Quoted 3 lines
Is there any way to access global data defined in U-Boot from standalone applications? For example,
hello_worldwants to access flash_info[].Be careful with your terms. It is trivial to access "global data" in SA apps as the GD pointer is passed in a register - but "Global Data" in U-Boot is something which has nothing to do with flash_info[].
Well, what I meant is exported data. Thanks for the clarification. My understanding is that the GD pointer points to gd_t. Those data inside gd_t can be accessed trivially in SA apps, as you said.
Quoted 3 lines
You can export and call in SA apps functions which perform operations on flash_info[], but you cannot access flash_info[] or any other global variables directly.
Confused. How do SA apps perform operations on exported data without accessing them? Could you elaborate a little bit? I want to write a SA app to print the protection info of all flash banks. I know flinfo can do that. I just do some experiments. ;)
Regards,
-Shawn.
Hello,
Quoted 2 lines · in message <[email protected]> you wrote:
Quoted 2 lines
You can export and call in SA apps functions which perform operations
^^^^^^ ^^^^ ^^^^^^^^^
Quoted 5 lines
Quoted 2 lines
on flash_info[], but you cannot access flash_info[] or any other global variables directly.
Confused. How do SA apps perform operations on exported data without accessing them? Could you elaborate a little bit? I want to write a SA
By calling functions in the U-Boot code which use the data.
Quoted 2 lines
app to print the protection info of all flash banks. I know flinfo can do that. I just do some experiments. ;)
Then just export and call the do_flinfo function.
Why reinvent the wheel or duplicate already existing code?
Best regards,
Wolfgang Denk
Signature · 5 lines
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The most exciting phrase to hear in science, the one that heralds new
discoveries, is not "Eureka!" (I found it!) but "That's funny ..."
-- Isaac Asimov