There are two ways to force duplex & speed on a Solaris 10 box - via the driver, and via ndd.
First, via the driver:
# cat <<EOD > /platform/`uname -i`/kernel/drv/bge.conf
adv_autoneg_cap=0 adv_1000fdx_cap=0 adv_1000hdx_cap=0
adv_100fdx_cap=1 adv_100hdx_cap=0 adv_10fdx_cap=0
adv_10hdx_cap=0;
EOD
Note that this sets all instances of bge to 100Mbit Full Duplex.
If you wish to be more selective, you can do this: