Changeset View
Changeset View
Standalone View
Standalone View
sys/arm/arm/elf_machdep.c
Show First 20 Lines • Show All 50 Lines • ▼ Show 20 Lines | |||||
#ifdef VFP | #ifdef VFP | ||||
#include <machine/vfp.h> | #include <machine/vfp.h> | ||||
#endif | #endif | ||||
#include "opt_ddb.h" /* for OPT_DDB */ | #include "opt_ddb.h" /* for OPT_DDB */ | ||||
#include "opt_global.h" /* for OPT_KDTRACE_HOOKS */ | #include "opt_global.h" /* for OPT_KDTRACE_HOOKS */ | ||||
#include "opt_stack.h" /* for OPT_STACK */ | #include "opt_stack.h" /* for OPT_STACK */ | ||||
static boolean_t elf32_arm_abi_supported(struct image_params *); | static boolean_t elf32_arm_abi_supported(struct image_params *, int32_t *, | ||||
uint32_t *); | |||||
u_long elf_hwcap; | u_long elf_hwcap; | ||||
u_long elf_hwcap2; | u_long elf_hwcap2; | ||||
struct sysentvec elf32_freebsd_sysvec = { | struct sysentvec elf32_freebsd_sysvec = { | ||||
.sv_size = SYS_MAXSYSCALL, | .sv_size = SYS_MAXSYSCALL, | ||||
.sv_table = sysent, | .sv_table = sysent, | ||||
.sv_errsize = 0, | .sv_errsize = 0, | ||||
▲ Show 20 Lines • Show All 48 Lines • ▼ Show 20 Lines | static Elf32_Brandinfo freebsd_brand_info = { | ||||
.header_supported= elf32_arm_abi_supported, | .header_supported= elf32_arm_abi_supported, | ||||
}; | }; | ||||
SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, | SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, | ||||
(sysinit_cfunc_t) elf32_insert_brand_entry, | (sysinit_cfunc_t) elf32_insert_brand_entry, | ||||
&freebsd_brand_info); | &freebsd_brand_info); | ||||
static boolean_t | static boolean_t | ||||
elf32_arm_abi_supported(struct image_params *imgp) | elf32_arm_abi_supported(struct image_params *imgp, int32_t *osrel __unused, | ||||
uint32_t *fctl0 __unused) | |||||
{ | { | ||||
const Elf_Ehdr *hdr = (const Elf_Ehdr *)imgp->image_header; | const Elf_Ehdr *hdr = (const Elf_Ehdr *)imgp->image_header; | ||||
/* | /* | ||||
* When configured for EABI, FreeBSD supports EABI vesions 4 and 5. | * When configured for EABI, FreeBSD supports EABI vesions 4 and 5. | ||||
*/ | */ | ||||
if (EF_ARM_EABI_VERSION(hdr->e_flags) < EF_ARM_EABI_FREEBSD_MIN) { | if (EF_ARM_EABI_VERSION(hdr->e_flags) < EF_ARM_EABI_FREEBSD_MIN) { | ||||
if (bootverbose) | if (bootverbose) | ||||
▲ Show 20 Lines • Show All 213 Lines • Show Last 20 Lines |