Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
hardwareissues [2008/09/12 09:34] svenx nForce Windows AoE issue |
hardwareissues [2010/11/13 14:14] (current) tal.aloni fixed typo |
||
---|---|---|---|
Line 15: | Line 15: | ||
==== How to Fix ==== | ==== How to Fix ==== | ||
- | 3com deliver a firmware upgrade and can be downloaded [[ftp://ftp.3com.com/pub/nic/3c90x/util430.exe|here]]. | + | 3com deliver a firmware upgrade which used to live [[ftp://ftp.3com.com/pub/nic/3c90x/util430.exe|here]]; however the upgrade is apparently no longer available direct from 3Com but copies can still be found on [[http://www.filewatcher.com/m/util430.exe.1945735.0.0.html|other sites]]. This file has to be decompressed and run in a real dos mode. |
- | This file have to be decompressed and run in a real dos mode. | + | |
Then run //mbaflash.exe// | Then run //mbaflash.exe// | ||
Line 34: | Line 33: | ||
The MBA version is now upgraded to v4.30, gpxe can now be loaded. | The MBA version is now upgraded to v4.30, gpxe can now be loaded. | ||
+ | === Alternate strategy booting MEMDISK from GRUB === | ||
+ | |||
+ | Additional notes from a user: | ||
+ | In this instance, I could not use a 3com 3c90 to pxe boot, at all, it would just hang, even though I flashed from 4.00 to 4.30 using memdisk, I still could not pxe boot, so somehow I found myself a newer mbaflash.exe | ||
+ | This was all done on Debian. | ||
+ | |||
+ | Download a newer mba for the 3com cards (4.31) | ||
+ | curl -O ftp://ftp.hp.com/pub/softlib/software1/ob656/ob656en/3cmba431.exe | ||
+ | |||
+ | Extract with 7zip: | ||
+ | 7z x 3cmba431.exe | ||
+ | The first 32 bytes of firmware.img is just the COPYDISK header, so skip it | ||
+ | dd if=firmware.img bs=32 skip=1 of=dos.img | ||
+ | If you can boot from a disk on the machine that has the card you're trying to flash, that would be good, since you can't PXE boot in theory. | ||
+ | Hopefully you're using some Linux and you have syslinux and grub2 installed. | ||
+ | |||
+ | Add memdisk: | ||
+ | sudo cp /usr/share/syslinux/memdisk /boot/ | ||
+ | |||
+ | Add the dos diskimage you're going to be flashing from: | ||
+ | sudo mkdir /boot/images | ||
+ | sudo cp dos.img /boot/images | ||
+ | |||
+ | Update grub: | ||
+ | sudo grub-update | ||
+ | |||
+ | Now you can theoretically reboot using memdisk to boot into DOS to flash the 3c90 rom that you couldn't pxeboot from before | ||
===== Nvidia nForce ===== | ===== Nvidia nForce ===== | ||
- | Booting Windows XP/2k/etc using the WinAoE driver might not work, due to a missing service not being started. While this is not a hardware issue, nor a problem with gPXE, it is included here for informative purposes. | + | nVidia chipsets don't view all devices on the PCI bus in a direct fashion, and there's a bus driver (nvnetbus) necessary to make the network adapter appear as a common PCI Ethernet device on the bus. |
- | ==== Symptoms ==== | + | Booting Windows XP/2k/etc using the iSCSI / WinAoE driver will not work, due to a missing service (nvnetbus) not being started. While this is not a hardware issue, nor a problem with gPXE, it is included here for informative purposes. |
+ | |||
+ | ==== Symptoms (iSCSI) ==== | ||
+ | After installing Microsoft iSCSI Boot initiator and executing sanbootconf (and thus making sure the NVENETFD service is started at boot) booting the image over iSCSI will result in BSOD (0x0000007b). This happens even though the NVENETFD service is loaded during boot. | ||
+ | |||
+ | This was tested on Windows XP x64. | ||
+ | |||
+ | ==== Symptoms (AOE) ==== | ||
After installing WinAoE and making sure the NVENETFD service is started at boot, booting the image over AoE will work well until aoe32.sys is loaded. Upon loading aoe, the system will hang without any network activity. This happens even though the NVENETFD and nvnetbus services are loaded before aoe32.sys. | After installing WinAoE and making sure the NVENETFD service is started at boot, booting the image over AoE will work well until aoe32.sys is loaded. Upon loading aoe, the system will hang without any network activity. This happens even though the NVENETFD and nvnetbus services are loaded before aoe32.sys. | ||
Line 44: | Line 77: | ||
==== How to Fix ==== | ==== How to Fix ==== | ||
- | There are rumors (ref informal #etherboot chat) that another service needs to be active, but it is not known which one. Another option is to use the RIS driver for the nForce card (not verified). The simplest fix is to simply use another network adapter. | + | the nvnetbus service has to be started before NVENETFD: |
+ | |||
+ | in order to do this, the user has to be familiar with CurrentControlSet\Services Subkey Entries (http://support.microsoft.com/kb/103000) | ||
+ | and with CurrentControlSet\Control\GroupOrderList Entries (http://technet.microsoft.com/en-us/library/cc976063.aspx). | ||
+ | |||
+ | overview of the steps required to make nvnetbus being started before NVENETFD: | ||
+ | <code> | ||
+ | 1. navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NVENETFD: | ||
+ | a. remember the value of Tag (priority) and increment it by 1 | ||
+ | 2. navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvnetbus: | ||
+ | a. set Group to "NDIS". | ||
+ | b. set Start to 0. | ||
+ | c. set Tag to the original tag of NVENETFD. | ||
+ | 3. navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GroupOrderList\NDIS: | ||
+ | a. increment the number of Tags (first four bytes), and add the new tag we just added for NVENETFD at the end of the list (you're adding four more bytes at the end). | ||
+ | </code> | ||
+ | * Another option is to use the RIS driver for the nForce card (not verified). The simplest fix is to simply use another network adapter. | ||
+ | |||
+ | |||
+ | ===== Intel e1000 ===== | ||
+ | Some Intel e1000 cards appear to have problems if the gPXE image burned into their rom is larger than 64kb, even though the eeprom size is 128kb. This is problematic as the default e1000 rom images are around 70kb. It is unknown if it's really a hardware problem(the standard PXE ROM contents seem to use the whole 128kb without problems). It could also be a problem with a specific IBAUTIL.exe version. | ||
+ | |||
+ | ==== Symptoms ==== | ||
+ | IBAUTIL.exe will not complain after flashing and will report a successful flash. After the reboot gPXE does not start. | ||
+ | |||
+ | ==== How to Fix ==== | ||
+ | Get a gPXE image smaller than 64kb. You can achieve this by disabling unneeded features in src/config/general.h | ||
+ | iSCSI support, for example, is a good candidate for disabling, as it uses a lot of space. | ||
+ | |||
+ | ===== Realtek RTL8111D ===== | ||
+ | |||
+ | ==== Symptoms ==== | ||
+ | gpxe undionly driver v1.0.1 hangs when "initialising devices..." (although the chipset declares Intel UNDI v2.1 capability upon boot). | ||
+ | |||
+ | ==== How to Fix ===== | ||
+ | * Buy another NIC. Really. I tried two and both did never work reliably (link problems -- either no link detected or DHCP answers missed -- could be a firmware issue, but how do I fix the firmware when I need to boot with that NIC??). | ||
+ | * The undionly solution seems to be broken with that chipset. Use r8169 driver instead. | ||
+ | |||
+ | ===== Broadcom NetXtreme II BCM 57711 (10 Gbit) ===== | ||
+ | |||
+ | Network card in HP Proliant BL460c G6. | ||
+ | |||
+ | ==== Symptoms ==== | ||
+ | |||
+ | gPXE with undionly.**kk**pxe driver fails to access network. | ||
+ | |||
+ | ==== How to Fix ===== | ||
+ | Use undionly.**k**pxe instead. Please note that undionly.kpxe does not support cached DHCP settings, i e "set use-cached 1" will not work. |