Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
c90820f6
Commit
c90820f6
authored
Jan 22, 2007
by
Catalin Marinas
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ARMv7: Add support for the Xenon state saving/restoring
Signed-off-by:
Catalin Marinas
<
catalin.marinas@arm.com
>
parent
807b1d30
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
19 additions
and
0 deletions
+19
-0
arch/arm/kernel/asm-offsets.c
arch/arm/kernel/asm-offsets.c
+3
-0
arch/arm/kernel/entry-armv.S
arch/arm/kernel/entry-armv.S
+6
-0
arch/arm/mm/Kconfig
arch/arm/mm/Kconfig
+7
-0
include/asm-arm/thread_info.h
include/asm-arm/thread_info.h
+3
-0
No files found.
arch/arm/kernel/asm-offsets.c
View file @
c90820f6
...
@@ -58,6 +58,9 @@ int main(void)
...
@@ -58,6 +58,9 @@ int main(void)
DEFINE
(
TI_TP_VALUE
,
offsetof
(
struct
thread_info
,
tp_value
));
DEFINE
(
TI_TP_VALUE
,
offsetof
(
struct
thread_info
,
tp_value
));
DEFINE
(
TI_FPSTATE
,
offsetof
(
struct
thread_info
,
fpstate
));
DEFINE
(
TI_FPSTATE
,
offsetof
(
struct
thread_info
,
fpstate
));
DEFINE
(
TI_VFPSTATE
,
offsetof
(
struct
thread_info
,
vfpstate
));
DEFINE
(
TI_VFPSTATE
,
offsetof
(
struct
thread_info
,
vfpstate
));
#ifdef CONFIG_ARM_XENON
DEFINE
(
TI_XENONSTATE
,
offsetof
(
struct
thread_info
,
xenonstate
));
#endif
#ifdef CONFIG_IWMMXT
#ifdef CONFIG_IWMMXT
DEFINE
(
TI_IWMMXT_STATE
,
offsetof
(
struct
thread_info
,
fpstate
.
iwmmxt
));
DEFINE
(
TI_IWMMXT_STATE
,
offsetof
(
struct
thread_info
,
fpstate
.
iwmmxt
));
#endif
#endif
...
...
arch/arm/kernel/entry-armv.S
View file @
c90820f6
...
@@ -583,6 +583,12 @@ ENTRY(__switch_to)
...
@@ -583,6 +583,12 @@ ENTRY(__switch_to)
add
ip
,
r1
,
#
TI_CPU_SAVE
add
ip
,
r1
,
#
TI_CPU_SAVE
ldr
r3
,
[
r2
,
#
TI_TP_VALUE
]
ldr
r3
,
[
r2
,
#
TI_TP_VALUE
]
stmia
ip
!,
{
r4
-
sl
,
fp
,
sp
,
lr
}
@
Store
most
regs
on
stack
stmia
ip
!,
{
r4
-
sl
,
fp
,
sp
,
lr
}
@
Store
most
regs
on
stack
#ifdef CONFIG_ARM_XENON
mrc
p14
,
6
,
r4
,
c1
,
c0
,
0
@
current
xenon
state
ldr
r5
,
[
r2
,
#
TI_XENONSTATE
]
@
value
to
restore
str
r4
,
[
r1
,
#
TI_XENONSTATE
]
@
save
current
mcr
p14
,
6
,
r5
,
c1
,
c0
,
0
@
restore
new
value
#endif
#ifdef CONFIG_MMU
#ifdef CONFIG_MMU
ldr
r6
,
[
r2
,
#
TI_CPU_DOMAIN
]
ldr
r6
,
[
r2
,
#
TI_CPU_DOMAIN
]
#endif
#endif
...
...
arch/arm/mm/Kconfig
View file @
c90820f6
...
@@ -548,6 +548,13 @@ config ARM_THUMB
...
@@ -548,6 +548,13 @@ config ARM_THUMB
If you don't know what this all is, saying Y is a safe choice.
If you don't know what this all is, saying Y is a safe choice.
config ARM_XENON
bool "Enable Xenon extension"
depends on CPU_V7
help
Say Y here if you have a CPU with Xenon extension and code to make
use of it. Say N for code that can run on CPUs without Xenon.
config CPU_BIG_ENDIAN
config CPU_BIG_ENDIAN
bool "Build big-endian kernel"
bool "Build big-endian kernel"
depends on ARCH_SUPPORTS_BIG_ENDIAN
depends on ARCH_SUPPORTS_BIG_ENDIAN
...
...
include/asm-arm/thread_info.h
View file @
c90820f6
...
@@ -62,6 +62,9 @@ struct thread_info {
...
@@ -62,6 +62,9 @@ struct thread_info {
struct
crunch_state
crunchstate
;
struct
crunch_state
crunchstate
;
union
fp_state
fpstate
__attribute__
((
aligned
(
8
)));
union
fp_state
fpstate
__attribute__
((
aligned
(
8
)));
union
vfp_state
vfpstate
;
union
vfp_state
vfpstate
;
#ifdef CONFIG_ARM_XENON
unsigned
long
xenonstate
;
/* Jazelle-X handler base register */
#endif
struct
restart_block
restart_block
;
struct
restart_block
restart_block
;
};
};
...
...
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