How to enable Wifi on Toshiba Satellite L675 Under 64-Bit Fedora 14
In a recent article, I discussed the fact that I recently purchased a Toshiba Satellite L675 laptop. I absolutely love the machine, but I did have two problems with it under Fedora 14 64-Bit Edition:
(1). I could not get the wifi to work at all.
(2). I could not get Google Voice to work correctly from within the Chrome web browser.
Today, I would like to announce that I have solved problem number 1, and the solution works perfectly. In fact, I am connected to the Internet right now using my new wifi connection. In this article, I will detail the exact steps that I took to solve this problem.
The Satellite L675 is a great device. Here are its specs: http://us.toshiba.com/computers/laptops/satellite/L670/L675-S7018
However, like many brand-name retail laptops on the market, it comes with Windows 7. You cannot find it at any major retailer with GNU/Linux pre-installed. I am quite adventurous, and I like to take the road less traveled. Getting GNU/Linux to work on laptops with big (and unnecessary) Windows 7 stickers is part of my mission. Getting the wifi working on my L675 was surprisingly easy. Here are the step-by-step details.
Step 1: Understand why the built-in wifi is not working.
The wifi radio card into the Satellite L675 doesn’t work out of the box under 64-bit Fedora 14 Linux because the driver for the card is not built into the Linux kernel (my current kernel version is 18.104.22.168-64.fc14.x86_64). The problem really has nothing at all to do with Fedora 14, rather it is a function of the lack of support in this and previous versions of the kernel. So, in theory, the solution that I provide here SHOULD work for any version of GNU/Linux. You can actually verify that the wifi driver is not installed as follows:
(1). Open a command prompt using gnome-terminal or some other means.
(2). Change to “root” user by issuing the su command and entering the root password.
(3). Issue this command: /sbin/lsmod | grep r8192ce_pci and hit “Enter”.
If the driver is present, the word “r8192ce_pci” will be returned in red along with some other data. If not, you will get nothing returned. The lsmod command is basically used to tell the user which modules are installed and running on the system. It is pretty certain that it will NOT be installed on your system, so we will now prepare to install it.
Step 2: Download the correct driver.
The Toshiba Satellite L675’s wifi card identifies itself to GNU/Linux as follows:
Realtek Semiconductor Co., Ltd. Device 8176 (rev 01)
A Google search using the above term revealed that the actual driver is RTL8192CE-VA4 (it may be a later version when you read this, but it should be pretty similar).
Download the file here:
(Look near the bottom of the page, and make sure that you download the Linux driver for the 2.6X Linux kernel).
Extract the driver file from the tar.gz package. You should end up with a file with a name similar to this:
We’ll come back to this file later. First, we have to prep our laptop for the installation.
Step 3: Prep the laptop for driver installation.
There are a few packages that must be installed to install the driver. If they are not present, the installation will fail. The first of these is the source package for your version of the Linux kernel.
To check if this package is installed, open up a command-line terminal exactly as before, become a root “superuser” with the su command and your root password, and issue this command:
rpm -qa | grep kernel-devel
On my system, the above command returned:
If nothing is returned on your system, you will need to install the kernel development package version that matches your current kernel version. For example, if you have kernel version kernel-22.214.171.124-64.fc14.x86_64
installed, you would need to install kernel-devel-126.96.36.199-64.fc14.x86_64. If you don’t do this, the driver installation will fail looking for the “build” directory in your kernel folder.
Note: You can verify which kernel version that you have installed by going to the top Panel. Go to Applications > System Tools > System Monitor. On the System tab, the System Monitor will tell you which version of the Linux kernel you are running. You can install the appropriate kernel-devel package from the command line by issuing this command as superuser:
yum install kernel-devel-188.8.131.52-64.fc14.x86_64
Make sure that you change the version number to match the version that YOU need.
Alternatively, you can install it using a graphical tool such as Yumex if you prefer.
The last preparation step is to add the /sbin directory to the root path. This is done to avoid having to type out the entire path to a command. For example, if you want to issue the command /sbin/lsmod, you would normally have to type out the full command as: /sbin/lsmod. However, if you add /sbin/ to the root path, you can just type lsmod and hit “Enter” to run the program. You have to do this because during the installation of the wifi driver, the installation program calls the depmod program using only the command depmod instead of /sbin/depmod. If /sbin is not part of the root path, this part of the installation program will fail, and the driver will not be installed. I don’t use the programs in the /sbin directory very much, and adding /sbin to path is a big security risk (I’ll explain more below), so I just temporarily added /sbin to my root path by issuing this command as superuser:
SECURITY NOTE: Permanently adding /sbin to your path is a HUGE SECURITY RISK and is NOT RECOMMENDED. I will not even discuss how to do it here. I recommend using the command above because it only temporarily adds /sbin to your path. Once you log out of your session, the setting is forgotten.
Read more for further step here: http://www.acrossad.org/node/83