xref: /rk3399_ARM-atf/plat/rockchip/rk3328/include/plat.ld.S (revision c3e70be1c1ad2a9d1d3aee187231f5088a880ae1)
10d5ec955Stony.xie/*
20d5ec955Stony.xie * Copyright (c) 2017, ARM Limited and Contributors. All rights reserved.
30d5ec955Stony.xie *
4*c3e70be1Sdp-arm * SPDX-License-Identifier: BSD-3-Clause
50d5ec955Stony.xie */
60d5ec955Stony.xie#ifndef __ROCKCHIP_PLAT_LD_S__
70d5ec955Stony.xie#define __ROCKCHIP_PLAT_LD_S__
80d5ec955Stony.xie
90d5ec955Stony.xieMEMORY {
100d5ec955Stony.xie    SRAM (rwx): ORIGIN = SRAM_LDS_BASE, LENGTH = SRAM_LDS_SIZE
110d5ec955Stony.xie}
120d5ec955Stony.xie
130d5ec955Stony.xieSECTIONS
140d5ec955Stony.xie{
150d5ec955Stony.xie	. = SRAM_LDS_BASE;
160d5ec955Stony.xie	ASSERT(. == ALIGN(4096),
170d5ec955Stony.xie		"SRAM_BASE address is not aligned on a page boundary.")
180d5ec955Stony.xie
190d5ec955Stony.xie	/*
200d5ec955Stony.xie	 * The SRAM space allocation for RK3328
210d5ec955Stony.xie	 * ----------------
220d5ec955Stony.xie	 * | sram text
230d5ec955Stony.xie	 * ----------------
240d5ec955Stony.xie	 * | sram data
250d5ec955Stony.xie	 * ----------------
260d5ec955Stony.xie	 */
270d5ec955Stony.xie	.text_sram : ALIGN(4096) {
280d5ec955Stony.xie		__bl31_sram_text_start = .;
290d5ec955Stony.xie		*(.sram.text)
300d5ec955Stony.xie		*(.sram.rodata)
310d5ec955Stony.xie		. = ALIGN(4096);
320d5ec955Stony.xie		__bl31_sram_text_end = .;
330d5ec955Stony.xie	} >SRAM
340d5ec955Stony.xie
350d5ec955Stony.xie	.data_sram : ALIGN(4096) {
360d5ec955Stony.xie		__bl31_sram_data_start = .;
370d5ec955Stony.xie		*(.sram.data)
380d5ec955Stony.xie		. = ALIGN(4096);
390d5ec955Stony.xie		__bl31_sram_data_end = .;
400d5ec955Stony.xie	} >SRAM
410d5ec955Stony.xie	__sram_incbin_start = .;
420d5ec955Stony.xie	__sram_incbin_end = .;
430d5ec955Stony.xie}
440d5ec955Stony.xie
450d5ec955Stony.xie#endif /* __ROCKCHIP_PLAT_LD_S__ */
46