1/* 2 * Copyright (c) 2024, Rockchip, Inc. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7#ifndef ROCKCHIP_PLAT_LD_S 8#define ROCKCHIP_PLAT_LD_S 9 10MEMORY { 11 PMUSRAM (rwx): ORIGIN = PMUSRAM_BASE, LENGTH = PMUSRAM_RSIZE 12} 13 14SECTIONS 15{ 16 . = PMUSRAM_BASE; 17 18 /* 19 * pmu_cpuson_entrypoint request address 20 * align 64K when resume, so put it in the 21 * start of pmusram 22 */ 23 .text_pmusram : { 24 ASSERT(. == ALIGN(64 * 1024), 25 ".pmusram.entry request 64K aligned."); 26 KEEP(*(.pmusram.entry)) 27 __bl31_pmusram_text_start = .; 28 *(.pmusram.text) 29 *(.pmusram.rodata) 30 . = ALIGN(PAGE_SIZE); 31 __bl31_pmusram_text_end = .; 32 __bl31_pmusram_data_start = .; 33 *(.pmusram.data) 34 . = ALIGN(PAGE_SIZE); 35 __bl31_pmusram_data_end = .; 36 37 ASSERT(__bl31_pmusram_data_end <= PMUSRAM_BASE + PMUSRAM_RSIZE, 38 ".pmusram has exceeded its limit."); 39 } >PMUSRAM 40} 41 42#endif /* ROCKCHIP_PLAT_LD_S */ 43