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.
Wireless USB Network
Wireless USB Network[edit]
Wireless USB network adapters provide WiFi capability to any computing device possessing a standard USB port. USB controller on Davinci supports high-speed USB peripheral mode and high-speed limited host-mode operations. For more information about the USB controller on DM6446 see sprue35. The procedure described here has been tested on TMS320DM6446 and TMS320DM355 EVM’s using the BelkinUSB Wifi adapter (Part # F5D7050) based on ZyDAS/Atheros chipset.
Kernel Config[edit]
- Download the latest DVSDK 1.3 from http://www.ti.com/dvevmupdates. Follow the Getting Started Guide to install the DVSDK.
- Change to your kernel build directory.
Host# cd ~dvsdk_1.3/lsp/ti-davinci
- Configure LSP for DM355 or DM6446
Host # make davinci_dm355_evm_defconfig /* For DM355 */ OR Host # make davinci_dm644x_defconfig /* For DM6446 */
- Launch kernel config and enable the RADIO support
Host # make menuconfig Enable <*> Device Driver -> Networking Support -> Wireless LAN (non-hamradio) -> Wireless LAN Driver
In addition to this, you may need to change some networking option like IP Multi-casting, IP advance router etc depending on your requirements.
- Finally build the kernel
Host # make uImage
Compiling ZyDAS/Atheros Driver[edit]
- Download driver from http://zd1211.wiki.sourceforge.net/VendorDriver
- Extact driver source file
Host # tar zxf ZD1211LnxDrv_2_22_0_0.tar.gz
- Modify Makefile to point the correct LSP path and tool chain, mainly you need to modify
HOST = /opt/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le- KDIR := /home/user/dvsdk_1_30/lsp/ti_davinci
- Finally build the module
Host # make ZD1211REV_B=1
Testing[edit]
- copy zd1211b.ko on the target.
- Install the driver
target # insmod zd1211b.ko
- Connect Wifi adapter to Davinci USB port (Note: If you are using DM6446 then make sure your J7 jumper on the EVM is set to USB Host mode). The driver will output the below message on success
target# dmesg _____ ____ _ ____ |__ / _| _ \ / \ / ___| / / | | | | | |/ _ \ \___ \ / /| |_| | |_| / ___ \ ___) | /____\__, |____/_/ \_\____/ |___/ ZD1211B - version 2.22.0.0-development usbcore: registered new driver zd1211b usb 1-1: new high speed USB device using musb_hdrc and address 3 vendor_id = 050d product_id = 705c USB 2.0 Host Release Ver = 4810 EEPORM Ver = 4810 Finsih download Firmware. Ready to reboot PA type: 0 PHYNEWLayout = 1 AiroHa AL2230RF OverWrite CR47 = 0x1C zd1205_config: EEP(HWFeature)=0x100 AllowedChannel = 000107ff Region:16
- To use the driver you first need to activate the network interface. To do that execute ifup command on EVM.
Target# ifconfig eth1 up
- Now scan for available interface via
# iwlist scan root@156.117.94.228:/opt# iwlist scan lo Interface doesn't support scanning. eth0 Interface doesn't support scanning. sit0 Interface doesn't support scanning. eth1 Scan completed : Cell 02 - Address: 00:0D:88:2B:CA:15 ESSID:"usbtest" Mode:Master Frequency:2.437 GHz (Channel 6) Extra:SignalStrength=100 %,LinkQuality:76% Encryption key:off Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s Extra:bcn_int=100
- Set the essid
# root@156.117.94.228:/opt# iwconfig eth1 essid usbtest # iwconfig lo no wireless extensions. eth0 no wireless extensions. sit0 no wireless extensions. eth1 802.11b/g NIC ESSID:"usbtest" Mode:Managed Frequency=2.437 GHz Access Point: 00:0D:88:2B:CA:15 Bit Rate:0 kb/s Retry:on RTS thr=9999 B Fragment thr:off Encryption key:off Power Management:off Link Quality:56/100 Signal level:64/100 Noise level:0/100 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:3 Missed beacon:0
- Get the IP address via DHCP
# dhcpcd eth1
In addition to this, you can edit /etc/network/interface file to configure the wireless interface on boot.