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

Reply via email to