You are not logged in.

#1 2009-04-23 12:30:55

hal2k1
Member
Registered: 2009-04-03
Posts: 8

Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

I recently purchased a new netbook, and I would very much like to run Arch Linux on it. I downloaded the Chakra installer USB image, copied it to a SDHC card using dd, and then booted from it. Everything appeared to go swimmingly during the installation except for the Wireless LAN device, it was simply not detected.

Unfortunately this appears to be a very obscure device. There is nothing like it mentioned on the Arch Linux wiki. I tried several ways to try to discover what the chip was, and to find a Linux driver for it. It appears to be a VIA chip, reported by lshw as a "VNT USB 802.11 Wireless lan adapter". It appears to use the VIA VT6656 wireless chipset. This one:

http://www.via.com.tw/en/products/netwo … ss/vt6656/

I tracked down a "bug" on Ubuntu forums about the chip that I think it is.

https://bugs.launchpad.net/ubuntu/+bug/162671

This Ubuntu bug report includes a message that, very recently, VIA have released new GPL v2 license source code for a driver for this chip. There is talk about trying to get the driver included in the Linux kernel, and other musings about the possibility of making a dkms package for it.

The source code is Version - 1.19.12, released on 02 February 2009. The source code is a 4.4 MB zip file, so it is probably too big to attach to this post.

Link to source code:
http://www.viaarena.com/default.aspx?Pa … bCatID=176

So this post is a hopeful appeal for help. I do not personally have the skills required to compile this source for myself, and thereby make a working driver for Arch from it. Would there possibly be anyone interested enough to take this on?

I would be immensely grateful if so.

Last edited by hal2k1 (2009-04-23 13:04:57)

Offline

#2 2009-04-24 15:13:02

hal2k1
Member
Registered: 2009-04-03
Posts: 8

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

I first tried the Windows driver for this VT6656 chip under ndiswrapper. That was a bust.

I read a forum post on Ubuntu that this source code package did compile correctly for Ubuntu Jaunty. The method to compile (for Ubuntu) was given as follows:

(1) Make sure that packages build-essential and checkinstall are installed.
(2) Create a new empty directory (named for what you want the driver to be called), and unzip the contents of the source code archive into that new directory.
(3) Open a terminal, and navigate to the directory.
(4) Run the command checkinstall as root.

So I tried those steps. The driver was built, and a new .deb package was created. I installed the .deb package, and rebooted ...

Hey, presto, I now have a working wireless driver under Kubuntu running. Fantastic. It seems to work fine.

It couldn't be that simple under Arch Linux, could it? Is there any equivalent automated package compiler script for Arch, by any chance?

I'd really rather be running Arch, but OTOH I have managed to at least get the netbook working using Kubuntu Jaunty.

Offline

#3 2009-04-24 15:47:41

Anonymo
Member
Registered: 2005-04-07
Posts: 427
Website

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

I have the Zotac 9300 ITX board that uses this chip and would like to know a solution as well.

@hal2k1, where did you find those Ubuntu instructions?

Offline

#4 2009-04-24 19:49:36

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

A very quick-and-dirty build attempt fails here:

$ make
set -e; for d in driver; do make -C $d ; done
make[1]: Entering directory `/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver'
make -C /lib/modules/2.6.29-ARCH/build SUBDIRS=/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver modules
make[2]: Entering directory `/usr/src/linux-2.6.29-ARCH'
  CC [M]  /home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.o
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'device_release_WPADEV':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:783: warning: assignment makes integer from pointer without a cast
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'vntwusb_found1':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:902: error: 'struct net_device' has no member named 'priv'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'device_open':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1208: error: 'struct net_device' has no member named 'priv'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'device_close':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1351: error: 'struct net_device' has no member named 'priv'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'device_dma0_tx_80211':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1510: error: 'struct net_device' has no member named 'priv'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'device_xmit':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1538: error: 'struct net_device' has no member named 'priv'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'Config_FileOperation':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1663: error: 'struct task_struct' has no member named 'fsuid'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1664: error: 'struct task_struct' has no member named 'fsgid'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1665: error: 'struct task_struct' has no member named 'fsuid'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1666: error: 'struct task_struct' has no member named 'fsgid'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1700: error: 'struct task_struct' has no member named 'fsuid'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1701: error: 'struct task_struct' has no member named 'fsgid'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'device_set_multi':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1766: error: 'struct net_device' has no member named 'priv'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'device_get_stats':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1831: error: 'struct net_device' has no member named 'priv'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'device_ioctl':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:1838: error: 'struct net_device' has no member named 'priv'
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c: In function 'vntwusb_init_module':
/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.c:2387: error: implicit declaration of function 'info'
make[3]: *** [/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver/main_usb.o] Error 1
make[2]: *** [_module_/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver] Error 2
make[2]: Leaving directory `/usr/src/linux-2.6.29-ARCH'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/home/tomk/src/VT6656_Linux_src_v1.19_12_x86/driver'
make: *** [all] Error 2

It's possible the 1.19.12 release needs a kernel older than our current 2.6.29 version.

Oh, and the Arch "automated package compiler script" is called makepkg, and it's the heart of the Arch Build System (ABS). Full details available in the wiki.

Offline

#5 2009-04-25 11:25:33

hal2k1
Member
Registered: 2009-04-03
Posts: 8

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

Anonymo wrote:

I have the Zotac 9300 ITX board that uses this chip and would like to know a solution as well.

@hal2k1, where did you find those Ubuntu instructions?

http://ubuntuforums.org/showthread.php?p=7122108

I simplified it a bit down to the essential steps.

The above post in turn references this page:
https://help.ubuntu.com/community/CompilingEasyHowTo

tomk wrote:

the Arch "automated package compiler script" is called makepkg, and it's the heart of the Arch Build System (ABS). Full details available in the wiki.

I did read the wiki for makepkg and ABS.

http://wiki.archlinux.org/index.php/Makepkg

This seemed to say that I needed to either get or compose a file called a PKGBUILD. I'm sorry, but I have no idea how to do either.

Since the root directory of the unpacked source code archive contained a file named "Makefile", I also tried plain "make" as suggested by tomk. I ran into the same errors. Hence this very thread, actually, and the request for help that it makes. It's clear to me that I am way, way out of my depth trying to get this to work on Arch.

Last edited by hal2k1 (2009-04-25 11:40:55)

Offline

#6 2009-04-26 22:36:30

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

man PKGBUILD will tell you plenty about the subject, as will this wiki page. However, none of that is of any use as long as the build fails as described. What kernel version do you have in your Kubuntu install?

Offline

#7 2009-04-26 23:39:15

hal2k1
Member
Registered: 2009-04-03
Posts: 8

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

tomk wrote:

man PKGBUILD will tell you plenty about the subject, as will this wiki page. However, none of that is of any use as long as the build fails as described. What kernel version do you have in your Kubuntu install?

I currently have a dual-boot setup installed on the netbook, with Arch KDEmod and Kubuntu 9.04 (Jaunty Jackalope). I am using the stock Kubuntu Jaunty x86 kernel. I cannot check it from here, but I believe that version is linux 2.6.28-11.(something). I'll post another message here if this information turns out to be incorrect.

I'd really rather not be running Kubuntu. Kubuntu 9.04 suffers from the same dependency issues as KDEmod at this time in the sense that one cannot have Amarok 2, Gwenview, Digikam and kipi plugins all installed at the latest versions at the same time. The hard disk doesn't spin down at all, which is bad news for battery life in a netbook use case scenario. Ubuntu/Kubuntu graphics driver version leaves a bit to be desired, also:
http://www.phoronix.com/scan.php?page=n … &px=NzIyMA

Arch is much better in most (but not all) of these areas, but at this time, with Arch, regretably, there is no driver for the wifi chip. I do use Arch on my main desktop. Its quicker.

Arch Linux is a rolling release. This means that problems such as this will get fixed on Arch in due course, but on Kubuntu ... one would have to wait until October. Not only that, but KDE 4.3 is due out in June.

PS: If it helps (I doubt it will, but you never know), I can zip up the directory in which I compiled the (working) driver in Kubuntu, including object files and the final .deb package, and also including I presume a compilation log ... and I can put the zip file on my home server for public access if you like.

Offline

#8 2009-04-27 05:51:58

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

I just wanted to know the kernel version for comparison - your answer supports the possible cause I gave above. In this case, no amount of "release-rolling" is going to help. You will just have to wait for VIA to release an updated version that works with kernel 2.6.29.

Offline

#9 2009-04-27 06:57:03

hal2k1
Member
Registered: 2009-04-03
Posts: 8

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

tomk wrote:

I just wanted to know the kernel version for comparison - your answer supports the possible cause I gave above. In this case, no amount of "release-rolling" is going to help. You will just have to wait for VIA to release an updated version that works with kernel 2.6.29.

Well, from the error report you posted, it would seem that the problem is confined to thirteen varaible or function identifiers in the source code, all of them in the file main_usb.c ... namely: device_release_WPADEV, vntwusb_found1, struct net_device, device_open, device_close, device_dma0_tx_80211, device_xmit, Config_FileOperation, struct task_struct, device_set_multi, device_get_stats, device_ioctl and vntwusb_init_module. Those identifiers which include the sting "vntwusb" in their name have to do with the VT6566 driver itself, and everything else probably has to do with the USB interface to and from the kernel proper.

So, if someone ARCH-knowledgeable and source code savvy could investigate the differences in the kernel's USB interface modules between kernel version 2.6.28-11.something and the ARCH kernel 2.6.29.something, in particular with reference to the identifiers named above, possibly it wouldn't be that difficult (for someone knowledgeable) to patch the file main_usb.c in the VT6566 dirver source code to get the driver to once again compile corretly and interface to the USB parts of the kernel?

Given that VIA have released this driver just twice in a couple of years, and given that it still works as is with Ubuntu Jaunty, I am not hopeful of getting any joy from VIA to address this issue.

Offline

#10 2009-04-27 13:53:42

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

Doesn't have to be someone ARCH-knowledgeable, as there is nothing Arch-specific going on here. It's possible someone somewhere will patch it for 2.6.29 at some stage - keep your fingers crossed, and keep googling. smile

Offline

#11 2009-05-12 14:28:30

hal2k1
Member
Registered: 2009-04-03
Posts: 8

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

Well, I thought I had a brainstorm, but I have no luck so far.

I have an image file for Chakra for a USB stick. This is the Alpha 2 version of Chakra, which can be found here:

http://chakra-project.org/download-iso.html

I remembered that this image has a 2.6.28-something kernel.

So I though I would install that, and then use pacman.conf to ignore updates to the kernel

http://wiki.archlinux.org/index.php/Pac … de_package

like so:

IgnorePkg = kernel26

No joy so far. I can't update to current because a number of packages, such as glibc and madwifi, depend on the kernel version.

Make still wont make ... it now says something about "*** No rule to make target 'driver'. Stop."

So I'm still scratching my head. Does anyone have any idea what that error message means? Perhaps I should remove the IgnorePkg line in pacman.conf, allow everything to update, then somehow revert the kernel back to a 2.6.28 version?

Offline

#12 2009-07-09 16:20:06

schuschu
Member
Registered: 2009-06-06
Posts: 17

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

Any progress on getting the vt6656 to work?

EDIT: does http://groups.google.com/group/linux.ke … b?lnk=raot mean we will see support in kernel soon?

Last edited by schuschu (2009-07-09 16:23:43)

Offline

#13 2009-07-09 21:21:48

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

Yes.

Offline

#14 2009-09-12 13:46:00

hal2k1
Member
Registered: 2009-04-03
Posts: 8

Re: Can anyone help - VIA VT6656 WLAN Controller - GPL source code package

OK, the code originally from VIA released under the GPL has now been accepted into the kernel staging area.

http://proposicion.org.ar/lurker/mindex … 00.en.html

As I understand it, it now compiles and works after a fashion. This driver will be included in Linux kernel 2.6.32.

Is there any enterprising sole who might be able one day to download code from git and have a try at a preview version for Arch?

Or should I just wait for kernel 2.6.32?

Offline

Board footer

Powered by FluxBB