Tiny Core Linux
Tiny Core Base => Raspberry Pi => Topic started by: yeme on November 27, 2015, 06:33:41 PM
-
I would like to use this adapter for the 5GHz advantage on my network and need help and direction on getting this going with PiCore. I have successfully installed and used it on my RPi setup. The rtl drivers show 8812_au and 8821_au for the device.
This is my lsusb:
Bus 001 Device 004: ID 7392:a812 Edimax Technology Co., Ltd
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
My current test PiCore setup is B+ running 7-alpha-8 (this is the one I just setup the bridged eth0 to wlan0 on with the forum's help)
-
Troubleshooting wifi drivers is hard, since there are so many different chips. And we don't all have the same ones. I only have the EW7811Un version.
Boot the system, then plug in the wifi stick.
Post the messages at the end of dmesg and lsmod. Do that for the working raspbian system, then for piCore. Also, what is your kernel version in raspbian?
As for speed, not sure you will notice much of a benefit from the 5Ghz range. Network throughput is still pretty crypled from the usb.
-
Hi Paul_123!
Working RPi 3.18.11+ #781 PREEMPT Tue Apr 21 18:02:18 BST 2015
lsusb:
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 7392:a812 Edimax Technology Co., Ltd
dmesg:
[ 2.704443] usb 1-1: New USB device found, idVendor=0424, idProduct=9514
[ 2.713170] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 2.725275] hub 1-1:1.0: USB hub found
[ 2.732207] hub 1-1:1.0: 5 ports detected
[ 3.013952] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[ 3.134339] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[ 3.143265] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 3.160967] smsc95xx v1.0.4
[ 3.232292] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-bcm2708_usb-1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:e5:fc:bf
[ 3.344047] usb 1-1.2: new high-speed USB device number 4 using dwc_otg
[ 3.465005] usb 1-1.2: New USB device found, idVendor=7392, idProduct=a812
[ 3.483938] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3.493351] usb 1-1.2: Product: Edimax AC600 USB
[ 3.512513] usb 1-1.2: Manufacturer: Realtek
[ 3.521496] usb 1-1.2: SerialNumber: 00e04c000001
[ 4.389463] udevd[159]: starting version 175
[ 6.236876] cfg80211: Calling CRDA to update world regulatory domain
[ 7.503186] RTL871X: module init start
[ 7.670523] RTL871X: rtl8821au v4.3.14_13455.20150212_BTCOEX20150128-51
[ 7.757982] RTL871X: build time: Sep 11 2015 21:08:39
[ 7.811304] RTL871X: rtl8821au BT-Coex version = BTCOEX20150128-51
[ 8.090050] random: nonblocking pool is initialized
[ 8.249147] RTL871X: rtw_ndev_init(wlan0)
[ 8.260799] usbcore: registered new interface driver rtl8821au
[ 8.268676] RTL871X: module init ret=0
[ 11.239424] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 11.661615] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 21.700075] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[ 23.354982] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1
[ 25.213452] cfg80211: Calling CRDA to update world regulatory domain
[ 25.237823] RTL871X: rtw_set_802_11_connect(wlan0) fw_state=0x00000008
[ 25.578811] RTL871X: start auth
[ 25.580552] RTL871X: auth success, start assoc
[ 25.582889] RTL871X: assoc success
[ 25.583306] cfg80211: Calling CRDA to update world regulatory domain
[ 25.938811] RTL871X: send eapol packet
[ 25.943383] RTL871X: send eapol packet
[ 25.945974] RTL871X: set pairwise key camid:4, addr:1c:87:2c:d3:1b:2c, kid:0, type:AES
[ 25.953223] RTL871X: set group key camid:5, addr:1c:87:2c:d3:1b:2c, kid:1, type:AES
[ 32.553201] Adding 102396k swap on /var/swap. Priority:-1 extents:2 across:2134012k SSFS
PiCore 4.1.12-piCore+ #1 PREEMPT Wed Nov 4 11:36:19 CET 2015
lsusb:
Bus 001 Device 004: ID 7392:a812 Edimax Technology Co., Ltd
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
dmesg:
[ 68.305312] usb 1-1.4: new high-speed USB device number 4 using dwc_otg
[ 68.407290] usb 1-1.4: New USB device found, idVendor=7392, idProduct=a812
[ 68.407326] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber =3
[ 68.407349] usb 1-1.4: Product: Edimax AC600 USB
[ 68.407367] usb 1-1.4: Manufacturer: Realtek
[ 68.407384] usb 1-1.4: SerialNumber: 00e04c000001
The working driver for the RPi was a "custom driver" for the kernel put together by a forum member Mr. Engman:
https://www.raspberrypi.org/forums/viewtopic.php?f=66&t=66499&start=75 (https://www.raspberrypi.org/forums/viewtopic.php?f=66&t=66499&start=75)
-
Dealing with an out of tree driver is going to be problematic. Every time the kernel changes, the driver will need to be manually built and changed. I don't think Bella is maintaining any sources out of the official rpi kernel tree.
So that is going to mean that we have to manually build the driver for a given kernel. Similar to what is described in the thread.
-
Thanks for looking Paul_123
I just noticed I showed lsusb and not lsmod as requested above, so I have posted below the lsmod and dmesg for both systems (working RPi and the PiCore).
Working RPi
lsmod:
Module Size Used by
snd_bcm2835 21149 0
snd_pcm 90778 1 snd_bcm2835
snd_seq 61097 0
snd_seq_device 7209 1 snd_seq
snd_timer 23007 2 snd_pcm,snd_seq
snd 66325 5 snd_bcm2835,snd_timer,snd_pcm,snd_seq,snd_seq_device
8812au 1761362 0
cfg80211 462846 1 8812au
rfkill 22347 2 cfg80211
uio_pdrv_genirq 3666 0
uio 9897 1 uio_pdrv_genirq
dmesg
3.134536] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[ 3.143457] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 3.161248] smsc95xx v1.0.4
[ 3.232413] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-bcm2708_usb-1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:e5:fc:bf
[ 3.344028] usb 1-1.2: new high-speed USB device number 4 using dwc_otg
[ 3.465032] usb 1-1.2: New USB device found, idVendor=7392, idProduct=a812
[ 3.483998] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3.493410] usb 1-1.2: Product: Edimax AC600 USB
[ 3.512059] usb 1-1.2: Manufacturer: Realtek
[ 3.520953] usb 1-1.2: SerialNumber: 00e04c000001
[ 4.396207] udevd[159]: starting version 175
[ 6.336225] cfg80211: Calling CRDA to update world regulatory domain
[ 7.620196] RTL871X: module init start
[ 7.713300] RTL871X: rtl8821au v4.3.14_13455.20150212_BTCOEX20150128-51
[ 7.794044] RTL871X: build time: Sep 11 2015 21:08:39
[ 7.801088] RTL871X: rtl8821au BT-Coex version = BTCOEX20150128-51
[ 8.062070] random: nonblocking pool is initialized
[ 8.241772] RTL871X: rtw_ndev_init(wlan0)
[ 8.253485] usbcore: registered new interface driver rtl8821au
[ 8.261362] RTL871X: module init ret=0
[ 11.222886] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 11.675870] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 21.724618] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[ 23.379194] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1
[ 25.232910] cfg80211: Calling CRDA to update world regulatory domain
[ 25.255684] RTL871X: rtw_set_802_11_connect(wlan0) fw_state=0x00000008
[ 25.638185] RTL871X: start auth
[ 25.639918] RTL871X: auth success, start assoc
[ 25.642282] RTL871X: assoc success
[ 25.642686] cfg80211: Calling CRDA to update world regulatory domain
[ 26.512085] RTL871X: send eapol packet
[ 26.517797] RTL871X: send eapol packet
[ 26.518523] RTL871X: set pairwise key camid:4, addr:1c:87:2c:d3:1b:2c, kid:0, type:AES
[ 26.527128] RTL871X: set group key camid:5, addr:1c:87:2c:d3:1b:2c, kid:1, type:AES
[ 33.016281] Adding 102396k swap on /var/swap. Priority:-1 extents:2 across:2134012k SSFS
PiCore
Module Size Used by Not tainted
ipv6 364197 12 [permanent]
i2c_dev 6686 0
spi_bcm2835 7880 0
bcm2835_gpiomem 3703 0
i2c_bcm2708 6156 0
uio_pdrv_genirq 3670 0
uio 10078 1 uio_pdrv_genirq
dmesg:
[ 593.165336] usb 1-1.2: new high-speed USB device number 4 using dwc_otg
[ 593.267219] usb 1-1.2: New USB device found, idVendor=7392, idProduct=a812
[ 593.267254] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 593.267274] usb 1-1.2: Product: Edimax AC600 USB
[ 593.267292] usb 1-1.2: Manufacturer: Realtek
[ 593.267313] usb 1-1.2: SerialNumber: 00e04c000001
So that is going to mean that we have to manually build the driver for a given kernel.
Do you have any examples of doing this that I could review and try to learn?
-
Have you built kernels before?
The source and symbols from the current version of piCore is
http://tinycorelinux.net/7.x/armv6/releases/RPi/src/kernel/ For armv6
-
I have not but will review the literature available.
-
For future reference, the driver is located
https://github.com/gnab/rtl8812au
Bela.....seems that your method of archiving the kernel source, Module.symvers and System map are working well for compiling out of tree modules. Thx.
-
Paul, can you send a tcz pack for the repo(s)?
-
Paul, can you send a tcz pack for the repo(s)?
I can do that. I wasn't sure if you wanted to deal with the out of tree kernel module on the repos.
-
No I do not want to deal with modules already built by others and I can't test due to lack of hardware :)