Patching and Building The VT6655 Driver On Ubuntu 7.10

Posted on March 7, 2008 by Forest
Filed Under General, Linux

Please note: A new version of this driver is available that does not require patching. This driver is also GPL-licensed, making it suitable for eventual inclusion in the kernel. These instructions are now obsolete. Download the updated driver source from Via Arena.

I was contacted by Chris Thielen the other day. He came through on what I hadn’t had time to get to yet: a patch for the VT6655 driver that allows it to be used on Ubuntu 7.10.

Chris’ patch is available here:

http://www.logicsupply.com/pub/vt6655.gutsy.patch

Building the driver is a very similar process to the one described previously for the VT6656. You should follow the instructions from my previous post, but use the following commands to fetch, unpack, patch, and build the driver source:

$ mkdir vt6655
$ cd vt6655
$ wget http://www.viaarena.com/Driver/vt6655-linux-x86-src-v117.rar
$ unrar x vt6655-linux-x86-src-v117.rar
$ cd VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget
$ wget -nv -O- http://www.logicsupply.com/pub/vt6655.gutsy.patch | patch -p3
10:28:36 URL:http://www.logicsupply.com/pub/vt6655.gutsy.patch [11736/11736] -> "-" [1]
patching file driver/device.h
patching file driver/device_main.c
patching file driver/dpc.c
patching file driver/iwctl.c
patching file driver/skbcompat.h
patching file driver/wmgr.c
patching file driver/wpactl.c
patching file include/device_cfg.h
$ make
set -e; for d in driver utility; do make -C $d ; done
make[1]: Entering directory `/home/forest.bond/vt6655/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/driver'
make -C /lib/modules/2.6.22-14-generic/build SUBDIRS=/home/forest.bond/vt6655/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/driver modules
make[2]: Entering directory `/usr/src/linux-headers-2.6.22-14-generic'
  CC [M]  /home/forest.bond/vt6655/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/driver/device_main.o
[...]
make[1]: Leaving directory `/home/forest.bond/vt6655/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/driver'
make[1]: Entering directory `/home/forest.bond/vt6655/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/utility'
cc -O2 -Wall -Wstrict-prototypes -Winline -pipe -DLINUX  -I../include -I/lib/modules/2.6.22-14-generic/build/include  -c -o wetctl.o wetctl.c
cc -o wetctl wetctl.o
make[1]: Leaving directory `/home/forest.bond/vt6655/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/utility'

Note that both the driver and the wetctl utility, a small program that can be used to gather status information from the running driver. Much of the functionality provided by wetctl is also provided by standard tools like iwconfig and iwlist.

Thanks Chris for getting this together!

Comments

8 Responses to “Patching and Building The VT6655 Driver On Ubuntu 7.10”

  1. max on March 26th, 2008 12:28 pm

    Hi, I tried it but still doesn’t work on gutsy. After the reboot the eth1 interface is not present….

    I tried also to follow what in the linux.txt files but nothing….

  2. lyra on March 26th, 2008 11:37 pm

    trying it on debian and getting this error:

    # make
    set -e; for d in driver utility; do make -C $d ; done
    make[1]: Entering directory `/usr/src/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/driver’
    make -C /lib/modules/2.6.18-6-486/build SUBDIRS=/usr/src/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/driver modules
    make[2]: Entering directory `/usr/src/linux-headers-2.6.18-6-486′
    CC [M] /usr/src/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/driver/device_main.o
    /usr/src/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/driver/device_main.c:170: error: expected ‘)’ before string constant
    /usr/src/VT6655-Linux-117-src-CPUPlatform-SAE/VT6655-Linux-117-src-CPUPlatform-SAE/viawget/driver/device_main.c:175: error: expected ‘)’ before string constant

  3. Forest on March 27th, 2008 9:25 am

    Hi Lyra,

    Debian != Ubuntu 7.10 ;)

    The patch for the driver is kernel version specific. Unfortunately, there isn’t enough time to create a patch for every kernel version out there.

    If you are dissatisfied with this situation, please do let VIA know. The fact that a patch is necessary is a direct consequence of the fact that VIA doesn’t include an appropriate license with the driver source code, making it impossible to legally redistribute it. With an adequate license, the open-source community could take the driver code and merge it into the kernel tree, where it could be maintained by open-source developers.

  4. Forest on March 27th, 2008 9:28 am

    Hi Max,

    Does the driver build and load correctly? Do you see any error messages when you insmod the module?

  5. lyra on March 27th, 2008 9:49 am

    yes… I know that debian != ubuntu. But I got those errors even before patching. I was just wondering if they are something obvious (for a dev at least).
    I have the vt6655 working with ndiswrapper, but ndiswrapper doesnt allow me put the card in master mode. you patch works on ubuntu server?

  6. Forest on March 27th, 2008 10:20 am

    With the patch applied, the driver passed some simple tests. I cannot confirm that all features work correctly.

    The errors you are seeing are due to API differences between the kernel version the driver was written to use, and your current kernel version. This is precisely the reason a patch is necessary at all. For the driver to compile correctly, it would need to be patched.

  7. VT6655 Patch For Ubuntu 8.04 (Hardy Heron) : Logic Supply Blog on May 29th, 2008 1:39 pm

    [...] See my previous post on for help building the driver. [...]

  8. Forest on March 19th, 2009 4:20 pm

    Update: new driver source available is GPL-licensed and does not require patching.

Leave a Reply