xref: /aosp_15_r20/external/arm-trusted-firmware/plat/rpi/rpi4/include/plat.ld.S (revision 54fd6939e177f8ff529b10183254802c76df6d08)
1*54fd6939SJiyong Park/*
2*54fd6939SJiyong Park * Copyright (c) 2019, ARM Limited and Contributors. All rights reserved.
3*54fd6939SJiyong Park *
4*54fd6939SJiyong Park * SPDX-License-Identifier: BSD-3-Clause
5*54fd6939SJiyong Park *
6*54fd6939SJiyong Park * Stub linker script to provide the armstub8.bin header before the actual
7*54fd6939SJiyong Park * code. If the GPU firmware finds a magic value at offset 240 in
8*54fd6939SJiyong Park * armstub8.bin, it will put the DTB and kernel load address in subsequent
9*54fd6939SJiyong Park * words. We can then read those values to find the proper NS entry point
10*54fd6939SJiyong Park * and find our DTB more flexibly.
11*54fd6939SJiyong Park */
12*54fd6939SJiyong Park
13*54fd6939SJiyong ParkMEMORY {
14*54fd6939SJiyong Park    PRERAM (rwx): ORIGIN = 0, LENGTH = 4096
15*54fd6939SJiyong Park}
16*54fd6939SJiyong Park
17*54fd6939SJiyong ParkSECTIONS
18*54fd6939SJiyong Park{
19*54fd6939SJiyong Park    .armstub8 . : {
20*54fd6939SJiyong Park        *armstub8_header.o(.text*)
21*54fd6939SJiyong Park        KEEP(*(.armstub8))
22*54fd6939SJiyong Park    } >PRERAM
23*54fd6939SJiyong Park}
24