Lines Matching defs:initrd
213 STR_WITH_SIZE("Linux initrd")
460 * for the firmware or bootloader to expose the initrd data directly to the stub
462 * very easy to implement. It is a simple Linux initrd specific conduit between
464 * kernel) in charge of where and when to load the initrd, while leaving it up
487 * efi_load_initrd_dev_path() - load the initrd from the Linux initrd device path
488 * @initrd: pointer of struct to store the address where the initrd was loaded
489 * and the size of the loaded initrd
490 * @max: upper limit for the initrd memory allocation
493 * * %EFI_SUCCESS if the initrd was loaded successfully, in which
495 * * %EFI_NOT_FOUND if no LoadFile2 protocol exists on the initrd device path
500 efi_status_t efi_load_initrd_dev_path(struct linux_efi_initrd *initrd,
519 initrd->size = 0;
520 status = efi_call_proto(lf2, load_file, dp, false, &initrd->size, NULL);
524 status = efi_allocate_pages(initrd->size, &initrd->base, max);
528 status = efi_call_proto(lf2, load_file, dp, false, &initrd->size,
529 (void *)initrd->base);
531 efi_free(initrd->size, initrd->base);
539 struct linux_efi_initrd *initrd,
546 return handle_cmdline_files(image, L"initrd=", sizeof(L"initrd=") - 2,
548 &initrd->base, &initrd->size);
554 * @soft_limit: preferred address for loading the initrd
555 * @hard_limit: upper limit address for loading the initrd
566 struct linux_efi_initrd initrd, *tbl;
571 status = efi_load_initrd_dev_path(&initrd, hard_limit);
573 efi_info("Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path\n");
574 if (initrd.size > 0 &&
575 efi_measure_tagged_event(initrd.base, initrd.size,
577 efi_info("Measured initrd data into PCR 9\n");
579 status = efi_load_initrd_cmdline(image, &initrd, soft_limit,
581 /* command line loader disabled or no initrd= passed? */
585 efi_info("Loaded initrd from command line option\n");
590 status = efi_bs_call(allocate_pool, EFI_LOADER_DATA, sizeof(initrd),
595 *tbl = initrd;
607 efi_free(initrd.size, initrd.base);
609 efi_err("Failed to load initrd: 0x%lx\n", status);