aboutsummaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
authorStefan Hajnoczi <stefanha@gmail.com>2010-01-29 18:33:08 +0000
committerMarty Connor <mdc@etherboot.org>2010-01-31 19:10:25 -0500
commit1056a1c2d576a704b8213fd769fb241b4a24a91e (patch)
tree8a61f73d9543dedea32e3981788c564ff60c38f6 /src/arch
parent9a89f0d17db14f6ab2a59db615bfe5aa46f42024 (diff)
downloadipxe-1056a1c2d576a704b8213fd769fb241b4a24a91e.zip
ipxe-1056a1c2d576a704b8213fd769fb241b4a24a91e.tar.gz
ipxe-1056a1c2d576a704b8213fd769fb241b4a24a91e.tar.bz2
[prefix] Remove unsupported ELF prefices
The .elf, .elfd, .lmelf, and .lmelfd prefices were brought over from legacy Etherboot and they do not build in gPXE. This patch removes the ELF prefices. Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com> Signed-off-by: Marty Connor <mdc@etherboot.org>
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/Makefile.pcbios4
-rw-r--r--src/arch/i386/prefix/elf_dprefix.S94
-rw-r--r--src/arch/i386/prefix/elfprefix.S94
-rw-r--r--src/arch/i386/prefix/lmelf_dprefix.S161
-rw-r--r--src/arch/i386/prefix/lmelf_prefix.S161
5 files changed, 0 insertions, 514 deletions
diff --git a/src/arch/i386/Makefile.pcbios b/src/arch/i386/Makefile.pcbios
index ec28542..e38fbca 100644
--- a/src/arch/i386/Makefile.pcbios
+++ b/src/arch/i386/Makefile.pcbios
@@ -16,10 +16,6 @@ MEDIA += xrom
MEDIA += pxe
MEDIA += kpxe
MEDIA += kkpxe
-MEDIA += elf
-MEDIA += elfd
-MEDIA += lmelf
-MEDIA += lmelfd
MEDIA += lkrn
MEDIA += dsk
MEDIA += nbi
diff --git a/src/arch/i386/prefix/elf_dprefix.S b/src/arch/i386/prefix/elf_dprefix.S
deleted file mode 100644
index 0eac77e..0000000
--- a/src/arch/i386/prefix/elf_dprefix.S
+++ /dev/null
@@ -1,94 +0,0 @@
-#include "elf.h"
-
- .arch i386
- .section ".prefix", "a", @progbits
-
-#define LOAD_ADDR 0x10000
-
- /* ELF Header */
- .globl elf_header
-elf_header:
-e_ident: .byte 0x7f, 'E', 'L', 'F', 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0
-e_type: .short ET_DYN
-e_machine: .short EM_386
-e_version: .long 1
-e_entry: .long LOAD_ADDR + _start - elf_header
-e_phoff: .long elf_program_header - elf_header
-e_shoff: .long 0
-e_flags: .long 0
-e_ehsize: .short elf_header_end - elf_header
-e_phentsize: .short ELF32_PHDR_SIZE
-e_phnum: .short (elf_program_header_end - elf_program_header)/ELF32_PHDR_SIZE
-e_shentsize: .short 0
-e_shnum: .short 0
-e_shstrndx: .short 0
-elf_header_end:
-
-elf_program_header:
-phdr1_p_type: .long PT_NOTE
-phdr1_p_offset: .long elf_note - elf_header
-phdr1_p_vaddr: .long elf_note
-phdr1_p_paddr: .long elf_note
-phdr1_p_filesz: .long elf_note_end - elf_note
-phdr1_p_memsz: .long elf_note_end - elf_note
-phdr1_p_flags: .long PF_R | PF_W | PF_X
-phdr1_p_align: .long 0
-
-/* The decompressor */
-phdr2_p_type: .long PT_LOAD
-phdr2_p_offset: .long 0
-phdr2_p_vaddr: .long elf_header
-phdr2_p_paddr: .long LOAD_ADDR
-phdr2_p_filesz: .long _verbatim_size
-phdr2_p_memsz: .long _image_size
-phdr2_p_flags: .long PF_R | PF_W | PF_X
-phdr2_p_align: .long 16
-
-elf_program_header_end:
-
- .globl elf_note
-elf_note:
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_NAME
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .asciz "Etherboot"
-4:
-
-
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_VERSION
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .asciz VERSION
-4:
-
-#if 0
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_CHECKSUM
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .word 0
-4:
-#endif
- .balign 4
-elf_note_end:
-
- /* Dummy routines to satisfy the build */
- .section ".text16", "ax", @progbits
-prefix_exit:
-
-prefix_exit_end:
- .previous
diff --git a/src/arch/i386/prefix/elfprefix.S b/src/arch/i386/prefix/elfprefix.S
deleted file mode 100644
index d712753..0000000
--- a/src/arch/i386/prefix/elfprefix.S
+++ /dev/null
@@ -1,94 +0,0 @@
-#include "elf.h"
-
- .arch i386
- .section ".prefix", "a", @progbits
-
-#define LOAD_ADDR 0x10000
-
- /* ELF Header */
- .globl elf_header
-elf_header:
-e_ident: .byte 0x7f, 'E', 'L', 'F', 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0
-e_type: .short ET_EXEC
-e_machine: .short EM_386
-e_version: .long 1
-e_entry: .long LOAD_ADDR + _start - elf_header
-e_phoff: .long elf_program_header - elf_header
-e_shoff: .long 0
-e_flags: .long 0
-e_ehsize: .short elf_header_end - elf_header
-e_phentsize: .short ELF32_PHDR_SIZE
-e_phnum: .short (elf_program_header_end - elf_program_header)/ELF32_PHDR_SIZE
-e_shentsize: .short 0
-e_shnum: .short 0
-e_shstrndx: .short 0
-elf_header_end:
-
-elf_program_header:
-phdr1_p_type: .long PT_NOTE
-phdr1_p_offset: .long elf_note - elf_header
-phdr1_p_vaddr: .long elf_note
-phdr1_p_paddr: .long elf_note
-phdr1_p_filesz: .long elf_note_end - elf_note
-phdr1_p_memsz: .long elf_note_end - elf_note
-phdr1_p_flags: .long PF_R | PF_W | PF_X
-phdr1_p_align: .long 0
-
-/* The decompressor */
-phdr2_p_type: .long PT_LOAD
-phdr2_p_offset: .long 0
-phdr2_p_vaddr: .long elf_header
-phdr2_p_paddr: .long LOAD_ADDR
-phdr2_p_filesz: .long _verbatim_size
-phdr2_p_memsz: .long _image_size
-phdr2_p_flags: .long PF_R | PF_W | PF_X
-phdr2_p_align: .long 16
-
-elf_program_header_end:
-
- .globl elf_note
-elf_note:
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_NAME
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .asciz "Etherboot"
-4:
-
-
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_VERSION
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .asciz VERSION
-4:
-
-#if 0
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_CHECKSUM
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .word 0
-4:
-#endif
- .balign 4
-elf_note_end:
-
- /* Dummy routines to satisfy the build */
- .section ".text16", "ax", @progbits
-prefix_exit:
-
-prefix_exit_end:
- .previous
diff --git a/src/arch/i386/prefix/lmelf_dprefix.S b/src/arch/i386/prefix/lmelf_dprefix.S
deleted file mode 100644
index 93534df..0000000
--- a/src/arch/i386/prefix/lmelf_dprefix.S
+++ /dev/null
@@ -1,161 +0,0 @@
-#include "elf.h"
- .arch sledgehammer
- .code32
- .equ FLAT_CODE_SEG,_pmcs-_gdt
- .equ FLAT_DATA_SEG,_pmds-_gdt
- .equ MSR_K6_EFER, 0xC0000080
- .equ EFER_LME, 0x00000100
- .equ X86_CR4_PAE, 0x00000020
- .equ CR0_PG, 0x80000000
-
- .section ".prefix", "ax", @progbits
-
-#define LOAD_ADDR 0x10000
-
- /* ELF Header */
- .globl elf_header
-elf_header:
-e_ident: .byte 0x7f, 'E', 'L', 'F', 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0
-e_type: .short ET_DYN
-e_machine: .short EM_X86_64
-e_version: .long 1
-e_entry: .long LOAD_ADDR + elf_start - elf_header
-e_phoff: .long elf_program_header - elf_header
-e_shoff: .long 0
-e_flags: .long 0
-e_ehsize: .short elf_header_end - elf_header
-e_phentsize: .short ELF32_PHDR_SIZE
-e_phnum: .short (elf_program_header_end - elf_program_header)/ELF32_PHDR_SIZE
-e_shentsize: .short 0
-e_shnum: .short 0
-e_shstrndx: .short 0
-elf_header_end:
-
-elf_program_header:
-phdr1_p_type: .long PT_NOTE
-phdr1_p_offset: .long elf_note - elf_header
-phdr1_p_vaddr: .long elf_note
-phdr1_p_paddr: .long elf_note
-phdr1_p_filesz: .long elf_note_end - elf_note
-phdr1_p_memsz: .long elf_note_end - elf_note
-phdr1_p_flags: .long PF_R | PF_W | PF_X
-phdr1_p_align: .long 0
-
-/* The decompressor */
-phdr2_p_type: .long PT_LOAD
-phdr2_p_offset: .long 0
-phdr2_p_vaddr: .long elf_header
-phdr2_p_paddr: .long LOAD_ADDR
-phdr2_p_filesz: .long _verbatim_size
-phdr2_p_memsz: .long _image_size
-phdr2_p_flags: .long PF_R | PF_W | PF_X
-phdr2_p_align: .long 16
-
-elf_program_header_end:
-
- .globl elf_note
-elf_note:
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_NAME
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .asciz "Etherboot"
-4:
-
-
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_VERSION
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .asciz VERSION
-4:
-
-#if 0
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_CHECKSUM
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .word 0
-4:
-#endif
- .balign 4
-elf_note_end:
-
-elf_start:
- .code64
- /* Reload the gdt to something I know */
- leaq _gdt(%rip), %rax
- movq %rax, 0x02 + gdtptr(%rip)
- lgdt gdtptr(%rip)
-
- /* Enter 32bit compatibility mode */
- leaq elf_start32(%rip), %rax
- movl %eax, 0x00 + elf_start32_addr(%rip)
- ljmp *elf_start32_addr(%rip)
-
-elf_start32:
- .code32
- /* Reload the data segments */
- movl $FLAT_DATA_SEG, %eax
- movl %eax, %ds
- movl %eax, %es
- movl %eax, %ss
-
- /* Disable paging */
- movl %cr0, %eax
- andl $~CR0_PG, %eax
- movl %eax, %cr0
-
- /* Disable long mode */
- movl $MSR_K6_EFER, %ecx
- rdmsr
- andl $~EFER_LME, %eax
- wrmsr
-
- /* Disable PAE */
- movl %cr4, %eax
- andl $~X86_CR4_PAE, %eax
- movl %eax, %cr4
-
- /* Save the first argument */
- pushl %ebx
- jmp _start
-
-gdtptr:
- .word _gdt_end - _gdt -1
- .long _gdt
- .long 0
-_gdt:
-elf_start32_addr:
- .long elf_start32
- .long FLAT_CODE_SEG
-_pmcs:
- /* 32 bit protected mode code segment, base 0 */
- .word 0xffff,0
- .byte 0,0x9f,0xcf,0
-
-_pmds:
- /* 32 bit protected mode data segment, base 0 */
- .word 0xffff,0
- .byte 0,0x93,0xcf,0
-_gdt_end:
-
-
- /* Dummy routines to satisfy the build */
- .section ".text16", "ax", @progbits
-prefix_exit:
-
-prefix_exit_end:
- .previous
diff --git a/src/arch/i386/prefix/lmelf_prefix.S b/src/arch/i386/prefix/lmelf_prefix.S
deleted file mode 100644
index 3c1e725..0000000
--- a/src/arch/i386/prefix/lmelf_prefix.S
+++ /dev/null
@@ -1,161 +0,0 @@
-#include "elf.h"
- .arch sledgehammer
- .code32
- .equ FLAT_CODE_SEG,_pmcs-_gdt
- .equ FLAT_DATA_SEG,_pmds-_gdt
- .equ MSR_K6_EFER, 0xC0000080
- .equ EFER_LME, 0x00000100
- .equ X86_CR4_PAE, 0x00000020
- .equ CR0_PG, 0x80000000
-
- .section ".prefix", "ax", @progbits
-
-#define LOAD_ADDR 0x10000
-
- /* ELF Header */
- .globl elf_header
-elf_header:
-e_ident: .byte 0x7f, 'E', 'L', 'F', 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0
-e_type: .short ET_EXEC
-e_machine: .short EM_X86_64
-e_version: .long 1
-e_entry: .long LOAD_ADDR + elf_start - elf_header
-e_phoff: .long elf_program_header - elf_header
-e_shoff: .long 0
-e_flags: .long 0
-e_ehsize: .short elf_header_end - elf_header
-e_phentsize: .short ELF32_PHDR_SIZE
-e_phnum: .short (elf_program_header_end - elf_program_header)/ELF32_PHDR_SIZE
-e_shentsize: .short 0
-e_shnum: .short 0
-e_shstrndx: .short 0
-elf_header_end:
-
-elf_program_header:
-phdr1_p_type: .long PT_NOTE
-phdr1_p_offset: .long elf_note - elf_header
-phdr1_p_vaddr: .long elf_note
-phdr1_p_paddr: .long elf_note
-phdr1_p_filesz: .long elf_note_end - elf_note
-phdr1_p_memsz: .long elf_note_end - elf_note
-phdr1_p_flags: .long PF_R | PF_W | PF_X
-phdr1_p_align: .long 0
-
-/* The decompressor */
-phdr2_p_type: .long PT_LOAD
-phdr2_p_offset: .long 0
-phdr2_p_vaddr: .long elf_header
-phdr2_p_paddr: .long LOAD_ADDR
-phdr2_p_filesz: .long _verbatim_size
-phdr2_p_memsz: .long _image_size
-phdr2_p_flags: .long PF_R | PF_W | PF_X
-phdr2_p_align: .long 16
-
-elf_program_header_end:
-
- .globl elf_note
-elf_note:
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_NAME
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .asciz "Etherboot"
-4:
-
-
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_VERSION
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .asciz VERSION
-4:
-
-#if 0
- .balign 4
- .int 2f - 1f
- .int 4f - 3f
- .int EIN_PROGRAM_CHECKSUM
-1: .asciz "ELFBoot"
-2:
- .balign 4
-3:
- .word 0
-4:
-#endif
- .balign 4
-elf_note_end:
-
-elf_start:
- .code64
- /* Reload the gdt to something I know */
- leaq _gdt(%rip), %rax
- movq %rax, 0x02 + gdtptr(%rip)
- lgdt gdtptr(%rip)
-
- /* Enter 32bit compatibility mode */
- leaq elf_start32(%rip), %rax
- movl %eax, 0x00 + elf_start32_addr(%rip)
- ljmp *elf_start32_addr(%rip)
-
-elf_start32:
- .code32
- /* Reload the data segments */
- movl $FLAT_DATA_SEG, %eax
- movl %eax, %ds
- movl %eax, %es
- movl %eax, %ss
-
- /* Disable paging */
- movl %cr0, %eax
- andl $~CR0_PG, %eax
- movl %eax, %cr0
-
- /* Disable long mode */
- movl $MSR_K6_EFER, %ecx
- rdmsr
- andl $~EFER_LME, %eax
- wrmsr
-
- /* Disable PAE */
- movl %cr4, %eax
- andl $~X86_CR4_PAE, %eax
- movl %eax, %cr4
-
- /* Save the first argument */
- pushl %ebx
- jmp _start
-
-gdtptr:
- .word _gdt_end - _gdt -1
- .long _gdt
- .long 0
-_gdt:
-elf_start32_addr:
- .long elf_start32
- .long FLAT_CODE_SEG
-_pmcs:
- /* 32 bit protected mode code segment, base 0 */
- .word 0xffff,0
- .byte 0,0x9f,0xcf,0
-
-_pmds:
- /* 32 bit protected mode data segment, base 0 */
- .word 0xffff,0
- .byte 0,0x93,0xcf,0
-_gdt_end:
-
-
- /* Dummy routines to satisfy the build */
- .section ".text16", "ax", @progbits
-prefix_exit:
-
-prefix_exit_end:
- .previous