Changeset 41783 in vbox for trunk/src/VBox/Devices/EFI
- Timestamp:
- Jun 16, 2012 7:24:15 PM (13 years ago)
- svn:sync-xref-src-repo-rev:
- 78601
- Location:
- trunk/src/VBox/Devices/EFI/Firmware2/VBoxPkg
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/EFI/Firmware2/VBoxPkg/Include/Library/GenericBdsLib.h
r33540 r41783 135 135 /** 136 136 This function will enumerate all possible boot devices in the system, and 137 automatically create boot options for Network, Shell, Removable BlockIo, 138 and Non-BlockIo Simplefile devices. 139 137 automatically create boot options for Network, Shell, Removable BlockIo, 138 and Non-BlockIo Simplefile devices. 139 140 140 BDS separates EFI boot options into six types: 141 1. Network - The boot option points to the SimpleNetworkProtocol device. 141 1. Network - The boot option points to the SimpleNetworkProtocol device. 142 142 Bds will try to automatically create this type of boot option during enumeration. 143 2. Shell - The boot option points to internal flash shell. 143 2. Shell - The boot option points to internal flash shell. 144 144 Bds will try to automatically create this type of boot option during enumeration. 145 145 3. Removable BlockIo - The boot option points to a removable media … … 147 147 These devices should contain a *removable* blockIo 148 148 protocol in their device handle. 149 Bds will try to automatically create this type boot option 149 Bds will try to automatically create this type boot option 150 150 when enumerate. 151 4. Fixed BlockIo - The boot option points to a Fixed blockIo device, 151 4. Fixed BlockIo - The boot option points to a Fixed blockIo device, 152 152 such as a hard disk. 153 153 These devices should contain a *fixed* blockIo 154 154 protocol in their device handle. 155 155 BDS will skip fixed blockIo devices, and not 156 automatically create boot option for them. But BDS 157 will help to delete those fixed blockIo boot options, 156 automatically create boot option for them. But BDS 157 will help to delete those fixed blockIo boot options, 158 158 whose description rules conflict with other auto-created 159 159 boot options. 160 5. Non-BlockIo Simplefile - The boot option points to a device whose handle 160 5. Non-BlockIo Simplefile - The boot option points to a device whose handle 161 161 has SimpleFileSystem Protocol, but has no blockio 162 162 protocol. These devices do not offer blockIo 163 protocol, but BDS still can get the 163 protocol, but BDS still can get the 164 164 \EFI\BOOT\boot{machinename}.EFI by SimpleFileSystem 165 165 Protocol. 166 6. File - The boot option points to a file. These boot options are usually 166 6. File - The boot option points to a file. These boot options are usually 167 167 created by the user, either manually or with an OS loader. BDS will not delete or modify 168 these boot options. 169 168 these boot options. 169 170 170 This function will enumerate all possible boot devices in the system, and 171 automatically create boot options for Network, Shell, Removable BlockIo, 171 automatically create boot options for Network, Shell, Removable BlockIo, 172 172 and Non-BlockIo Simplefile devices. 173 173 It will excute once every boot. 174 174 175 175 @param BdsBootOptionList The header of the linked list that indexed all 176 176 current boot options … … 365 365 // 366 366 /** 367 This function connects all system drivers with the corresponding controllers. 367 This function connects all system drivers with the corresponding controllers. 368 368 369 369 **/ … … 387 387 This function creates all handles associated with the given device 388 388 path node. If the handle associated with one device path node can not 389 be created, then it tries to execute the dispatch to load the missing drivers. 389 be created, then it tries to execute the dispatch to load the missing drivers. 390 390 391 391 @param DevicePathToConnect The device path to be connected. Can be … … 504 504 // 505 505 /** 506 Delete the instance in Multi that overlaps with Single 506 Delete the instance in Multi that overlaps with Single 507 507 508 508 @param Multi A pointer to a multi-instance device path data … … 604 604 605 605 /** 606 Shadow all Legacy OptionRom. 606 Shadow all Legacy OptionRom. 607 607 608 608 **/ … … 643 643 Add the legacy boot options from BBS table if they do not exist. 644 644 645 @retval EFI_SUCCESS The boot options are added successfully 645 @retval EFI_SUCCESS The boot options are added successfully 646 646 or they are already in boot options. 647 647 @retval EFI_NOT_FOUND No legacy boot options is found. … … 656 656 657 657 /** 658 Add the legacy boot devices from BBS table into 658 Add the legacy boot devices from BBS table into 659 659 the legacy device boot order. 660 660 … … 675 675 676 676 @param Entry The boot option is to be checked for refresh BBS table. 677 677 678 678 @retval EFI_SUCCESS The boot priority for BBS entries is refreshed successfully. 679 679 @retval EFI_NOT_FOUND BBS entries can't be found. … … 844 844 /** 845 845 Expand a device path that starts with a hard drive media device path node to be a 846 full device path that includes the full hardware path to the device. This function enables the device to boot. 846 full device path that includes the full hardware path to the device. This function enables the device to boot. 847 847 To avoid requiring a connect on every boot, the front match is saved in a variable (the part point 848 848 to the partition node. E.g. ACPI() /PCI()/ATA()/Partition() ). … … 861 861 IN HARDDRIVE_DEVICE_PATH *HardDriveDevicePath 862 862 ); 863 863 864 864 /** 865 865 Return the bootable media handle. 866 866 First, check whether the device is connected. 867 867 Second, check whether the device path points to a device that supports SimpleFileSystemProtocol. 868 Third, detect the thedefault boot file in the Media, and return the removable Media handle.868 Third, detect the default boot file in the Media, and return the removable Media handle. 869 869 870 870 @param DevicePath Device Path to a bootable device … … 879 879 IN OUT CHAR16 **NewFileName 880 880 ); 881 881 882 882 883 883 /** … … 927 927 @param DevicePath The bootable device Path to check 928 928 929 @retval BDS_EFI_MEDIA_HD_BOOT If given device path contains MEDIA_DEVICE_PATH type device path node which subtype is MEDIA_HARDDRIVE_DP @retval BDS_EFI_MEDIA_CDROM_BOOT If given device path contains MEDIA_DEVICE_PATH type device path node which subtype is MEDIA_CDROM_DP @retval BDS_EFI_ACPI_FLOPPY_BOOT If given device path contains ACPI_DEVICE_PATH type device path node which HID is floppy device. @retval BDS_EFI_MESSAGE_ATAPI_BOOT If given device path contains MESSAGING_DEVICE_PATH type device path node and its last device path node's subtype is MSG_ATAPI_DP. @retval BDS_EFI_MESSAGE_SCSI_BOOT If given device path contains MESSAGING_DEVICE_PATH type device path node and its last device path node's subtype is MSG_SCSI_DP. @retval BDS_EFI_MESSAGE_USB_DEVICE_BOOT If given device path contains MESSAGING_DEVICE_PATH type device path node and its last device path node's subtype is MSG_USB_DP. @retval BDS_EFI_MESSAGE_MISC_BOOT If the device path not contains any media device path node, and its last device path node point to a message device path node. @retval BDS_LEGACY_BBS_BOOT If given device path contains BBS_DEVICE_PATH type device path node. @retval BDS_EFI_UNSUPPORT An EFI Removable BlockIO device path not point to a media and message device, 929 @retval BDS_EFI_MEDIA_HD_BOOT If given device path contains MEDIA_DEVICE_PATH type device path node which subtype is MEDIA_HARDDRIVE_DP @retval BDS_EFI_MEDIA_CDROM_BOOT If given device path contains MEDIA_DEVICE_PATH type device path node which subtype is MEDIA_CDROM_DP @retval BDS_EFI_ACPI_FLOPPY_BOOT If given device path contains ACPI_DEVICE_PATH type device path node which HID is floppy device. @retval BDS_EFI_MESSAGE_ATAPI_BOOT If given device path contains MESSAGING_DEVICE_PATH type device path node and its last device path node's subtype is MSG_ATAPI_DP. @retval BDS_EFI_MESSAGE_SCSI_BOOT If given device path contains MESSAGING_DEVICE_PATH type device path node and its last device path node's subtype is MSG_SCSI_DP. @retval BDS_EFI_MESSAGE_USB_DEVICE_BOOT If given device path contains MESSAGING_DEVICE_PATH type device path node and its last device path node's subtype is MSG_USB_DP. @retval BDS_EFI_MESSAGE_MISC_BOOT If the device path not contains any media device path node, and its last device path node point to a message device path node. @retval BDS_LEGACY_BBS_BOOT If given device path contains BBS_DEVICE_PATH type device path node. @retval BDS_EFI_UNSUPPORT An EFI Removable BlockIO device path not point to a media and message device, 930 930 **/ 931 931 UINT32 … … 946 946 VOID 947 947 ); 948 948 949 949 950 950 /** … … 986 986 987 987 @retval EFI_SUCCESS The specific Usb device is connected successfully. 988 @retval EFI_INVALID_PARAMETER Invalid HostControllerPi (not 0x00, 0x20 or 0xFF) 988 @retval EFI_INVALID_PARAMETER Invalid HostControllerPi (not 0x00, 0x20 or 0xFF) 989 989 or RemainingDevicePath is not the USB class device path. 990 990 @retval EFI_NOT_FOUND The device specified by device path is not found. … … 997 997 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath 998 998 ); 999 999 1000 1000 1001 1001 // … … 1054 1054 1055 1055 /** 1056 Use SystemTable ConOut to turn on video based Simple Text Out consoles. The 1056 Use SystemTable ConOut to turn on video based Simple Text Out consoles. The 1057 1057 Simple Text Out screens will now be synced up with all non video output devices 1058 1058 -
trunk/src/VBox/Devices/EFI/Firmware2/VBoxPkg/Library/VBoxGenericBdsLib/BdsBoot.c
r37147 r41783 1428 1428 First, check the device is connected 1429 1429 Second, check whether the device path point to a device which support SimpleFileSystemProtocol, 1430 Third, detect the thedefault boot file in the Media, and return the removable Media handle.1430 Third, detect the default boot file in the Media, and return the removable Media handle. 1431 1431 1432 1432 @param DevicePath Device Path to a bootable device … … 1503 1503 1504 1504 // 1505 // Detect the thedefault boot file from removable Media1505 // Detect the default boot file from removable Media 1506 1506 // 1507 1507
Note:
See TracChangeset
for help on using the changeset viewer.