
29.06.2005 15:32:17, Wolfgang Denk wd@denx.de wrote:
In message 1ZQN5YCAUQ07JHUTNMTVTZWLHCTQQM.42c27942@pc-block you wrote:
...
NO GOOD: const unsigned char *array = 0x400000;
And since I don't want to touch code common to several projects, I can't initialize the pointer dynamically. So the only way for me seems to be to generate the symbol as shown in array.S. But this doesn't work.
I still can't understand why you cannot simply use an unitialized pointer, or even one which has a random init value, and then adjust it in your board specific code, say in a misc_init_r() or maybe even in a board_early_init_r() function?
Hmm, I take this as a refusal to help and a refusal to acquire new information. For me this is quite a basic problem, perhaps with my understanding, but meanwhile I guess not with my understanding, but with U-Boot itself. I'm not really looking for a workaround. The workaround for me, would be to change the common code and do another round of testing on all affected systems (which by the way is also needed with your suggestion). I was looking for information, understanding and a reason, why the way I had chosen failed. And once again, your suggestion to initialize a pointer in my project dependent code, absolutely ignores the fact, that the array is declared in common code as:
extern const char walter[];
Perhaps you don't see a difference to the following notation, which I had to use in my project dependent code:
extern const char *walter;
But there is one, even if you refuse to recognize. Feel free to ask, if you'd like to know.
I also wonder, whether the issue with the relocation of statically initialized pointers is solved?
Regards, Andreas