caiwang / board2ihost

0 stars 0 forks source link

rock pro wifi module rtl8723au #43

Open caiwang opened 9 years ago

caiwang commented 9 years ago

Issue by caiwang Tuesday Mar 03, 2015 at 04:53 GMT Originally opened as https://github.com/caiwang/ihostsrc/issues/43


https://github.com/lwfinger/rtl8723au/issues/43

Probably not. The version of the driver that supports nl80211 commands is from the current kernel, and that code is what constitutes the kernel-version branch of this repo. It requires kernel 3.15, but it may build with 3.14.

I have no plans to update the main branch, and the kernel-version will just get the latest code copied from the kernel source. As the driver is now in the kernel, and that version supports cfg80211, I see no purpose in maintaining an older version. If you cannot use a new kernel, but want the latest driver for the rtl8723au, you will need to do the backport yourself. The Backports project will show you some of the things that need to be done.

caiwang commented 9 years ago

Comment by caiwang Wednesday Mar 04, 2015 at 03:25 GMT


test on kernel 3.18 rock ubuntu image

Using iw to add a virtual wireless interface http://superuser.com/questions/592296/using-iw-to-add-a-virtual-wireless-interface-getting-the-error-no-such-device

root@radxa:/# iw dev wlan0 interface add wlan2 type managed command failed: Operation not supported (-95) root@radxa:/# iw phy phy0 interface add wlan2 type managed command failed: Operation not supported (-95) root@radxa:/# iw phy phy0 interface add wlan2 type monitor command failed: Operation not supported (-95) root@radxa:/# iw phy phy0 interface add wlan2 type Usage: iw [options] phy interface add type [mesh_id ] [4addr on|off] [flags *]

Add a new virtual interface with the given configuration. Valid interface types are: managed, ibss, monitor, mesh, wds.

The flags are only used for monitor interfaces, valid flags are: none: no special flags fcsfail: show frames with FCS errors control: show control frames otherbss: show frames from other BSSes cook: use cooked mode

The mesh_id is used only for mesh mode.

Options: --debug enable netlink debugging root@radxa:/#

root@radxa:/# iw --debug phy phy0 interface add wlan2 type monitor -- Debug: Sent Message: -------------------------- BEGIN NETLINK MESSAGE --------------------------- [HEADER] 16 octets .nlmsg_len = 48 .nlmsg_type = 20 <0x14> .nlmsg_flags = 5 <REQUEST,ACK> .nlmsg_seq = 1425439549 .nlmsg_pid = 1400 [PAYLOAD] 32 octets 07 00 00 00 08 00 01 00 00 00 00 00 0a 00 04 00 77 6c ................wl 61 6e 32 00 00 00 08 00 05 00 06 00 00 00 an2........... --------------------------- END NETLINK MESSAGE --------------------------- -- Debug: Received Message: -------------------------- BEGIN NETLINK MESSAGE --------------------------- [HEADER] 16 octets .nlmsg_len = 68 .nlmsg_type = 2 .nlmsg_flags = 0 <> .nlmsg_seq = 1425439549 .nlmsg_pid = 1400 [ERRORMSG] 20 octets .error = -95 "Operation not supported" [ORIGINAL MESSAGE] 16 octets .nlmsg_len = 16 .nlmsg_type = 20 <0x14> .nlmsg_flags = 5 <REQUEST,ACK> .nlmsg_seq = 1425439549 .nlmsg_pid = 1400 --------------------------- END NETLINK MESSAGE --------------------------- command failed: Operation not supported (-95) root@radxa:/#

caiwang commented 9 years ago

Comment by caiwang Wednesday Mar 04, 2015 at 03:33 GMT


driver

root@radxa:/# lshw -C network -network:0 DISABLED
description: Wireless interface physical id: 1 bus info: usb@2:1.1 logical name: wlan0 serial: 54:e4:bd:10:19:f5 capabilities: ethernet physical wireless configuration: broadcast=yes driver=rtl8723au ip=172.16.0.1 multicast=yes wireless=IEEE 802.11abg
-network:1 description: Ethernet interface physical id: 2 logical name: eth0 serial: b6:a4:d6:93:18:8f size: 100Mbit/s capacity: 100Mbit/s capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=rockchip_emac driverversion=1.0 duplex=full ip=192.168.1.136 link=yes port=MII speed=100Mbit/s root@radxa:/#

driver location:

root@radxa:/lib/modules/3.18.0-rc5+/kernel/drivers/staging/rtl8723au# ls -l total 9400 -rw-r--r-- 1 root root 9622765 Nov 28 12:24 r8723au.ko

installed version

https://github.com/lwfinger/rtl8188eu/issues/101

If 'lsmod | grep 8188eu' returns "r8188eu", you have the kernel version. If it returns "8188eu", you have this one

root@radxa:/# lsmod | grep 8723au r8723au 312010 0

caiwang commented 9 years ago

Comment by caiwang Wednesday Mar 04, 2015 at 06:19 GMT


compile lwfinger's version

https://github.com/lwfinger/rtl8188eu/issues/99

The script that I use to build this driver for a Raspberry Pi (also ARM) is

export ARCH=arm export CROSS_COMPILE=/home/finger/tools/arm-bcm2708/arm-bcm2708-linux-gnueabi/bin/arm-bcm2708-linux-gnueabi- make KSRC=/home/finger/raspberry/

The cross compile symbol should point to the location of the cross-compiler, and KSRC should point to the location of the kernel source.

https://github.com/lwfinger/rtl8723au/issues/43 git clone -b kernel_version https://github.com/lwfinger/rtl8723au.git

caiwang commented 9 years ago

Comment by caiwang Wednesday Mar 04, 2015 at 08:34 GMT


git clone -b kernel_version https://github.com/lwfinger/rtl8723au.git

export ARCH=arm export CROSS_COMPILE=arm-linux-gnueabihf-

make KSRC=/home/radxa/k318/linux-next/

image