- Feb 9, 2010
DISCLAIMER: Nobody -- and I do mean nobody -- is responsible for a bricked device except for the person attempting this modification. Do not contact me to complain that you borked your Slide by not following instructions.
All credit for this discovery goes to knowmercymod
Certain Espresso owners running CM6 (or CM6 derivatives) may have discovered that their wifi functionality doesn't work as expected. The issue is well-documented on the CM6 issue tracker [issue 2153] and the cause of the problem is known, but there is no source-based solution at the moment. As such, there's no easy way to distribute a fix for working wifi within a packaged CM6 zip.
The issue relates to missing GPL'd drivers for the MSM7227 chipset from Qualcomm that is used in several devices, most notably the HTC Espresso, Legend and Aria. But due to small versioning differences in certain aspects of this chipset, some devices have functioning wifi using the generic open-source SDIO modules and others do not. The permanent solution for this issue is cajoling HTC into releasing this code -- this process is already underway -- but, in the meantime, this thread will serve to provide a temporary solution that is 100% effective.
So let's get started...
Step 1: Downloading the necessary files
Attached to this post are the two files necessary to fix this issue:
They both come from *stock* Espresso -- the code currently in use in the CM6 repository does not generate fully-functional versions of these modules.
Download the "modules.zip" file to your PC and extract the two files to an easily accessible location.
Step 2: Backing up the corresponding files on your device [optional]
This optional step will walk you through backing up the existing files on your device. This is completely unnecessary as those files can simply be restored by re-flashing a CM6 zip, but I figured that people should get in the habit of backing up stock files before modifying their device.
To do so, execute the following two commands -- both can be done while the phone is booted up or in recovery (if you're in ClockworkMod recovery, just make sure your system partition is mounted -- partitions->mount /system):
ADB PULL /system/lib/modules/tiwlan_drv.ko [DESTINATION] ADB PULL /system/lib/modules/sdio.ko [DESTINATION]
To use my PC as an example, I would connect my Slide via USB and enter the following commands on the command line:
ADB PULL /system/lib/modules/tiwlan_drv.ko ~/Documents/Android/Backup ADB PULL /system/lib/modules/sdio.ko ~/Documents/Android/Backup
Step 3: Replacing the files on your device
So now we're ready to make the actual modification. First step: boot into recovery. My preferred method is to use the ADB REBOOT RECOVERY command.
Once you're in ClockworkMod Recovery, please make sure system is mounted -- partitions->mount /system
Then you would simply execute these two commands:
ADB PUSH [SOURCE]/tiwlan_drv.ko /system/lib/modules/tiwlan_drv.ko ADB PUSH [SOURCE]/sdio.ko /system/lib/modules/sdio.ko
To use my PC as an example, I would enter the following commands on the command line:
ADB PUSH ~/Downloads/modules/tiwlan_drv.ko /system/lib/modules/tiwlan_drv.ko ADB PUSH ~/Downloads/modules/sdio.ko /system/lib/modules/sdio.ko
Once you've pushed these files, simply reboot your device and you're done! You should no longer have any issues with your wifi connectivity, including (but not limited to) full wifi tether functionality when using the Wireless Tether 2.0.5 application.
And, again, all credit for this temporary fix goes to knowmercymod (who is far too humble to post this himself).