Date: Thu, 13 Feb 2014 20:36:15 +0000 (UTC) From: Andrew Turner <andrew@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r261852 - in projects/arm64/sys/boot/efi: include libefi Message-ID: <201402132036.s1DKaFis046872@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: andrew Date: Thu Feb 13 20:36:15 2014 New Revision: 261852 URL: http://svnweb.freebsd.org/changeset/base/261852 Log: Add efi_handle_any to allow us to get a 'current' device when we lack a driver for the boot device, e.g. when loading the loader over semihosting. Modified: projects/arm64/sys/boot/efi/include/efilib.h projects/arm64/sys/boot/efi/libefi/handles.c Modified: projects/arm64/sys/boot/efi/include/efilib.h ============================================================================== --- projects/arm64/sys/boot/efi/include/efilib.h Thu Feb 13 20:25:25 2014 (r261851) +++ projects/arm64/sys/boot/efi/include/efilib.h Thu Feb 13 20:36:15 2014 (r261852) @@ -44,6 +44,7 @@ void efi_main(EFI_HANDLE image_handle, E int efi_register_handles(struct devsw *, EFI_HANDLE *, int); EFI_HANDLE efi_find_handle(struct devsw *, int); int efi_handle_lookup(EFI_HANDLE, struct devsw **, int *); +int efi_handle_any(struct devsw **dev, int *unit); int efi_status_to_errno(EFI_STATUS); time_t efi_time(EFI_TIME *); Modified: projects/arm64/sys/boot/efi/libefi/handles.c ============================================================================== --- projects/arm64/sys/boot/efi/libefi/handles.c Thu Feb 13 20:25:25 2014 (r261851) +++ projects/arm64/sys/boot/efi/libefi/handles.c Thu Feb 13 20:36:15 2014 (r261852) @@ -88,3 +88,15 @@ efi_handle_lookup(EFI_HANDLE h, struct d } return (ENOENT); } + +int +efi_handle_any(struct devsw **dev, int *unit) +{ + if (nentries == 0) + return (ENOENT); + if (dev != NULL) + *dev = entry[0].dev; + if (unit != NULL) + *unit = entry[0].unit; + return (0); +}
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201402132036.s1DKaFis046872>