ROM firmware is optional now
ROM firmware is optional now and should be used only by user choice. It should be named as 'FirmwareName.isarom' placed under 'drivers/' directory. In the same directory placed an example firmware and some information. Change-Id: I5841deacacacf39c9c654828c44a869ef996044b Depends-On: Id1f0d9e32487bcd902940311ed8d8bef4129fdaf Doc-Impact: ops-guide Closes-Bug: 1528186 Closes-Bug: 1527474
This commit is contained in:
parent
a08d3d640c
commit
a1bf0cf649
|
@ -73,12 +73,14 @@ echo "OK"
|
||||||
# Check for VirtualBox iPXE firmware
|
# Check for VirtualBox iPXE firmware
|
||||||
echo -n "Checking for VirtualBox iPXE firmware..."
|
echo -n "Checking for VirtualBox iPXE firmware..."
|
||||||
if [ -z $pxe_path ]; then
|
if [ -z $pxe_path ]; then
|
||||||
echo "VirtualBox iPXE firmware is not found. Please put it under the 'drivers' directory."
|
echo "SKIP"
|
||||||
exit 1
|
echo "VirtualBox iPXE firmware is not found. Used standard firmware from the VirtualBox Extension Pack."
|
||||||
|
execute VBoxManage setextradata global VBoxInternal/Devices/pcbios/0/Config/LanBootRom
|
||||||
|
else
|
||||||
|
execute VBoxManage setextradata global VBoxInternal/Devices/pcbios/0/Config/LanBootRom "$(pwd)/$pxe_path" 2>/dev/null
|
||||||
|
echo "OK"
|
||||||
|
echo "Going to use iPXE boot firmware file $pxe_path"
|
||||||
fi
|
fi
|
||||||
execute VBoxManage setextradata global VBoxInternal/Devices/pcbios/0/Config/LanBootRom "$(pwd)/$pxe_path" 2>/dev/null
|
|
||||||
echo "OK"
|
|
||||||
echo "Going to use iPXE boot firmware file $pxe_path"
|
|
||||||
|
|
||||||
# Check for ISO image to be available
|
# Check for ISO image to be available
|
||||||
echo -n "Checking for Mirantis OpenStack ISO image... "
|
echo -n "Checking for Mirantis OpenStack ISO image... "
|
||||||
|
|
|
@ -21,7 +21,7 @@ source ./functions/shell.sh
|
||||||
iso_path=`ls -1t iso/*.iso 2>/dev/null | head -1`
|
iso_path=`ls -1t iso/*.iso 2>/dev/null | head -1`
|
||||||
|
|
||||||
# get the first available iPXE boot firmware from the directory 'drivers'
|
# get the first available iPXE boot firmware from the directory 'drivers'
|
||||||
pxe_path=`ls -1t drivers/*.isarom 2>/dev/null | head -1`
|
pxe_path=`ls -1t drivers/*.*rom 2>/dev/null | head -1`
|
||||||
|
|
||||||
# Every Mirantis OpenStack machine name will start from this prefix
|
# Every Mirantis OpenStack machine name will start from this prefix
|
||||||
vm_name_prefix=fuel-
|
vm_name_prefix=fuel-
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,52 @@
|
||||||
|
# iPXE - open source boot firmware for VirtualBox
|
||||||
|
|
||||||
|
This is a prebuilt binary version of **iPXE** as an **VirtualBox PXE ROM**.
|
||||||
|
|
||||||
|
The **iPXE** source code is maintained in a git repository. You can check out a copy of the code using:
|
||||||
|
|
||||||
|
```
|
||||||
|
git clone git://git.ipxe.org/ipxe.git
|
||||||
|
```
|
||||||
|
|
||||||
|
and build it using:
|
||||||
|
|
||||||
|
```
|
||||||
|
cd ipxe/src
|
||||||
|
make
|
||||||
|
```
|
||||||
|
|
||||||
|
You will need to have at least the following packages installed in order to build **iPXE**:
|
||||||
|
|
||||||
|
```
|
||||||
|
* gcc (version 3 or later)
|
||||||
|
* binutils (version 2.18 or later)
|
||||||
|
* make
|
||||||
|
* perl
|
||||||
|
* syslinux (for isolinux, only needed for building .iso images)
|
||||||
|
* liblzma or xz header files
|
||||||
|
* zlib, binutils and libiberty header files (only needed for EFI builds)
|
||||||
|
```
|
||||||
|
|
||||||
|
to build this **Intel 82540EM Gigabit Ethernet PXE ROM** for VirtualBox use:
|
||||||
|
|
||||||
|
```
|
||||||
|
make CONFIG=vbox bin/8086100e.isarom
|
||||||
|
```
|
||||||
|
|
||||||
|
Max size of a VirtualBox ROM is 56KB (57344 bytes).
|
||||||
|
There should be no need to pad the image as long as the binary is smaller or equal to this size.
|
||||||
|
|
||||||
|
To use the ROM in VirtualBox you need to enable it using this command:
|
||||||
|
|
||||||
|
```
|
||||||
|
vboxmanage setextradata global VBoxInternal/Devices/pcbios/0/Config/LanBootRom \
|
||||||
|
/absolute/path/to/8086100e.isarom
|
||||||
|
```
|
||||||
|
|
||||||
|
NB: If you build the ROM using the .rom prefix then it'll be built as a PCI
|
||||||
|
ROM, which won't work properly in VirtualBox. The error message you'll see
|
||||||
|
is "No more network devices", which is somewhat confusing. If you enter the
|
||||||
|
shell and use the "autoboot" command things will work as intended. Remember
|
||||||
|
to always build as a .isarom to avoid this issue.
|
||||||
|
|
||||||
|
You can find **iPXE** at the official site of the project: <http://ipxe.org/>.
|
|
@ -1,52 +1 @@
|
||||||
# iPXE - open source boot firmware for VirtualBox
|
Put ROM firmware in this folder
|
||||||
|
|
||||||
This is a prebuilt binary version of **iPXE** as an **VirtualBox PXE ROM**.
|
|
||||||
|
|
||||||
The **iPXE** source code is maintained in a git repository. You can check out a copy of the code using:
|
|
||||||
|
|
||||||
```
|
|
||||||
git clone git://git.ipxe.org/ipxe.git
|
|
||||||
```
|
|
||||||
|
|
||||||
and build it using:
|
|
||||||
|
|
||||||
```
|
|
||||||
cd ipxe/src
|
|
||||||
make
|
|
||||||
```
|
|
||||||
|
|
||||||
You will need to have at least the following packages installed in order to build **iPXE**:
|
|
||||||
|
|
||||||
```
|
|
||||||
* gcc (version 3 or later)
|
|
||||||
* binutils (version 2.18 or later)
|
|
||||||
* make
|
|
||||||
* perl
|
|
||||||
* syslinux (for isolinux, only needed for building .iso images)
|
|
||||||
* liblzma or xz header files
|
|
||||||
* zlib, binutils and libiberty header files (only needed for EFI builds)
|
|
||||||
```
|
|
||||||
|
|
||||||
to build this **Intel 82540EM Gigabit Ethernet PXE ROM** for VirtualBox use:
|
|
||||||
|
|
||||||
```
|
|
||||||
make CONFIG=vbox bin/8086100e.isarom
|
|
||||||
```
|
|
||||||
|
|
||||||
Max size of a VirtualBox ROM is 56KB (57344 bytes).
|
|
||||||
There should be no need to pad the image as long as the binary is smaller or equal to this size.
|
|
||||||
|
|
||||||
To use the ROM in VirtualBox you need to enable it using this command:
|
|
||||||
|
|
||||||
```
|
|
||||||
vboxmanage setextradata global VBoxInternal/Devices/pcbios/0/Config/LanBootRom \
|
|
||||||
/absolute/path/to/8086100e.isarom
|
|
||||||
```
|
|
||||||
|
|
||||||
NB: If you build the ROM using the .rom prefix then it'll be built as a PCI
|
|
||||||
ROM, which won't work properly in VirtualBox. The error message you'll see
|
|
||||||
is "No more network devices", which is somewhat confusing. If you enter the
|
|
||||||
shell and use the "autoboot" command things will work as intended. Remember
|
|
||||||
to always build as a .isarom to avoid this issue.
|
|
||||||
|
|
||||||
You can find **iPXE** at the official site of the project: <http://ipxe.org/>.
|
|
||||||
|
|
Loading…
Reference in New Issue