1b2441318SGreg Kroah-Hartman/* SPDX-License-Identifier: GPL-2.0 */ 2b3266bd6SJarkko Sakkinen/* 3b3266bd6SJarkko Sakkinen * realmode.lds.S 4b3266bd6SJarkko Sakkinen * 5b3266bd6SJarkko Sakkinen * Linker script for the real-mode code 6b3266bd6SJarkko Sakkinen */ 7b3266bd6SJarkko Sakkinen 8b3266bd6SJarkko Sakkinen#include <asm/page_types.h> 9b3266bd6SJarkko Sakkinen 10b3266bd6SJarkko Sakkinen#undef i386 11b3266bd6SJarkko Sakkinen 12e6d7bc0bSBorislav PetkovOUTPUT_FORMAT("elf32-i386") 13b3266bd6SJarkko SakkinenOUTPUT_ARCH(i386) 146a181e33SNick DesaulniersENTRY(pa_text_start) 15b3266bd6SJarkko Sakkinen 16b3266bd6SJarkko SakkinenSECTIONS 17b3266bd6SJarkko Sakkinen{ 18b3266bd6SJarkko Sakkinen real_mode_seg = 0; 19b3266bd6SJarkko Sakkinen 20b3266bd6SJarkko Sakkinen . = 0; 21b3266bd6SJarkko Sakkinen .header : { 22b3266bd6SJarkko Sakkinen pa_real_mode_base = .; 23b3266bd6SJarkko Sakkinen *(.header) 24b3266bd6SJarkko Sakkinen } 25b3266bd6SJarkko Sakkinen 26b3266bd6SJarkko Sakkinen . = ALIGN(4); 27b3266bd6SJarkko Sakkinen .rodata : { 28b3266bd6SJarkko Sakkinen *(.rodata) 29b3266bd6SJarkko Sakkinen *(.rodata.*) 30c9b77ccbSJarkko Sakkinen . = ALIGN(16); 31c9b77ccbSJarkko Sakkinen video_cards = .; 32c9b77ccbSJarkko Sakkinen *(.videocards) 33c9b77ccbSJarkko Sakkinen video_cards_end = .; 34b3266bd6SJarkko Sakkinen } 35b3266bd6SJarkko Sakkinen 36b3266bd6SJarkko Sakkinen . = ALIGN(PAGE_SIZE); 37b3266bd6SJarkko Sakkinen pa_text_start = .; 38487f50ffSH. Peter Anvin .text : { 39b3266bd6SJarkko Sakkinen *(.text) 40b3266bd6SJarkko Sakkinen *(.text.*) 41b3266bd6SJarkko Sakkinen } 42b3266bd6SJarkko Sakkinen 43b3266bd6SJarkko Sakkinen .text32 : { 44b3266bd6SJarkko Sakkinen *(.text32) 45b3266bd6SJarkko Sakkinen *(.text32.*) 46b3266bd6SJarkko Sakkinen } 47b3266bd6SJarkko Sakkinen 48487f50ffSH. Peter Anvin .text64 : { 49487f50ffSH. Peter Anvin *(.text64) 50487f50ffSH. Peter Anvin *(.text64.*) 51487f50ffSH. Peter Anvin } 52487f50ffSH. Peter Anvin pa_ro_end = .; 53487f50ffSH. Peter Anvin 54b3266bd6SJarkko Sakkinen . = ALIGN(PAGE_SIZE); 55b3266bd6SJarkko Sakkinen .data : { 56b3266bd6SJarkko Sakkinen *(.data) 57b3266bd6SJarkko Sakkinen *(.data.*) 58b3266bd6SJarkko Sakkinen } 59b3266bd6SJarkko Sakkinen 60b3266bd6SJarkko Sakkinen . = ALIGN(128); 61b3266bd6SJarkko Sakkinen .bss : { 62b3266bd6SJarkko Sakkinen *(.bss*) 63b3266bd6SJarkko Sakkinen } 64b3266bd6SJarkko Sakkinen 65b3266bd6SJarkko Sakkinen /* End signature for integrity checking */ 66b3266bd6SJarkko Sakkinen . = ALIGN(4); 67b3266bd6SJarkko Sakkinen .signature : { 68b3266bd6SJarkko Sakkinen *(.signature) 69b3266bd6SJarkko Sakkinen } 70b3266bd6SJarkko Sakkinen 71b3266bd6SJarkko Sakkinen /DISCARD/ : { 72b3266bd6SJarkko Sakkinen *(.note*) 73b3266bd6SJarkko Sakkinen *(.debug*) 74b3266bd6SJarkko Sakkinen } 75b3266bd6SJarkko Sakkinen 76b3266bd6SJarkko Sakkinen#include "pasyms.h" 77b3266bd6SJarkko Sakkinen} 78