WIFI driver compilation - Printable Version

+- PINE64 (
+-- Forum: ROCK64 (
+--- Forum: Rock64 Hardware and Accessories (
+--- Thread: WIFI driver compilation (/showthread.php?tid=6716)

WIFI driver compilation - wsk - 10-28-2018

Hello everyone,

I have a Rock64 board and have two USB wifi adapters, one with rtl8192SU chip and the other with rtl8192EU. I have spent several days trying to compile the drivers for both and changed the system from debian to ubunto and back. I cannot get the system to compile the drivers. I followed the threads here and the readme on github for several versions. Nothing is working. Can anyone direct me to a tutorial about the preparation of the system for compiling the drivers that would be enough to get this to work? I now have armbian. I successfully installed the .deb driver but it cannot identify the hardware and the driver does not show in the sysotem.

Any help is appriciated.

RE: WIFI driver compilation - wsk - 11-01-2018

Ok... the eu version is working now

first i tried some tutorials here and it didn't work. I used the modifications below for the post:

Quote:3) Using your text editor, edit some entries in file called Makefile so that it can run without error on Rock64.

[Disable energy saving around line 40]


[Change platform setting around line 53]


[Add the following platform setting immediately under the above line]


[Add the following command around line 662]

SUBARCH := arm64
ARCH ?= arm64
KVER ?= $(shell uname -r)
KSRC := /lib/modules/$(KVER)/build/
MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/

[Remove "modules" part from the following command around line 1065]

$(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd)  modules

I got errors about the scripts in the headers. It seems the version I was using had missing files (armbian desktop). I had tried other versions with not success. So to resolve this I downloaded the full source and applied the following three commands:

make oldconfig

make prepare
make scripts

then I copied the whole source into the headers directory. I know this is probably too much but i got errors when I tried to copy the scripts only.

Once this was done I got a few formatting error in the code (for loops and if statements). I had to put curly brackets around the concerned code. I compiled successfully. 

make install

Now dmesg gave a version magic error. The version was not correct and would appear every time. So finally I applied this fix:

Quote:This solution holds for the 3.3.0 kernel, but probably works on others as well.
The file you want to edit is /usr/src/kernels/{your version}/include/generated/utsrelease.h and just add the ‘+’ sign to the end of the version number. E.g.
#define UTS_RELEASE "3.3.0-xxx+"

and it worked.