Transplantation of rt3070 on the S3C2440 Platform
1. Download the original driver from the official website
Http://www.ralinktech.com/en/04_support/license.php? Sn = 5016
Then put the driver code in the/home/Tango/code/linux-2.6.32.2/Drivers/NET/wireless/directory
The/home/Tango/code/linux-2.6.32.2 is the linux2.6.32.2 kernel source code path.
2. Modify the MAKEFILE file in the rt3070 driver root directory
2. 1. Define the chip type and header file path and select the hardware operating platform
Chipset = 3070
C_include_path? = $ (PWD)/include
Platform = smdk
2.2 modify linux_src and cross_compile Parameters
Ifeq ($ (Platform), smdk)
# Linux_src =/home/Bhushan/itcenter/may28/linux-2.6-samsung
# Cross_compile =/usr/local/ARM/4.2.2-Eabi/usr/bin/ARM-Linux-
# The following settings are based on your location and the specific compiling path.
Linux_src =/home/Tango/code/linux-2.6.32.2
Cross_compile =/opt/friendlyarm/toolschain/4.4.3/bin/ARM-Linux-
Endif
3. In the OS/Linux/config. mk File
Definition
Chipset = 3070
Cross_compile? =/Opt/friendlyarm/toolschain/4.4.3/bin/ARM-Linux-
Modify the following two options:
# Support wpa_supplicant
Has_wpa_supplicant = y
# Support native wpasupplicant for network maganger
Has_native_wpa_supplicant_support = y
Then, make can generate the rt3070sta. Ko file.
Copy the rt2870sta. dat file to the ETC/wireless/rt2870sta directory.
If
/Home/arm443/code/linux-2.6.32.2/Drivers/NET/wireless/rt3070/OS/Linux /.. /.. /chips/rtmp_chip.c: 470: Error: Implicit declaration of function 'rt33xx _ init'
Make [2]: *** [/home/arm443/code/linux-2.6.32.2/Drivers/NET/wireless/rt3070/OS/Linux /.. /.. /chips/rtmp_chip.o] Error 1
Make [1]: *** [_ module _/home/arm443/code/linux-2.6.32.2/Drivers/NET/wireless/rt3070/OS/Linux] Error 2
Make [1]: Leaving directory '/home/arm443/code/linux-2.6.32.2'
Make: *** [Linux] Error 2
If the error occurs, block the 470 lines of code in/chips/rtmp_chip.c and compile the code.
Iwlist Scan
Ifconfig eth0 down disable wired network
Insmod rt3070sta. Ko dynamic loading rt3070 driver
Ifconfig ra0 192.168.1.231 up
Route add default GW 192.168.1.1 add Gateway
Wpa_supplicant-dwext-I ra0-C/etc/wpa_supplicant.conf-DD & connect to the wireless route. because most of them are encrypted by WPA and wpa2, The wpa_supplicant tool is used.
Create a wireless network card running directory on the Development Board terminal:
Mkdir-P/var/run/wpa_supplicant
Create the/etc/wpa_supplicant file. The file content is as follows. The SSID is the network name and the PSK is the password.
Ctrl_interface =/var/run/wpa_supplicant
Network = {
SSID = "AAA 001"
Scan_ssid = 1
Key_mgmt = WPA-EAP WPA-PSK ieee8021x none
Pairwise = TKIP CCMP
Group = ccmp tkip wep104 wep40
PSK = "aaa2007"
}
If the driver is transplanted, use ifconfig-a to view a group of ra0 devices, which is related to the wireless Nic.
If we see wlan0 instead of ra0, it may be caused by a conflict with the rt2800 driver. In the Linux kernel, we will not compile the following items into the kernel.
--- Ralink driver support │
│ <> Ralink rt2500 (USB) Support │
│ <> Ralink rt2501/rt73 (USB) Support │
│ <> Ralink rt2800 (USB) Support │
│
Reference website:
Http://blog.csdn.net/armeasy/article/details/6252389
Http://www.gentoo.org/doc/zh_cn/handbook/hb-net-wireless.xml