Information related to EDD3.0 and ELILO --------------------------------------- Last updated: 02/02/14 As of elilo-3.0, the filesystem/device naming scheme takes advantage of the EDD3.0 support present in the underlying EFI/BIOS firmware layers. The EDD3.0 support is supposedly turned on by default in all version of the EFI firmware on IA-64 (and possibly IA-32). Support can be enabled or disabled dynamically using an EFI environment variable called "EDD30". The GUID of the variable is as follows: #define EDD30_GUID \ {0x964e5b21, 0x6459, 0x11d2, { 0x8e, 0x39, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b}} This is a boolean variable. When true, support is enabled. You can check if support is enabled by typing: Shell> edd30 Usage edd30 [On | Off] Used to support OS Loader debug EDD30 DevicePath Mode is On at this EFI shell prompt. You can enable support by forcing the variable to TRUE. This can be accomplished by typing: Shell> edd30 on EDD30 DevicePath Mode is On Alternatively an EFI application can use RT->SetVariable() to set the value of the EDD30 variable. If the variable was set to false, then to take advantage of EDD3.0 support after switching the variablle to TRUE, the system MUST be rebooted as EDD affects the core of EFI naming scheme. Elilo will check if the variable is defined and valid. If it is set to true, then the device name schemes that rely on it will work properly. That's the case for the 'simple' scheme. If the variable is not set to true or does not exist, elilo will use a generic builtin scheme with names such as dev001, dev002 and so on. The "EDD30" variable is like a system variable therefore it is expected not to be overloaded by users for others purposes. Elilo is fully functional even when EDD30 is off. By default, if EDD30 is off, elilo will try and set the variable to TRUE. However, some controllers do not support EDD30 and forcing the variable may cause problems. Therefore as of elilo-3.2, there is an option to avoid forcing the variable. In the config file, you can use 'noedd30' option and on the command line, you can use the -E option. When the variable is forced back to TRUE, th effect will only be seen after a reboot. Shall you decide not to reboot immediately, elilo will system still operate using the generic naming scheme. When EDD3.0 is enabled the output of the EFI shell 'map' command looks similar to this: Device mapping table fs0 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun0,Lun0)/HD(Part1,Sig00000000) fs1 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun6,Lun0)/HD(Part1,Sig00000000) fs2 : Acpi(PNP0A03,0)/Pci(3|1)/Ata(Secondary,Master)/CDROM(Entry1) blk0 : Acpi(PNP0A03,0)/Pci(3|1)/Ata(Primary,Master) blk1 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun0,Lun0) blk2 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun0,Lun0)/HD(Part1,Sig00000000) blk3 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun0,Lun0)/HD(Part2,Sig00000000) blk4 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun0,Lun0)/HD(Part3,Sig00000000) blk5 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun6,Lun0) blk6 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun6,Lun0)/HD(Part1,Sig00000000) blk7 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun6,Lun0)/HD(Part2,Sig00000000) blk8 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun6,Lun0)/HD(Part3,Sig00000000) blk9 : Acpi(PNP0A03,2)/Pci(0|0)/Scsi(Pun6,Lun0)/HD(Part3,Sig00000000)/HD(Part1,Sig00000200) blkA : Acpi(PNP0A03,0)/Pci(3|1)/Ata(Secondary,Master) blkB : Acpi(PNP0A03,0)/Pci(3|1)/Ata(Secondary,Master)/CDROM(Entry1) Shell> The same system with EDD3.0 disabled will look like this: Device mapping table fs0 : VenHw(Unknown Device:80)/HD(Part1,Sig00000000) fs1 : VenHw(Unknown Device:81)/HD(Part1,Sig00000000) fs2 : VenHw(Unknown Device:FF)/CDROM(Entry1) blk0 : VenHw(Unknown Device:00) blk1 : VenHw(Unknown Device:80) blk2 : VenHw(Unknown Device:80)/HD(Part1,Sig00000000) blk3 : VenHw(Unknown Device:80)/HD(Part2,Sig00000000) blk4 : VenHw(Unknown Device:80)/HD(Part3,Sig00000000) blk5 : VenHw(Unknown Device:81) blk6 : VenHw(Unknown Device:81)/HD(Part1,Sig00000000) blk7 : VenHw(Unknown Device:81)/HD(Part2,Sig00000000) blk8 : VenHw(Unknown Device:81)/HD(Part3,Sig00000000) blk9 : VenHw(Unknown Device:81)/HD(Part3,Sig00000000)/HD(Part1,Sig00000200) blkA : VenHw(Unknown Device:FF) blkB : VenHw(Unknown Device:FF)/CDROM(Entry1) Shell> EDD3.0 is an industry standard and the working draft can be downloaded from the following web site: http://www.t13.org/ The document reference is D1386 (Enhanced Disk Drive Services 3.0).