Solaris 10 Speed and Duplex Settings: bge

Evening,

I am attempting to change the speed and duplex settings on a single interface on a bge card on an m3000 SPARC server. Currently the settings are as follows:

bge0            link: up        speed: 1000  Mbps       duplex: full
bge1            link: up        speed: 100   Mbps       duplex: half
bge2            link: up        speed: 1000  Mbps       duplex: full
bge3            link: unknown   speed: 0     Mbps       duplex: unknown
nxge0           link: down      speed: 1000  Mbps       duplex: full
nxge1           link: up        speed: 100   Mbps       duplex: full
nxge2           link: up        speed: 1000  Mbps       duplex: full
nxge3           link: down      speed: 1000  Mbps       duplex: full

I would like to change the bge1 interface to full duplex permanently. I read that I could make changes to the /platform/sun4u/kernel/drv/bge.conf file to make this permanent, however all of our attempts have not yielded the expected results.

Additional Information:

root@dssbfw101a.myhughesnet.com$ grep bge /etc/path_to_inst
"/pci@0,600000/pci@0/pci@1/pci@0/network@4" 0 "bge"
"/pci@0,600000/pci@0/pci@1/pci@0/network@4,1" 1 "bge"
"/pci@0,600000/pci@0/pci@2/pci@0/network@4" 2 "bge"
"/pci@0,600000/pci@0/pci@2/pci@0/network@4,1" 3 "bge"

Any assistance would be greatly appreciated.

if you use autoneg on your switch (and the switch is capable of 1000full) the interface should use the desired settings!

---------- Post updated at 21:36 ---------- Previous update was at 21:36 ----------

To keep the forums high quality for all users, please take the time to format your posts correctly.

First of all, use Code Tags when you post any code or data samples so others can easily read your code. You can easily do this by highlighting your code and then clicking on the # in the editing menu. (You can also type code tags

```text
 and 
```

by hand.)

Second, avoid adding color or different fonts and font size to your posts. Selective use of color to highlight a single word or phrase can be useful at times, but using color, in general, makes the forums harder to read, especially bright colors like red.

Third, be careful when you cut-and-paste, edit any odd characters and make sure all links are working property.

Thank You.

The UNIX and Linux Forums

Thanks for the quick reply, I will be sure to tag my code in the future.

My team does not have access to change the config on the switch (which is currently set to 100 full). In the mean time I have created a startup script in /etc/rc2.d/ to make the changes, though I would still like to know how to make it work with the conifg file.

would be helpfull if you post the config file and what you've changed...

Here is the code located in the /platform/sun4u/kernel/drv/bge.conf

bge-rx-rings            = 1;
bge-tx-rings            = 1;
# interface bge0
name="bge" parent="/pci@0,600000/pci@0/pci@1/pci@0" unit-address="4" \
adv_autoneg_cap=0 adv_1000fdx_cap=1 adv_1000hdx_cap=0 \
adv_100fdx_cap=0 adv_100hdx_cap=0 adv_100T4_cap=0 adv_10fdx_cap=0 \
adv_10hdx_cap=0;

# interface bge1
name="bge" parent="/pci@0,600000/pci@0/pci@1/pci@0" unit-address="4,1" \
adv_autoneg_cap=0 adv_1000fdx_cap=0 adv_1000hdx_cap=0 \
adv_100fdx_cap=1 adv_100hdx_cap=0 adv_100T4_cap=0 adv_10fdx_cap=0 \
adv_10hdx_cap=0;

# interface bge2
name="bge" parent="/pci@0,600000/pci@0/pci@2/pci@0" unit-address="4" \
adv_autoneg_cap=0 adv_1000fdx_cap=1 adv_1000hdx_cap=0 \
adv_100fdx_cap=0 adv_100hdx_cap=0 adv_100T4_cap=0 adv_10fdx_cap=0 \
adv_10hdx_cap=0;

# interface bge3
name="bge" parent="/pci@0,600000/pci@0/pci@2/pci@0" unit-address="4,1" \
adv_autoneg_cap=0 adv_1000fdx_cap=1 adv_1000hdx_cap=0 \
adv_100fdx_cap=0 adv_100hdx_cap=0 adv_100T4_cap=0 adv_10fdx_cap=0 \
adv_10hdx_cap=0;

and where are YOUR changes in the file? do you have a backup of the original file before you make any changes?

What I posted before are my changes, the original file includes only commented out material and the following:

#########################################################################
#
# The property below represents the list of subsystem vendor/device pairs
# with which driver operation is supported.  This list will be updated and
# extended as new subsystems are validated ...
#
bge-known-subsystems    = 0x108e1647,
                          0x108e1648,
                          0x108e16a7,
                          0x108e16a8,
                          0x17c20010,
                          0x17341013,
                          0x101402a6,
                          0x10f12885,
                          0x17c20020,
                          0x10b71006,
                          0x10280109,
                          0x1028865d,
                          0x0e11005a,
                          0x103c12bc;
#########################################################################

i would try this:

remove all interfaces from the config file which are ok in speed and duplex setting (bge0, 2 and 3). make the following entry to the file:

# interface bge1
name="bge" parent="/pci@0,600000/pci@0/pci@1/pci@0" unit-address="4,1" \
adv_autoneg_cap=0 adv_1000fdx_cap=1 adv_1000hdx_cap=0 \
adv_100fdx_cap=0 adv_100hdx_cap=0 adv_100T4_cap=0 adv_10fdx_cap=0 \
adv_10hdx_cap=0;

after the changes do a:

# svcadm restart network/physical

or

# init 6

Once this change is made and the interfaces are restarted the dladm show-dev returns the following:

bge0            link: up        speed: 1000  Mbps       duplex: full
bge1            link: down      speed: 0     Mbps       duplex: unknown
bge2            link: up        speed: 1000  Mbps       duplex: full
bge3            link: unknown   speed: 0     Mbps       duplex: unknown
nxge0           link: up        speed: 1000  Mbps       duplex: full
nxge1           link: up        speed: 100   Mbps       duplex: full
nxge2           link: up        speed: 1000  Mbps       duplex: full
nxge3           link: unknown   speed: 1000  Mbps       duplex: full

are the old entries still inside the file?

#########################################################################
#
# The property below represents the list of subsystem vendor/device pairs
# with which driver operation is supported.  This list will be updated and
# extended as new subsystems are validated ...
#
bge-known-subsystems    = 0x108e1647,
                          0x108e1648,
                          0x108e16a7,
                          0x108e16a8,
                          0x17c20010,
                          0x17341013,
                          0x101402a6,
                          0x10f12885,
                          0x17c20020,
                          0x10b71006,
                          0x10280109,
                          0x1028865d,
                          0x0e11005a,
                          0x103c12bc;
#########################################################################
bge-rx-rings            = 1;
bge-tx-rings            = 1;
# interface bge1
name="bge" parent="/pci@0,600000/pci@0/pci@1/pci@0" unit-address="4,1" \
adv_autoneg_cap=0 adv_1000fdx_cap=1 adv_1000hdx_cap=0 \
adv_100fdx_cap=0 adv_100hdx_cap=0 adv_100T4_cap=0 adv_10fdx_cap=0 \
adv_10hdx_cap=0;

if this doesn't work, the "parent" settings are maybe in a wrong format...

edit:
one other idea. delete the "backslash" and try to use one long line...

edit2:
also if the switch is on 100hdx setting without autoneg, your settings won't work and the port goes down... maybe you should have a drink with one of the network guys ;).

No, they have been removed.

i updated my last post! <--

Sorry missed that, I'm pretty sure its option 3 on your list. Unfortunately I don't have access to the switch... I'll see if I can pin down one of the network guys. Thanks for all the help btw :slight_smile:

your welcome and i'm out... have a good night.