/* Converts a text device path node to CDROM device path structure. */
EFI_DEVICE_PATH_PROTOCOL* DevPathFromTextCDROM(IN CHAR16 *TextDeviceNode)
/* Converts a text device path node to CDROM device path structure. */
EFI_DEVICE_PATH_PROTOCOL* DevPathFromTextCDROM(IN CHAR16 *TextDeviceNode)
{
  CHAR16             *EntryStr;
  CHAR16             *StartStr;
  CHAR16             *SizeStr;
  CDROM_DEVICE_PATH  *CDROMDevPath;
  EntryStr     = GetNextParamStr (&TextDeviceNode);
  StartStr     = GetNextParamStr (&TextDeviceNode);
  SizeStr      = GetNextParamStr (&TextDeviceNode);
  CDROMDevPath = (CDROM_DEVICE_PATH *)CreateDeviceNode (
                                        MEDIA_DEVICE_PATH,
                                        MEDIA_CDROM_DP,
                                        (UINT16)sizeof (CDROM_DEVICE_PATH)
                                        );
  CDROMDevPath->BootEntry = (UINT32)Strtoi (EntryStr);
  Strtoi64 (StartStr, &CDROMDevPath->PartitionStart);
  Strtoi64 (SizeStr, &CDROMDevPath->PartitionSize);
  return (EFI_DEVICE_PATH_PROTOCOL *)CDROMDevPath;
}