[coreboot] [PATCH] Add CPP logic to VIA CAR init code.

Patrick Georgi patrick.georgi at coresystems.de
Sun Oct 3 19:23:08 CEST 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 03.10.2010 18:54, schrieb Warren Turkal:
> I see that is the change that fixed it. However, I'm still not sure I
> understand the fix completely. When CONFIG_TINY_BOOTBLOCK is defined
> and AUTO_XIP_ROM_BASE is not defined, we get the following line (line
> number 159 or so) in build/mainboard/via/vt8454c/crt0.s:
>  movl $AUTO_XIP_ROM_BASE, %eax
> 
> How does that assemble without an error?
> 
> Is the AUTO_XIP_ROM_BASE set to some value (presumably 0) by the
> assembler for some reason that I don't see? For reference, here is the
> equivalent line from crt0.disasm:
> 100 0115 B8000000 >---->-------movl>---$REAL_XIP_ROM_BASE, %eax
This becomes a symbol in the .o file that is (must be) resolved on link
time. That's why it must be provided verbatim (without "|anything") in
the code.

What we _could_ do is to define REAL_XIP_ROM_BASE_WITH_FLAGS_SET (or
sth. to that effect) and run with that. It would eliminate the "orl"
line. I hesitated to do so because I wasn't sure if all systems use the
same flags (I didn't look if that's the case now), and didn't want to
provide lots of REAL_XIP_ROM_BASE_* for all combinations.


Patrick
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkyou/wACgkQfp0gE8eLOvS2KACbB1IklshTAYS5FrNbwm9iV+XW
WsgAn3apJhOupF7ShPuvIE26CnM5QZi7
=vp5n
-----END PGP SIGNATURE-----




More information about the coreboot mailing list