Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
362607df
Commit
362607df
authored
May 07, 2011
by
Russell King
Browse files
Options
Browse Files
Download
Plain Diff
Merge first four commits of 'zImage_fixes' of
git://git.linaro.org/people/nico/linux
into fixes
parents
52fe1163
ea9df3b1
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
26 additions
and
12 deletions
+26
-12
arch/arm/boot/compressed/Makefile
arch/arm/boot/compressed/Makefile
+1
-1
arch/arm/boot/compressed/head.S
arch/arm/boot/compressed/head.S
+24
-11
arch/arm/boot/compressed/vmlinux.lds.in
arch/arm/boot/compressed/vmlinux.lds.in
+1
-0
No files found.
arch/arm/boot/compressed/Makefile
View file @
362607df
...
...
@@ -74,7 +74,7 @@ ZTEXTADDR := $(CONFIG_ZBOOT_ROM_TEXT)
ZBSSADDR
:=
$(CONFIG_ZBOOT_ROM_BSS)
else
ZTEXTADDR
:=
0
ZBSSADDR
:=
ALIGN
(
4
)
ZBSSADDR
:=
ALIGN
(
8
)
endif
SEDFLAGS
=
s/TEXT_START/
$(ZTEXTADDR)
/
;
s/BSS_START/
$(ZBSSADDR)
/
...
...
arch/arm/boot/compressed/head.S
View file @
362607df
...
...
@@ -179,15 +179,14 @@ not_angel:
bl
cache_on
restart
:
adr
r0
,
LC0
ldmia
r0
,
{
r1
,
r2
,
r3
,
r
5
,
r
6
,
r9
,
r11
,
r12
}
ldr
sp
,
[
r0
,
#
32
]
ldmia
r0
,
{
r1
,
r2
,
r3
,
r6
,
r9
,
r11
,
r12
}
ldr
sp
,
[
r0
,
#
28
]
/
*
*
We
might
be
running
at
a
different
address
.
We
need
*
to
fix
up
various
pointers
.
*/
sub
r0
,
r0
,
r1
@
calculate
the
delta
offset
add
r5
,
r5
,
r0
@
_start
add
r6
,
r6
,
r0
@
_edata
#ifndef CONFIG_ZBOOT_ROM
...
...
@@ -206,31 +205,40 @@ restart: adr r0, LC0
/*
*
Check
to
see
if
we
will
overwrite
ourselves
.
*
r4
=
final
kernel
address
*
r5
=
start
of
this
image
*
r9
=
size
of
decompressed
image
*
r10
=
end
of
this
image
,
including
bss
/
stack
/
malloc
space
if
non
XIP
*
We
basically
want
:
*
r4
>=
r10
->
OK
*
r4
+
image
length
<=
r5
->
OK
*
r4
-
16
k
page
directory
>=
r10
->
OK
*
r4
+
image
length
<=
current
position
(
pc
)
->
OK
*/
add
r10
,
r10
,
#
16384
cmp
r4
,
r10
bhs
wont_overwrite
add
r10
,
r4
,
r9
cmp
r10
,
r5
ARM
(
cmp
r10
,
pc
)
THUMB
(
mov
lr
,
pc
)
THUMB
(
cmp
r10
,
lr
)
bls
wont_overwrite
/*
*
Relocate
ourselves
past
the
end
of
the
decompressed
kernel
.
*
r5
=
start
of
this
image
*
r6
=
_edata
*
r10
=
end
of
the
decompressed
kernel
*
Because
we
always
copy
ahead
,
we
need
to
do
it
from
the
end
and
go
*
backward
in
case
the
source
and
destination
overlap
.
*/
/
*
Round
up
to
next
256
-
byte
boundary
.
*/
add
r10
,
r10
,
#
256
/
*
*
Bump
to
the
next
256
-
byte
boundary
with
the
size
of
*
the
relocation
code
added
.
This
avoids
overwriting
*
ourself
when
the
offset
is
small
.
*/
add
r10
,
r10
,
#((
reloc_code_end
-
restart
+
256
)
&
~
255
)
bic
r10
,
r10
,
#
255
/
*
Get
start
of
code
we
want
to
copy
and
align
it
down
.
*/
adr
r5
,
restart
bic
r5
,
r5
,
#
31
sub
r9
,
r6
,
r5
@
size
to
copy
add
r9
,
r9
,
#
31
@
rounded
up
to
a
multiple
bic
r9
,
r9
,
#
31
@
...
of
32
bytes
...
...
@@ -245,6 +253,11 @@ restart: adr r0, LC0
/
*
Preserve
offset
to
relocated
code
.
*/
sub
r6
,
r9
,
r6
#ifndef CONFIG_ZBOOT_ROM
/
*
cache_clean_flush
may
use
the
stack
,
so
relocate
it
*/
add
sp
,
sp
,
r6
#endif
bl
cache_clean_flush
adr
r0
,
BSYM
(
restart
)
...
...
@@ -333,7 +346,6 @@ not_relocated: mov r0, #0
LC0
:
.
word
LC0
@
r1
.
word
__bss_start
@
r2
.
word
_end
@
r3
.
word
_start
@
r5
.
word
_edata
@
r6
.
word
_image_size
@
r9
.
word
_got_start
@
r11
...
...
@@ -1062,6 +1074,7 @@ memdump: mov r12, r0
#endif
.
ltorg
reloc_code_end
:
.
align
.
section
".stack"
,
"aw"
,
%
nobits
...
...
arch/arm/boot/compressed/vmlinux.lds.in
View file @
362607df
...
...
@@ -54,6 +54,7 @@ SECTIONS
.bss : { *(.bss) }
_end = .;
. = ALIGN(8); /* the stack must be 64-bit aligned */
.stack : { *(.stack) }
.stab 0 : { *(.stab) }
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment