Home
last modified time | relevance | path

Searched +full:arm64 +full:- +full:efi (Results 1 – 25 of 77) sorted by relevance

1234

/openbmc/linux/Documentation/admin-guide/
H A Defi-stub.rst2 The EFI Boot Stub
6 as a PE/COFF image, thereby convincing EFI firmware loaders to load
7 it as an EFI executable. The code that modifies the bzImage header,
8 along with the EFI-specific entry point that the firmware loader
9 jumps to are collectively known as the "EFI boot stub", and live in
10 arch/x86/boot/header.S and drivers/firmware/efi/libstub/x86-stub.c,
11 respectively. For ARM the EFI stub is implemented in
12 arch/arm/boot/compressed/efi-header.S and
13 drivers/firmware/efi/libstub/arm32-stub.c. EFI stub code that is shared
14 between architectures is in drivers/firmware/efi/libstub.
[all …]
/openbmc/linux/Documentation/riscv/
H A Dboot-image-header.rst2 Boot image header in RISC-V Linux
8 This document only describes the boot image header details for RISC-V Linux.
10 The following 64-byte header is present in decompressed Linux kernel image::
25 ARM64 header. Thus, both ARM64 & RISC-V header can be combined into one common
31 - This header is also reused to support EFI stub for RISC-V. EFI specification
33 load it as an EFI application. In order to support EFI stub, code0 is replaced
37 - version field indicate header version number
47 - The "magic" field is deprecated as of version 0.2. In a future
49 with the ARM64 header "magic" field, but unfortunately does not.
50 The "magic2" field replaces it, matching up with the ARM64 header.
[all …]
/openbmc/linux/arch/arm64/
H A DMakefile2 # arch/arm64/Makefile
5 # architecture-specific flags and dependencies.
11 # Copyright (C) 1995-2001 by Russell King
13 LDFLAGS_vmlinux :=--no-undefined -X --pic-veneer
16 # Pass --no-apply-dynamic-relocs to restore pre-binutils-2.27 behaviour
19 LDFLAGS_vmlinux += -shared -Bsymbolic -z notext \
20 $(call ld-option, --no-apply-dynamic-relocs)
25 LDFLAGS_vmlinux += --fix-cortex-a53-843419
29 cc_has_k_constraint := $(call try-run,echo \
33 }' | $(CC) -S -x c -o "$$TMP" -,,-DCONFIG_CC_HAS_K_CONSTRAINT=1)
[all …]
/openbmc/linux/drivers/firmware/efi/libstub/
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
5 # things like ftrace and stack-protector are likely to cause trouble if left
9 # non-x86 reuses KBUILD_CFLAGS, x86 does not
10 cflags-y := $(KBUILD_CFLAGS)
12 cflags-$(CONFIG_X86_32) := -march=i386
13 cflags-$(CONFIG_X86_64) := -mcmodel=small
14 cflags-$(CONFIG_X86) += -m$(BITS) -D__KERNEL__ \
15 -fPIC -fno-strict-aliasing -mno-red-zone \
16 -mno-mmx -mno-sse -fshort-wchar \
17 -Wno-pointer-sign \
[all …]
H A Defi-stub.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * EFI stub implementation that is shared by arm and arm64 architectures.
4 * This should be #included by the EFI stub implementation files.
12 #include <linux/efi.h>
13 #include <asm/efi.h>
21 * For ARM/ARM64:
24 * The value chosen is the largest non-zero power of 2 suitable for this purpose
25 * both on 32-bit and 64-bit ARM CPUs, to maximize the likelihood that it can
27 * Since 32-bit ARM could potentially execute with a 1G/3G user/kernel split,
31 * For RISC-V:
[all …]
H A Defi-stub-entry.c1 // SPDX-License-Identifier: GPL-2.0-only
3 #include <linux/efi.h>
6 #include <asm/efi.h>
20 * EFI entry point for the generic EFI stub used by ARM, arm64, RISC-V and
39 /* Check if we were booted by the EFI firmware */ in efi_pe_entry()
40 if (efi_system_table->hdr.signature != EFI_SYSTEM_TABLE_SIGNATURE) in efi_pe_entry()
70 screen_info_offset = image_addr - (unsigned long)image->image_base; in efi_pe_entry()
H A Darm64-stub.c1 // SPDX-License-Identifier: GPL-2.0
5 * This file implements the EFI boot stub for the arm64 kernel.
10 #include <linux/efi.h>
11 #include <asm/efi.h>
27 if (image->image_base != _text) { in handle_kernel_image()
29 image->image_base = _text; in handle_kernel_image()
36 kernel_size = _edata - _text; in handle_kernel_image()
37 kernel_codesize = __inittext_end - _text; in handle_kernel_image()
38 kernel_memsize = kernel_size + (_end - _edata); in handle_kernel_image()
58 * When built as part of the kernel, the EFI stub cannot branch to the in primary_entry_offset()
[all …]
/openbmc/u-boot/doc/
H A DREADME.iscsi1 # iSCSI booting with U-Boot and iPXE
5 U-Boot has only a reduced set of supported network protocols. The focus for
34 An alternative to implementing these protocols in U-Boot is to use an existing
35 software that can run on top of U-Boot. iPXE[1] is the "swiss army knife" of
39 iPXE can be built as an EFI application (named snp.efi) which can be loaded and
40 run by U-Boot.
44 U-Boot loads the EFI application iPXE snp.efi using the bootefi command. This
46 U-Boot.
56 uses the ConnectController boot service of U-Boot to request U-Boot to connect a
57 file system driver. U-Boot reads from the iSCSI drive via the block IO protocol
[all …]
/openbmc/linux/drivers/firmware/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
4 # see Documentation/kbuild/kconfig-language.rst.
13 depends on ARM || ARM64 || COMPILE_TEST
19 provides a mechanism for inter-processor communication between SCP
42 depends on ARM64
71 bool "Add firmware-provided memory map to sysfs" if EXPERT
74 Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap.
78 See also Documentation/ABI/testing/sysfs-firmware-memmap.
81 bool "Console device selection via EFI PCDP or HCDP table"
82 depends on ACPI && EFI && IA64
[all …]
/openbmc/u-boot/
H A D.travis.yml1 # SPDX-License-Identifier: GPL-2.0+
4 # build U-Boot on Travis CI - https://travis-ci.org/
14 - ubuntu-toolchain-r-test
15 - llvm-toolchain-trusty-7
17 - cppcheck
18 - sloccount
19 - sparse
20 - bc
21 - build-essential
22 - libsdl1.2-dev
[all …]
/openbmc/openbmc/poky/meta/recipes-bsp/grub/
H A Dgrub_2.12.bb3 RDEPENDS:${PN}-common += "${PN}-editenv"
4 RDEPENDS:${PN} += "${PN}-common"
5 RDEPENDS:${PN}:class-native = ""
7 RPROVIDES:${PN}-editenv += "${PN}-efi-editenv"
9 PROVIDES:append:class-native = " grub-efi-native"
11 PACKAGES =+ "${PN}-editenv ${PN}-common"
12 FILES:${PN}-editenv = "${bindir}/grub-editenv"
13 FILES:${PN}-common = " \
22 # Avoid conflicts with the EFI package for systems such as arm64 where we
23 # need to build grub and grub-efi but only EFI is supported by removing EFI
[all …]
H A Dgrub-efi_2.12.bb3 require conf/image-uefi.conf
5 GRUBPLATFORM = "efi"
7 DEPENDS:append = " grub-native"
8 RDEPENDS:${PN} = "grub-common virtual-grub-bootconf"
14 S = "${WORKDIR}/grub-${PV}"
20 prefix = "" if d.getVar('EFI_PROVIDER') == "grub-efi" else "grub-efi-"
26 grubtarget = 'arm64'
34 raise bb.parse.SkipRecipe("grub-efi is incompatible with target %s" % target)
38 prefix = "grub-efi-" if prefix == "" else ""
45 EXTRA_OECONF += "--enable-efiemu=no"
[all …]
/openbmc/linux/arch/arm64/include/asm/
H A Defi.h1 /* SPDX-License-Identifier: GPL-2.0 */
35 __efi_rt_asm_wrapper((p)->f, #f, args)
44 * efi_rt_stack_top[-1] contains the value the stack pointer had before
45 * switching to the EFI runtime stack.
49 on_task_stack(current, READ_ONCE(efi_rt_stack_top[-1]), 1))
54 * Even when Linux uses IRQ priorities for IRQ disabling, EFI does not.
55 * And EFI shouldn't really play around with priority masking as it is not aware
74 * On arm64, we have to ensure that the initrd ends up in the linear region,
75 * which is a 1 GB aligned region of size '1UL << (VA_BITS_MIN - 1)' that is
78 * Since the EFI stub is part of the kernel Image, we can relax the
[all …]
/openbmc/u-boot/lib/efi_loader/
H A DKconfig2 bool "Support running EFI Applications in U-Boot"
14 Select this option if you want to run EFI applications (like grub2)
15 on top of U-Boot. If this option is enabled, U-Boot will expose EFI
16 interfaces to a loaded EFI application, enabling it to reuse U-Boot's
25 Unicode codepoints in the range 0x0000-0xffff. If this option is not
30 bool "EFI Applications use bounce buffers for DMA operations"
31 depends on EFI_LOADER && ARM64
39 bool "Expose HII protocols to EFI applications"
47 U-Boot implements enough of its features to be able to run the UEFI
/openbmc/linux/drivers/firmware/efi/
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
7 # ARM64 maps efi runtime services in userspace addresses
11 KASAN_SANITIZE_runtime-wrappers.o := n
13 obj-$(CONFIG_ACPI_BGRT) += efi-bgrt.o
14 obj-$(CONFIG_EFI) += efi.o vars.o reboot.o memattr.o tpm.o
15 obj-$(CONFIG_EFI) += memmap.o
17 obj-$(CONFIG_EFI) += capsule.o
19 obj-$(CONFIG_EFI_PARAMS_FROM_FDT) += fdtparams.o
20 obj-$(CONFIG_EFI_ESRT) += esrt.o
21 obj-$(CONFIG_EFI_VARS_PSTORE) += efi-pstore.o
[all …]
H A Darm-runtime.c1 // SPDX-License-Identifier: GPL-2.0
11 #include <linux/efi.h>
24 #include <asm/efi.h>
36 { -1, NULL }
61 phys_addr_t phys = md->phys_addr; in efi_virtmap_init()
64 if (!(md->attribute & EFI_MEMORY_RUNTIME)) in efi_virtmap_init()
66 if (md->virt_addr == U64_MAX) in efi_virtmap_init()
71 pr_warn(" EFI remap %pa: failed to create mapping (%d)\n", in efi_virtmap_init()
85 * non-early mapping of the UEFI system table and virtual mappings for all
93 pr_info("EFI services will not be available.\n"); in arm_enable_runtime_services()
[all …]
H A Dmemattr.c1 // SPDX-License-Identifier: GPL-2.0
6 #define pr_fmt(fmt) "efi: memattr: " fmt
8 #include <linux/efi.h>
31 pr_err("Failed to map EFI Memory Attributes table @ 0x%lx\n", in efi_memattr_init()
33 return -ENOMEM; in efi_memattr_init()
36 if (tbl->version > 2) { in efi_memattr_init()
37 pr_warn("Unexpected EFI Memory Attributes table version %d\n", in efi_memattr_init()
38 tbl->version); in efi_memattr_init()
42 tbl_size = sizeof(*tbl) + tbl->num_entries * tbl->desc_size; in efi_memattr_init()
44 set_bit(EFI_MEM_ATTR, &efi.flags); in efi_memattr_init()
[all …]
/openbmc/linux/Documentation/fb/
H A Defifb.rst5 This is a generic EFI platform driver for systems with UEFI firmware. The
6 system must be booted via the EFI stub for this to be usable. efifb supports
13 - iMac 17"/20"
14 - Macbook
15 - Macbook Pro 15"/17"
16 - MacMini
17 - ARM/ARM64/X86 systems with UEFI firmware
43 to workaround side-effects and slowdowns on other CPU cores
50 The EFI stub will set the mode of the display to mode number n if
53 <xres>x<yres>[-(rgb|bgr|<bpp>)]
[all …]
/openbmc/openbmc/meta-arm/meta-arm-bsp/documentation/corstone1000/
H A Duser-guide.rst2 # Copyright (c) 2022-2024, Arm Limited.
4 # SPDX-License-Identifier: MIT
11 ------
12 The Corstone-1000 software stack uses the `Yocto Project <https://www.yoctoproject.org/>`__ to build
13 a tiny Linux distribution suitable for the Corstone-1000 platform (kernel and initramfs filesystem …
14 The Yocto Project relies on the `BitBake <https://docs.yoctoproject.org/bitbake.html#bitbake-docume…
19 -------------
26 - Git 1.8.3.1 or greater.
27 - Python 3.8.0 or greater.
28 - GNU Tar 1.28 or greater.
[all …]
/openbmc/linux/arch/arm64/kernel/
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
6 CFLAGS_armv8_deprecated.o := -I$(src)
14 CFLAGS_REMOVE_syscall.o = -fstack-protector -fstack-protector-strong
15 CFLAGS_syscall.o += -fno-stack-protector
23 # available or are out-of-sync with HW state. Since `noinstr` doesn't always
25 KCOV_INSTRUMENT_entry-common.o := n
29 obj-y := debug-monitors.o entry.o irq.o fpsimd.o \
30 entry-common.o entry-fpsimd.o process.o ptrace.o \
32 io.o vdso.o hyp-stub.o psci.o cpu_ops.o \
35 smp.o smp_spin_table.o topology.o smccc-call.o \
[all …]
H A Dacpi.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * ARM64 Specific Low-Level ACPI Boot Support
5 * Copyright (C) 2013-2014, Linaro Ltd.
16 #include <linux/arm-smccc.h>
18 #include <linux/efi.h>
19 #include <linux/efi-bgrt.h>
51 return -EINVAL; in parse_acpi()
61 return -EINVAL; /* Core will print when we return error */ in parse_acpi()
117 * acpi_fadt_sanity_check() - Check FADT presence and carry out sanity
130 * FADT is required on arm64; retrieve it to check its presence in acpi_fadt_sanity_check()
[all …]
/openbmc/linux/arch/riscv/kernel/
H A Defi.c1 // SPDX-License-Identifier: GPL-2.0-only
4 * Adapted from arch/arm64/kernel/efi.c
7 #include <linux/efi.h>
10 #include <asm/efi.h>
12 #include <asm/pgtable-bits.h>
21 u64 attr = md->attribute; in efimem_to_pgprot_map()
22 u32 type = md->type; in efimem_to_pgprot_map()
27 /* R-- */ in efimem_to_pgprot_map()
32 /* R-X */ in efimem_to_pgprot_map()
36 /* RW- */ in efimem_to_pgprot_map()
[all …]
/openbmc/linux/arch/arm64/boot/
H A DMakefile2 # arch/arm64/boot/Makefile
5 # architecture-specific flags and dependencies.
17 OBJCOPYFLAGS_Image :=-O binary -R .note -R .note.gnu.build-id -R .comment -S
43 EFI_ZBOOT_BFD_TARGET := elf64-littleaarch64
44 EFI_ZBOOT_MACH_TYPE := ARM64
47 EFI_ZBOOT_OBJCOPY_FLAGS = --add-symbol zboot_code_size=0x$(shell \
48 $(NM) vmlinux|grep _kernel_codesize|cut -d' ' -f1)
50 include $(srctree)/drivers/firmware/efi/libstub/Makefile.zboot
/openbmc/openbmc/meta-arm/meta-arm-bsp/recipes-bsp/u-boot/
H A Du-boot-corstone1000.inc1 # Corstone1000 specific U-boot support
3 DEPENDS:append = " openssl-native efitools-native"
4 CORSTONE1000_DEVICE_TREE:corstone1000-mps3 = "corstone1000-mps3"
5 CORSTONE1000_DEVICE_TREE:corstone1000-fvp = "corstone1000-fvp"
8 UBOOT_CONFIG ??= "EFI"
9 UBOOT_CONFIG[EFI] = "corstone1000_defconfig"
19 file://0001-FF-A-v15-arm64-smccc-add-support-for-SMCCCv1.2-x0-x1.patch \
20 file://0002-FF-A-v15-lib-uuid-introduce-uuid_str_to_le_bin-funct.patch \
21 file://0003-FF-A-v15-lib-uuid-introduce-testcase-for-uuid_str_to.patch \
22 file://0004-FF-A-v15-arm_ffa-introduce-Arm-FF-A-support.patch \
[all …]
/openbmc/qemu/tests/functional/
H A Dtest_aarch64_sbsaref_freebsd.py5 # SPDX-FileCopyrightText: 2023-2024 Linaro Ltd.
6 # SPDX-FileContributor: Philippe Mathieu-Daudé <philmd@linaro.org>
7 # SPDX-FileContributor: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
9 # SPDX-License-Identifier: GPL-2.0-or-later
23 ('https://download.freebsd.org/releases/arm64/aarch64/ISO-IMAGES/'
24 '14.1/FreeBSD-14.1-RELEASE-arm64-aarch64-bootonly.iso'),
27 # This tests the whole boot chain from EFI to Userspace
37 "-drive", f"file={img_path},format=raw,snapshot=on",
40 self.vm.add_args("-cpu", cpu)
46 self.boot_freebsd14("cortex-a57")
[all …]

1234