This is based on information found here:
To connect your WM6 device via usb to your linux pc do the following:
On your phone enable internet sharing via usb but do not connect the usb cable yet.
Run the following commands..you may need to install "svn" for this to work:
*note* If you run a kernel 2.6.31 or higher you will need to run the following patch before running make (provided by LordLanden):
wget -qO- http://sprunge.us/BSjF | patch
svn co https://synce.svn.sourceforge.net/svnroot/synce/trunk/usb-rndis-lite cd usb-rndis-lite/ make sudo ./clean.sh sudo make install
BOOTPROTO='dhcp' BROADCAST='' ETHTOOL_OPTIONS='' IPADDR='' MTU='1460' MRU='1500' NAME='' PEERDNS=no NETMASK='' NETWORK='' REMOTE_IPADDR='' STARTMODE='hotplug' USERCONTROL='no' _nm_name='static-0'
Now plug the phone into the usb cable going to the pc and if you do a "dmesg" you should see the following (or something similar):
ohci_hcd 0000:02:02.0: wakeup
usb 3-2: new full speed USB device using ohci_hcd and address 4
usb 3-2: new device found, idVendor=0bb4, idProduct=0303
usb 3-2: new device strings: Mfr=1, Product=2, SerialNumber=3
usb 3-2: Product: Generic RNDIS
usb 3-2: Manufacturer: HTC
usb 3-2: SerialNumber: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
usb 3-2: configuration #1 chosen from 1 choice
rndis0: register 'rndis_host' at usb-0000:02:02.0-2, RNDIS device, xx:xx:xx:xx:xx:xx
and if you do an ifconfig you should have a new rndis0 device:
rndis0 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx
inet addr:192.168.0.102 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: 2002:48fa:7644:19:8200:60ff:fe0f:e800/64 Scope:Global
inet6 addr: fec0::19:8200:60ff:fe0f:e800/64 Scope:Site
inet6 addr: fe80::8200:60ff:fe0f:e800/64 Scope:Link
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1460 Metric:1
RX packets:761 errors:737 dropped:0 overruns:0 frame:0
TX packets:729 errors:0 dropped:0 overruns:0 carrier:0
RX bytes:405771 (396.2 Kb) TX bytes:120796 (117.9 Kb)
The rndis0 device will exist both when internet sharing is enabled via usb and when it is NOT....here is how it works:
If internet sharing IS enabled via usb you have access to the internet and will get an IP...default route will be set.
If internet sharing is NOT enabled via usb then the rndis0 device will exist and can be used by programs such as syncE to manage your contact list or transfer files but you will not have internet access (from the phone) and more than likely you will not get an ip address auto assigned (it may keep the ip it used last).
I know this works as I'm connected at the moment via the rndis0 device. I find it to be more responsive than the connection via bluetooth. Hope this helps someone.
These instructions were specific for Opensuse but about the only thing you should have to change is making sure you have kernel-source installed so you can compile the module needed and you may have to define the rndis0 device somewhere other than /etc/sysconfig/network.