<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/arch/x86/lib/bios_setup.c, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<entry>
<title>x86: Remove unused real mode code</title>
<updated>2013-02-15T04:19:03+00:00</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2013-02-14T17:38:30+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=96dfc0633aabb4f8fb720d39d9deb29dde08749b'/>
<id>96dfc0633aabb4f8fb720d39d9deb29dde08749b</id>
<content type='text'>
This code is pretty old and we want to support only 32-bit systems now.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Acked-by: Graeme Russ &lt;graeme.russ@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This code is pretty old and we want to support only 32-bit systems now.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Acked-by: Graeme Russ &lt;graeme.russ@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86: Don't relocate symbols which point to things that aren't relocated</title>
<updated>2011-11-29T10:30:44+00:00</updated>
<author>
<name>Gabe Black</name>
<email>gabeblack@chromium.org</email>
</author>
<published>2011-11-12T16:34:48+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=769db03a4a4ea1dc7e43c089c2227a0c8b4ffcbc'/>
<id>769db03a4a4ea1dc7e43c089c2227a0c8b4ffcbc</id>
<content type='text'>
This change adds an upper bound for symbols which are fixed up after u-boot
is relocated into RAM. This way portions that are left at their original
location can be referred to without having to manually fix up any pointers.

Signed-off-by: Gabe Black &lt;gabeblack@chromium.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change adds an upper bound for symbols which are fixed up after u-boot
is relocated into RAM. This way portions that are left at their original
location can be referred to without having to manually fix up any pointers.

Signed-off-by: Gabe Black &lt;gabeblack@chromium.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86: Fix how the location of the realmode and bios blobs are calculated</title>
<updated>2011-11-29T10:30:38+00:00</updated>
<author>
<name>Gabe Black</name>
<email>gabeblack@google.com</email>
</author>
<published>2011-11-12T16:31:18+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=03228b26d5d999b05ea6e5946ad0375715b9043c'/>
<id>03228b26d5d999b05ea6e5946ad0375715b9043c</id>
<content type='text'>
There are two blobs embedded into the u-boot image which are linked to run
at an address which is different from where they actually end up in the
ROM, one called "realmode" and one called "bios". There are realmode_setup
and bios_setup functions which prepare those blobs by copying them into the
location they're supposed to run from, among other things.

During u-boot relocation from ROM to RAM, the text and a few data segments
are copied over. The realmode and bios sections are not copied, and so the
only place they can be read from is their original location in the ROM.
Looking specifically at the bios blob, there are symbols defined in the
linker script called __bios_start and __bios_size which are defined to be
the start and size of the blob in the ROM.

In the bios_setup function, there seem to be two mistakes happening. First,
the offset from ROM to RAM is being added to __bios_start which implies that
this code expects to use the copy moved to RAM. No such copy is made, so
that's wrong. More subtly, when u-boot relocates itself, it goes through
all of the relocations stored in .rel.dyn and fixes them up. This has the
effect of transforming the __bios_start reference in bios_setup so that it
refers to the version in RAM (if one existed) instead of the one in ROM. To
correct for that, the offset actually needs to be subtracted out again to
translate the address back into the ROM.

The net effect is that for both blobs, a + needs to be changed to a -.

Signed-off-by: Gabe Black &lt;gabeblack@chromium.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There are two blobs embedded into the u-boot image which are linked to run
at an address which is different from where they actually end up in the
ROM, one called "realmode" and one called "bios". There are realmode_setup
and bios_setup functions which prepare those blobs by copying them into the
location they're supposed to run from, among other things.

During u-boot relocation from ROM to RAM, the text and a few data segments
are copied over. The realmode and bios sections are not copied, and so the
only place they can be read from is their original location in the ROM.
Looking specifically at the bios blob, there are symbols defined in the
linker script called __bios_start and __bios_size which are defined to be
the start and size of the blob in the ROM.

In the bios_setup function, there seem to be two mistakes happening. First,
the offset from ROM to RAM is being added to __bios_start which implies that
this code expects to use the copy moved to RAM. No such copy is made, so
that's wrong. More subtly, when u-boot relocates itself, it goes through
all of the relocations stored in .rel.dyn and fixes them up. This has the
effect of transforming the __bios_start reference in bios_setup so that it
refers to the version in RAM (if one existed) instead of the one in ROM. To
correct for that, the offset actually needs to be subtracted out again to
translate the address back into the ROM.

The net effect is that for both blobs, a + needs to be changed to a -.

Signed-off-by: Gabe Black &lt;gabeblack@chromium.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cosmetic: checkpatch cleanup of arch/x86/lib/*.c</title>
<updated>2011-11-29T10:03:43+00:00</updated>
<author>
<name>Graeme Russ</name>
<email>graeme.russ@gmail.com</email>
</author>
<published>2011-11-08T02:33:15+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=83088afbba0c142fda5313866abd1e679d0f9e78'/>
<id>83088afbba0c142fda5313866abd1e679d0f9e78</id>
<content type='text'>
Signed-off-by: Graeme Russ &lt;graeme.russ@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Graeme Russ &lt;graeme.russ@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Convert ISO-8859 files to UTF-8</title>
<updated>2011-08-04T21:34:02+00:00</updated>
<author>
<name>Albert ARIBAUD</name>
<email>albert.u.boot@aribaud.net</email>
</author>
<published>2011-08-04T16:45:45+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=fa82f871c8dbc9a15e8dc274b3f99dd5fa0da458'/>
<id>fa82f871c8dbc9a15e8dc274b3f99dd5fa0da458</id>
<content type='text'>
There was a mix of UTF-8 and ISO-8859 files in the U-Boot source
tree, which could cause issues with the patchwork review system.
This commit converts all ISO-8859 files to UTF-8.

Signed-off-by: Albert ARIBAUD &lt;albert.u.boot@aribaud.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There was a mix of UTF-8 and ISO-8859 files in the U-Boot source
tree, which could cause issues with the patchwork review system.
This commit converts all ISO-8859 files to UTF-8.

Signed-off-by: Albert ARIBAUD &lt;albert.u.boot@aribaud.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86: Rename i386 to x86</title>
<updated>2011-04-13T09:43:28+00:00</updated>
<author>
<name>Graeme Russ</name>
<email>graeme.russ@gmail.com</email>
</author>
<published>2011-04-13T09:43:28+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=fea25720013f84427a0ba8833a38614fcaf488ba'/>
<id>fea25720013f84427a0ba8833a38614fcaf488ba</id>
<content type='text'>
Signed-off-by: Graeme Russ &lt;graeme.russ@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Graeme Russ &lt;graeme.russ@gmail.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
