On Jan 10, 2007, at 11:48 AM, Bernd Schemmer wrote: > 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. >
This is the typical case today. If one side of the network link is set to full, and the other is set to auto, the auto side will always go to 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 > _______________________________________________ > install-discuss mailing list > install-discuss at opensolaris.org > http://opensolaris.org/mailman/listinfo/install-discuss Instead of knocking yourself out trying to work around a hard-coded setting on the switch, why not try to get the ports to 'auto-100' with 'auto-duplex' as well? I haven't seen modern OSs have problems with auto-negotiation. I think you'll find that things will 'just work' if you turn on auto- negotiation. ----- Gregory Shaw, IT Architect Phone: (303) 272-8817 ITCTO Group, Sun Microsystems Inc. 500 Eldorado Blvd, UBRM02-157 greg.shaw at sun.com (work) Broomfield, CO 80021 shaw at fmsoft.com (home) "When Microsoft writes an application for Linux, I've Won." - Linus Torvalds -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/install-discuss/attachments/20070110/eb7fab03/attachment.html>
