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
c906d2a8
Commit
c906d2a8
authored
Jun 08, 2017
by
davidcunado-arm
Committed by
GitHub
Jun 08, 2017
Browse files
Merge pull request #967 from rockchip-linux/rockchip-cleanup-20170606
RK3399: Shrink M0 SRAM code to fit in PMUSRAM
parents
0437c421
84597b57
Changes
24
Hide whitespace changes
Inline
Side-by-side
plat/rockchip/rk3399/include/plat.ld.S
View file @
c906d2a8
...
@@ -8,6 +8,7 @@
...
@@ -8,6 +8,7 @@
MEMORY
{
MEMORY
{
SRAM
(
rwx
)
:
ORIGIN
=
SRAM_BASE
,
LENGTH
=
SRAM_SIZE
SRAM
(
rwx
)
:
ORIGIN
=
SRAM_BASE
,
LENGTH
=
SRAM_SIZE
PMUSRAM
(
rwx
)
:
ORIGIN
=
PMUSRAM_BASE
,
LENGTH
=
PMUSRAM_RSIZE
}
}
SECTIONS
SECTIONS
...
@@ -29,24 +30,60 @@ SECTIONS
...
@@ -29,24 +30,60 @@ SECTIONS
.
incbin_sram
:
ALIGN
(
4096
)
{
.
incbin_sram
:
ALIGN
(
4096
)
{
__sram_incbin_start
=
.
;
__sram_incbin_start
=
.
;
*(.
sram.incbin
)
*(.
sram.incbin
)
__sram_incbin_real_end
=
.
;
.
=
ALIGN
(
4096
)
;
.
=
ALIGN
(
4096
)
;
__sram_incbin_end
=
.
;
__sram_incbin_end
=
.
;
}
>
SRAM
}
>
SRAM
ASSERT
((
__sram_incbin_real_end
-
__sram_incbin_start
)
<=
SRAM_BIN_LIMIT
,
".incbin_sram has exceeded its limit"
)
.
text_sram
:
ALIGN
(
4096
)
{
.
text_sram
:
ALIGN
(
4096
)
{
__bl31_sram_text_start
=
.
;
__bl31_sram_text_start
=
.
;
*(.
sram.text
)
*(.
sram.text
)
*(.
sram.rodata
)
*(.
sram.rodata
)
__bl31_sram_text_real_end
=
.
;
.
=
ALIGN
(
4096
)
;
.
=
ALIGN
(
4096
)
;
__bl31_sram_text_end
=
.
;
__bl31_sram_text_end
=
.
;
}
>
SRAM
}
>
SRAM
ASSERT
((
__bl31_sram_text_real_end
-
__bl31_sram_text_start
)
<=
SRAM_TEXT_LIMIT
,
".text_sram has exceeded its limit"
)
.
data_sram
:
ALIGN
(
4096
)
{
.
data_sram
:
ALIGN
(
4096
)
{
__bl31_sram_data_start
=
.
;
__bl31_sram_data_start
=
.
;
*(.
sram.data
)
*(.
sram.data
)
__bl31_sram_data_real_end
=
.
;
.
=
ALIGN
(
4096
)
;
.
=
ALIGN
(
4096
)
;
__bl31_sram_data_end
=
.
;
__bl31_sram_data_end
=
.
;
}
>
SRAM
}
>
SRAM
ASSERT
((
__bl31_sram_data_real_end
-
__bl31_sram_data_start
)
<=
SRAM_DATA_LIMIT
,
".data_sram has exceeded its limit"
)
.
stack_sram
:
ALIGN
(
4096
)
{
__bl31_sram_stack_start
=
.
;
.
+=
4096
;
__bl31_sram_stack_end
=
.
;
}
>
SRAM
.
=
PMUSRAM_BASE
;
/
*
*
pmu_cpuson_entrypoint
request
address
*
align
64
K
when
resume
,
so
put
it
in
the
*
start
of
pmusram
*/
.
pmusram
:
{
ASSERT
(.
==
ALIGN
(
64
*
1024
),
".
pmusram.entry
request
64
K
aligned
.
");
*(.
pmusram.entry
)
__bl31_pmusram_text_start
=
.
;
*(.
pmusram.text
)
*(.
pmusram.rodata
)
__bl31_pmusram_text_end
=
.
;
__bl31_pmusram_data_start
=
.
;
*(.
pmusram.data
)
__bl31_pmusram_data_end
=
.
;
}
>
PMUSRAM
}
}
#endif /* __ROCKCHIP_PLAT_LD_S__ */
#endif /* __ROCKCHIP_PLAT_LD_S__ */
plat/rockchip/rk3399/include/platform_def.h
View file @
c906d2a8
...
@@ -107,4 +107,7 @@
...
@@ -107,4 +107,7 @@
#define PLAT_RK_PRIMARY_CPU 0x0
#define PLAT_RK_PRIMARY_CPU 0x0
#define PSRAM_DO_DDR_RESUME 1
#define PSRAM_CHECK_WAKEUP_CPU 0
#endif
/* __PLATFORM_DEF_H__ */
#endif
/* __PLATFORM_DEF_H__ */
plat/rockchip/rk3399/include/shared/addressmap_shared.h
View file @
c906d2a8
...
@@ -9,6 +9,9 @@
...
@@ -9,6 +9,9 @@
#define SIZE_K(n) ((n) * 1024)
#define SIZE_K(n) ((n) * 1024)
#define SIZE_M(n) ((n) * 1024 * 1024)
#define SIZE_M(n) ((n) * 1024 * 1024)
#define SRAM_TEXT_LIMIT (4 * 1024)
#define SRAM_DATA_LIMIT (4 * 1024)
#define SRAM_BIN_LIMIT (4 * 1024)
/*
/*
* The parts of the shared defined registers address with AP and M0,
* The parts of the shared defined registers address with AP and M0,
...
...
plat/rockchip/rk3399/platform.mk
View file @
c906d2a8
...
@@ -44,7 +44,6 @@ BL31_SOURCES += ${RK_GIC_SOURCES} \
...
@@ -44,7 +44,6 @@ BL31_SOURCES += ${RK_GIC_SOURCES} \
${RK_PLAT_COMMON}
/bl31_plat_setup.c
\
${RK_PLAT_COMMON}
/bl31_plat_setup.c
\
${RK_PLAT_COMMON}
/params_setup.c
\
${RK_PLAT_COMMON}
/params_setup.c
\
${RK_PLAT_COMMON}
/pmusram/pmu_sram_cpus_on.S
\
${RK_PLAT_COMMON}
/pmusram/pmu_sram_cpus_on.S
\
${RK_PLAT_COMMON}
/pmusram/pmu_sram.c
\
${RK_PLAT_COMMON}
/plat_pm.c
\
${RK_PLAT_COMMON}
/plat_pm.c
\
${RK_PLAT_COMMON}
/plat_topology.c
\
${RK_PLAT_COMMON}
/plat_topology.c
\
${RK_PLAT_COMMON}
/aarch64/platform_common.c
\
${RK_PLAT_COMMON}
/aarch64/platform_common.c
\
...
...
Prev
1
2
Next
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