NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
Davinci USB WLan
Contents
Guide to Compile and use USB WLan Adapter[edit]
We are using DLink DWL G 122 Rev C (Available in India).
If you are using 2.6.10 Kernel then you need ZHENG patch. Search the Mail Archive for ZHENG patch Download the diff from this message and apply it. http://www.mail-archive.com/davinci-linux-open-source@linux.davincidsp.com/msg01652.html
If you are using 2.6.21 Kernel, it works as it is, no patch is required but you need to enable wlan. I've tested it by directly connecting to the board, connecting through a Powered Hub (Tested with USB Flash Drive and WLan connected at the same time).
Build Instructions for Kernel[edit]
- make menuconfig
- Device Drivers -> Generic Device Options -> Enable Hot plug Firmware loading.
Make sure that USB is enabled in the host mode and jumper on the board is set to host.
- Networking -> Enable Generic 802.11 and Enable WEP/Other Schemes you might need.
- Rebuild the kernel
Building the RTL Driver[edit]
Step 1: Goto http://rt2x00.serialmonkey.com/wiki/index.php?title=Main_Page Download and extract the latest rt73 Driver Source.
Step 2: Export the KERNDIR Path
export KERNDIR=/workdir/lsp/ti-davinci/
Step 3: Export the build Path
export PATH=/opt/mv_pro_4.0/montavista/pro/devkit/arm/v5t_le/bin:/opt/mv_pro_4.0/montavista/pro/bin:$PATH
Step 4:
cd /home/ralink/rt73-cvs-2007070309/Module
Step 5:
make ARCH=arm CROSS_COMPILE=arm_v5t_le- arm
In some cases you might get a compile error in rtusb_data.c:1950 when this happens you need to fix the code skb->mac_header = skb->data;
rfmontx_80211_receive: skb->dev = pAd->net_dev; memcpy(skb_put(skb, pRxD->DataByteCnt), pHeader, pRxD->DataByteCnt); //skb_reset_mac_header(skb); //ORIGINAL skb->mac_header = skb->data; //FIX skb->pkt_type = PACKET_OTHERHOST; skb->pkt_type = PACKET_OTHERHOST; skb->protocol = htons(ETH_P_802_2); skb->ip_summed = CHECKSUM_NONE; netif_rx(skb);
Step 6: Copy the ko to the target
cp ./rt73.ko /dvevm/nfs/home/
Step 7: This is Important! Copy the rt73.bin from the build directory to /lib/firmware on the target DVEVM.
Once this is done you are all set to use the driver.
On the target[edit]
insmod rt73
Insert the USB Wlan adapter, this should be detected and the driver loaded. If this does not just reboot the EVM and insert the Adapter again.
If you get some Ep0 errors this means that the You did not apply the Zheng Patch. If you get some firmware error make sure you enabled the hotplug during kernel menuconfig.
If everything was ok then run the following command.
ifconfig wlan0 up iwlist wlan0 scan
This should list the Access points
Then you can attach to the AP using
iwconfig wlan0 essid [APNAME] key [KEY]
Using DHCP
dhcpcd -n wlan0
Using STATIC IP
ifconfig wlan0 192.168.9.50 netmask 255.255.255.0 broadcast 192.168.9.1 up
Best of Luck.