Nov 07
smachadoHardware, Linux
This works with Ubuntu 10.10 and a usb wifi adapter with the Ralink rt2870 chipset.
The driver released with Ubuntu kernel 2.6.35-22-generic is version 2.1.0.0 and doesn’t work…
I downloaded version 2.4.0.1 from Ralink web site and compiled it the following way.
cd /usr/src
tar xvfj /tmp/2010_0709_RT2870_Linux_STA_v2.4.0.1.tar.bz2
cd 2010_0709_RT2870_Linux_STA_v2.4.0.1/
sed -i.bak "s/HAS_WPA_SUPPLICANT=n/HAS_WPA_SUPPLICANT=y/" os/linux/config.mk
sed -i.bak "s/HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n/HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y/" os/linux/config.mk
Changed file include/os/rt_linux.h line 1077 to:
#define RTUSB_URB_ALLOC_BUFFER(pUsb_Dev, BufSize, pDma_addr) usb_alloc_coherent(pUsb_Dev, BufSize, GFP_ATOMIC, pDma_addr)
And line 1078 to:
#define RTUSB_URB_FREE_BUFFER(pUsb_Dev, BufSize, pTransferBuf, Dma_addr) usb_free_coherent(pUsb_Dev, BufSize, pTransferBuf, Dma_addr)
Then compiled it:
make
Removed the Ubuntu released driver out of the way:
mv /lib/modules/`uname -r`/kernel/drivers/staging/rt2870 ~/.rt2870.bak
And installed the new one:
make install
Also removed the rt2800 module out of the way:
echo 'blacklist rt2800usb' >> /etc/modprobe.d/blacklist.conf
And rebooted my pc.
After the system booted up the new driver was loaded:
# modinfo rt2870sta | grep -i version
version: 2.4.0.0
srcversion: 5598BFE60F8B720D8D64062
vermagic: 2.6.35-22-generic SMP mod_unload modversions 686
Also I could connect to my wireless network at 130Mb/s (from the output of nm-tool).
Sep 04
smachadoHardware, Windows
I got a new laptop to work with and noticed that if I plugged a network cable into it to connect to certain networks sometimes it worked sometimes it didn’t – I couldn’t even see a link light at the socket.
I thought this would be a driver issue of the laptop so I was ready to find a new driver for this network card.
So I opened Control Panel and System Properties. Then I clicked the Hardware tab and opened Device Manager.
At Device Manager I expanded Network Adapters tab and selected the ethernet controller of my laptop. I right clicked it and opened the properties window. My initial purpose was to find the driver version but I started looking at the settings.
So I selected the Advanced tab and eventually Speed & Duplex. Wait.. why is it set to 100 Mb Full? Hummm…. let me change that to Auto. Bingo… After applying the change I got a 1.0Gbs connection…
Dec 27
SergioHardware, Linux
Today I had to install CentOS 64 bit on a desktop built on an ASUS P5N32-E SLI motherboard. This motherboard features a nForce 680i SLI chipset and other fancy stuff that are likely to cause trouble to Linux distributions, specially old versions.
I decided to go for CentOS 4.2 just because I had it available on a DVD from a magazine, it was 64-bit and as an entreprise distribution it should be stable.
Installation was straightforward although I had to specify the drivers to use for hard disk (sata_nv) just before it started.
Upon login into my new installation I noticed I didn’t had any ethernet interfaces configured. This motherboard has two gigabit ethernet interfaces. They should use forcedeth driver from nvidia but they’re not working. Loading forcedeth manually didn’t do it . Also using options msi=0 msix=0 also didn’t do it.
So I decided to download the most recent kernel package for CentOS 4 which is kernel-smp-2.6.9-78.0.8.EL.x86_64.rpm. I downloaded from another computer to an usb stick and copied over to my CentOS 4 host. Then as root I executed the command: rpm -i kernel-smp-2.6.9-78.0.8.EL.x86_64.rpm and rebooted.
After booting using the new kernel the system was able to find my ethernet devices. Aditionally it also found my onboard sound card.
After configuring them I was able to get network on my new system.