Hi, I asked this question already in the Network forum some time ago but did not get an answer there. Therefor I trie again here with some more background information.
We use WANBOOT to install Solaris 10 on our Sun and Fujitsu Siemens machines. All ports on our network switches are configured for 100 MBit Full Duplex without AutoNegotiation. The default configuration for network adapters in Sun machines is AutoNegotiation on. Without explicitly configuring the network adapter to 100 MB Full Duplex this combination results in a connection with 100 MBit Half Duplex. In our installation procedure we explicitly configure all network adapter used to 100 MBit Full Duplex using ndd commands to get a working network configuration (in the begin script and after the installation in an init script in /etc/rcS.d). So this is not an issue there. But while downloading the root filesystem image by the WANBOOT binary we can not use ndd commands (and also not use the .conf configuration files) to configure the network adapter to 100 MBit Full Duplex. In most of the installations this only resulst in a very bad network performance while downloading the root filesystem image but in some cases the download of the root filesystem fails. Therefor we want to set the network adapter used for the installation to 100 MBit FullDuplex in the OBP. The problem now is : How can we configure the network adapter to 100 MBit Full Duplex from within the OBP? Until now I only found working solutions for two adapter types: For eri adapter the sentence probe-all install-console banner cd /pci at 9,700000/network at 1,1 apply duplex-mode=full /pci at 8,600000/network apply transfer-speed=100 /pci at 9,700000/network at 1,1 in the nvramrc (and setting use-nvramrc? to true) works. For fjgi adapters (Gigabit Adapter from Fujitsu Siemens) the sentence probe-all install-console banner cd <path_to_the_network_adapter> transfer-speed=100 in the nvramrc (and setting use-nvramrc? to true) works How can I do the same for qfe, hme, ce, bge, and ge adapters? Digging around in sunsolve I found some documents about this, e.g. ** Forcing Network Speed Between 10Mbps and 100Mb (12 Mar 1996) http://sunsolve.sun.com/search/document.do?assetkey=1-9-13122-1 *** Forcing an Ethernet network boot client to boot in full duplex or half duplex mode (11 Nov 2005) http://sunsolve.sun.com/search/document.do?assetkey=1-9-45407-1 *** JumpStart[TM]: How to disable ce Ethernet autonegotiation for boot net (20 Oct 2005) http://sunsolve.sun.com/search/document.do?assetkey=1-25-72647-1 but none of the methods mentioned there seems to work. Also the procedures mentioned in the documentation for the adapters seem not work. And the comment in the source for the bge driver on opensolaris.org is a little bit confusing for me because the 'transfer-speed' property is mentioned in the docs on sunsolve listed above (but I don't know if it is only valid for bge adapters or also for other adapter tpyes and I did not find the source code for other network drivers to check this): 114 ######################################################################### 115 # 116 # OBP's device driver exports methods to set the link speed explicity, 117 # which then pass the information to the Solaris driver through the 118 # 'transfer-speed' property. It therefore SHOULDN'T be set here, but 119 # is documented for completeness. If the 'transfer-speed' property is 120 # set to 10, 100, or 1000, the link will be set to the selected speed, 121 # and autonegotiation ENABLED but restricted to the specified speed. 122 # The correct duplex setting will be determined by autonegotiation. 123 # 124 # This property, if set, overrides and alters the settings of the adv_* 125 # parameters corresponding to the properties above. 126 # 127 # transfer-speed = 1000; 129 ######################################################################### 130 # 131 # As a third alternative, the following two properties can be set to 132 # force the link speed/duplex setting instead. Doing so will override 133 # and alter the settings of the adv_* parameters corresponding to the 134 # properties above, and take precedence over all other means of setting 135 # the speed/duplex at boot time. 136 # 137 # Autonegotiation will be DISABLED if EITHER of these properties is set, 138 # therefore BOTH properties should be set explicity if either one is. 139 # 'speed' may be set to 10, 100 or 1000, while 'full-duplex' may be 0 or 1. 140 # 141 # See the warning above about the potential for misconfiguration when 142 # autonegotiation is disabled. Defining these properties could leave your 143 # system configured so that the network will not work at all after reboot, 144 # requiring manual intervention and further reboots to recover! 145 # 146 # speed = 100; 147 # full-duplex = 0; 148 # 149 ######################################################################### After reading the source code for the wanboot binary on opensolaris.org at http://src.opensolaris.org/source/xref/netvirt/usr/src/psm/stand/boot/sparc/common/wanboot.c I assume that the wanboot binary does not change the configuration of thenetwork adapter and just uses the current settings. This assumption may be false - I'm not that familar with programming in C or C++. So again the only option I see is to configure the network adapter to 100 MBit FullDuplex from within the OBP. regards Bernd This message posted from opensolaris.org
