Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Arm Trusted Firmware
Commits
27bc0106
Commit
27bc0106
authored
Mar 17, 2015
by
danh-arm
Browse files
Merge pull request #268 from vikramkanigiri/vk/move_init_cpu_ops
Initialise cpu ops after enabling data cache
parents
09c731eb
12e7c4ab
Changes
5
Hide whitespace changes
Inline
Side-by-side
bl31/aarch64/bl31_arch_setup.c
View file @
27bc0106
...
...
@@ -33,6 +33,7 @@
#include <assert.h>
#include <bl_common.h>
#include <bl31.h>
#include <cpu_data.h>
#include <platform.h>
/*******************************************************************************
...
...
@@ -47,4 +48,7 @@ void bl31_arch_setup(void)
/* Program the counter frequency */
write_cntfrq_el0
(
plat_get_syscnt_freq
());
/* Initialize the cpu_ops pointer. */
init_cpu_ops
();
}
bl31/aarch64/bl31_entrypoint.S
View file @
27bc0106
...
...
@@ -161,12 +161,6 @@ func bl31_entrypoint
bl
zeromem16
#endif
/
*
---------------------------------------------
*
Initialize
the
cpu_ops
pointer
.
*
---------------------------------------------
*/
bl
init_cpu_ops
/
*
---------------------------------------------
*
Use
SP_EL0
for
the
C
runtime
stack
.
*
---------------------------------------------
...
...
include/bl31/cpu_data.h
View file @
27bc0106
...
...
@@ -117,6 +117,7 @@ static inline struct cpu_data *_cpu_data(void)
*************************************************************************/
void
init_cpu_data_ptr
(
void
);
void
init_cpu_ops
(
void
);
#define get_cpu_data(_m) _cpu_data()->_m
#define set_cpu_data(_m, _v) _cpu_data()->_m = _v
...
...
lib/cpus/aarch64/cpu_helpers.S
View file @
27bc0106
...
...
@@ -110,7 +110,8 @@ func prepare_cluster_pwr_dwn
/
*
*
Initializes
the
cpu_ops_ptr
if
not
already
initialized
*
in
cpu_data
.
This
can
be
called
without
a
runtime
stack
.
*
in
cpu_data
.
This
can
be
called
without
a
runtime
stack
,
but
may
*
only
be
called
after
the
MMU
is
enabled
.
*
clobbers
:
x0
-
x6
,
x10
*/
.
globl
init_cpu_ops
...
...
@@ -125,18 +126,6 @@ func init_cpu_ops
ASM_ASSERT
(
ne
)
#endif
str
x0
,
[
x6
,
#
CPU_DATA_CPU_OPS_PTR
]!
/
*
*
Make
sure
that
any
pre
-
fetched
cache
copies
are
invalidated
.
*
Ensure
that
we
are
running
with
cache
disable
else
we
*
invalidate
our
own
update
.
*/
#if ASM_ASSERTION
mrs
x1
,
sctlr_el3
tst
x1
,
#
SCTLR_C_BIT
ASM_ASSERT
(
eq
)
#endif
dc
ivac
,
x6
mov
x30
,
x10
1
:
ret
...
...
services/std_svc/psci/psci_entry.S
View file @
27bc0106
...
...
@@ -86,12 +86,6 @@ psci_aff_common_finish_entry:
*/
bl
init_cpu_data_ptr
/
*
---------------------------------------------
*
Initialize
the
cpu_ops
pointer
.
*
---------------------------------------------
*/
bl
init_cpu_ops
/
*
---------------------------------------------
*
Set
the
exception
vectors
*
---------------------------------------------
...
...
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