[coreboot] [PATCH] v3: determine global variable location
c-d.hailfinger.devel.2006 at gmx.net
Wed Oct 15 19:02:16 CEST 2008
On 15.10.2008 17:34, ron minnich wrote:
> On Wed, Oct 15, 2008 at 8:34 AM, ron minnich <rminnich at gmail.com> wrote:
>> On Wed, Oct 15, 2008 at 3:09 AM, Carl-Daniel Hailfinger
>> <c-d.hailfinger.devel.2006 at gmx.net> wrote:
>>> On 15.10.2008 04:54, ron minnich wrote:
>>>> return (void *) CONFIG_RAM_STACK_LOCATION;
>>>> not quite right? CONFIG_RAM_STACK_LOCATION; + CONFIG_RAM_STACK_SIZE -4?
>>> Actually, that was intentional. You see, we haven't decided on the
>>> meaning of the RAM_STACK_LOCATION constant/variable yet. We could very
>>> well declare it to be the initial %esp for RAM stacks. Then again, we
>>> could also decide that the stack shall be at the top of available RAM,
>>> and that would require us to use a variable.
>>> You supply the meaning of the variable, I'll make sure the code matches.
>> let's call it RAM_TOP_OF_STACK and put it at the standard 88ff
> Sorry: RAM_STACK_BASE at 0x88ffc
While I do agree, it may be confusing for some people to have
RAM_STACK_BASE denote the upper (as in memory location) end of the stack
and CARBASE denote the lower end of the stack.
Suggested fix: Introduce the following #define:
#define CAR_STACK_BASE (CONFIG_CARBASE + CONFIG_CARSIZE - 4)
What do you think?
More information about the coreboot