freebsd-skq/sys/boot/efi/include
jhb a01326746d Add some routines for working with EFI DEVICE_PATH objects.
- efi_lookup_devpath() uses the DEVICE_PATH_PROTOCOL to obtain the
  DEVICE_PATH for a given EFI handle.
- efi_lookup_image_devpath() uses the LOADED_IMAGE_DEVICE_PATH_PROTOCOL
  to lookup the device path of the device used to load a loaded image.
- efi_devpath_name() uses the DEVICE_PATH_TO_TEXT_PROTOCOL to generate
  a string description of a device path.  The returned string is a CHAR16
  string that can be printed via the recently added '%S' format in
  libstand's printf().  Note that the returned string is returned in
  allocated storage that should be freed by calling
  efi_free_devpath_name().
- efi_devpath_last_node() walks a DEVICE_PATH returning a pointer to the
  final node in the path (not counting the terminating node).  That is,
  it returns a pointer to the last meaninful node in a DEVICE_PATH.
- efi_devpath_trim() generates a new DEVICE_PATH from an existing
  DEVICE_PATH.  The new DEVICE_PATH does not include the last
  non-terminating node in the original path.  If the original DEVICE_PATH
  only contains the terminating node, this function returns NULL.
  The caller is responsible for freeing the returned DEVICE_PATH via
  free().
- efi_devpath_handle() attempts to find a handle that corresponds to a
  given device path.  However, if nodes at the end of the device path do
  not have valid handles associated with them, this function will return
  a handle that matches a node earlier in the device path.  In particular,
  this function returns a handle for the node closest to the end of the
  device path which has a valid handle.

Sponsored by:	Cisco Systems
2016-05-26 21:43:22 +00:00
..
amd64 sys/boot: spelling fixes in comments. 2016-04-30 00:26:38 +00:00
arm sys/boot: spelling fixes in comments. 2016-04-30 00:26:38 +00:00
arm64 sys/boot: spelling fixes in comments. 2016-04-30 00:26:38 +00:00
i386 sys/boot: spelling fixes in comments. 2016-04-30 00:26:38 +00:00
efi_nii.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efi.h Revert accidental whitespace changes included with r292623 2015-12-22 20:40:34 +00:00
efiapi.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
eficon.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
eficonsctl.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efidebug.h Revert accidental whitespace changes included with r292623 2015-12-22 20:40:34 +00:00
efidef.h Revert accidental whitespace changes included with r292623 2015-12-22 20:40:34 +00:00
efidevp.h Fix EFI multi device boot support 2016-02-05 15:35:33 +00:00
efierr.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efifpswa.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efifs.h Revert accidental whitespace changes included with r292623 2015-12-22 20:40:34 +00:00
efigop.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efilib.h Add some routines for working with EFI DEVICE_PATH objects. 2016-05-26 21:43:22 +00:00
efinet.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efipart.h Revert accidental whitespace changes included with r292623 2015-12-22 20:40:34 +00:00
efipciio.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efiprot.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efipxebc.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efiser.h Enable warnings in EFI boot code 2016-01-12 02:17:39 +00:00
efistdarg.h
efiuga.h sys/boot: spelling fixes in comments. 2016-04-30 00:26:38 +00:00
README

/* $FreeBSD$ */
/*-

Files in this directory and subdirectories are subject to the following
copyright unless superceded or supplemented by additional specific license
terms found in the file headers of individual files.

Copyright (c) 1998-2000 Intel Corporation

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.

Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.

THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL INTEL BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE. THE EFI SPECIFICATION AND ALL
OTHER INFORMATION ON THIS WEB SITE ARE PROVIDED "AS IS" WITH NO
WARRANTIES, AND ARE SUBJECT TO CHANGE WITHOUT NOTICE.

*/