[U-Boot-Users] Non-static global variables cause relocation to fail
Jerry Van Baren
gvb.uboot at gmail.com
Fri Jun 20 05:33:35 CEST 2008
Timur Tabi wrote:
> Wolfgang Denk wrote:
>
>> You don't seriously expect any real help given such a vague
>> description? It would be somewhat helpful if you said exactly which
>> changes cause the code to work or fail...
>
> I did say that. Simply making the global variable not static caused it to fail.
>
> Works:
>
> static struct __attribute__ ((__packed__)) eeprom {
>
> Doesn't work:
>
> struct __attribute__ ((__packed__)) eeprom {
>
> Everything else is the same.
Hi Timur,
That isn't a variable, that is the first line of a struct declaration.
You cut some pretty important information: what the struct is, the
actual variable in question, and whether it is initialized.
I'm guessing from the name "eeprom" that you have a non-zero initializer
on it??? Does it make a difference if it is uninitialized, initialized
to {0}, or initialized to non-zero values?
Does it make a difference if it is packed or not (my guess: much less
likely than initialization to cause works/broken).
Best regards,
gvb
More information about the U-Boot
mailing list