Git Product home page Git Product logo

rtl8812au's Introduction

rtl8812AU

This repository contains drivers for the rtl8812AU and rtl8821AU/rtl8811AU chipsets.

It started out because I found a newer driver then I found elsewhere, namely version 4.3.8. But since then I found even newer versions released by Realtek and decided to use/update those too.
If you find a newer version then I have, I'd appreciate it if you would share it.

Currently there are the following branches, named after the initial Realtek driver version.

The driver (versions) are primarily targetted at Debian and Raspbian, but I have no reason to assume it won't work for other distrubutions. If fixes are needed for other distrubution with no negative effect on Debian or Raspbian, I'll gladly incorporate those into my repository.

I have currently successfully compiled the driver on Debian kernel 3.2, 3.16, 4.1-4.8 and on Raspbian with kernel 3.18, 4.1 and 4.4.

DKMS

DKMS is a system which will automatically recompile and install a kernel module when a new kernel gets installed or updated. To make use of DKMS, install the dkms package, which on Debian (based) systems is done like this:

# apt-get install dkms

Where '#' denotes that it should be executed as root or with sudo, but don't type that character.

To make use of the DKMS feature with this project, do the following:

# DRV_NAME=rtl8812AU
# DRV_VERSION=4.3.22-beta
# mkdir /usr/src/${DRV_NAME}-${DRV_VERSION}
# git archive BRANCH_NAME | tar -x -C /usr/src/${DRV_NAME}-${DRV_VERSION}
# dkms add -m ${DRV_NAME} -v ${DRV_VERSION}
# dkms build -m ${DRV_NAME} -v ${DRV_VERSION}
# dkms install -m ${DRV_NAME} -v ${DRV_VERSION}

Whereby it is assumed you're in the cloned project directory and the current branch is BRANCH_NAME, e.g. kernel-4.11. If you want to use another driver version, adjust DRV_VERSION accordingly.

If you later on want to remove it again, do the following:

# DRV_NAME=rtl8812AU
# DRV_VERSION=4.3.22-beta
# dkms remove ${DRV_NAME}/${DRV_VERSION} --all

rtl8812au's People

Contributors

diederikdehaas avatar edupsousa avatar manuel-colmenero avatar masap avatar maurossi avatar napalu avatar saiarcot895 avatar tsoernes avatar uminokoe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

rtl8812au's Issues

Can't build with DKMS

Running Fedora 27 4.15.17-300.fc27.x86_64

DRV_NAME=rtl8812AU
DRV_VERSION=4.3.8
mkdir /usr/src/${DRV_NAME}-${DRV_VERSION}
git clone https://github.com/maurossi/rtl8812au.git /usr/src/${DRV_NAME}-${DRV_VERSION}
dkms add -m ${DRV_NAME} -v ${DRV_VERSION}
dkms build -m ${DRV_NAME} -v ${DRV_VERSION}

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area...
'make'...(bad exit status: 2)
Error! Bad return status for module build on kernel: 4.15.17-300.fc27.x86_64 (x86_64)
Consult /var/lib/dkms/rtl8812AU/4.3.8/build/make.log for more information.

cat /var/lib/dkms/rtl8812AU/4.3.8/build/make.log
DKMS make.log for rtl8812AU-4.3.8 for kernel 4.15.17-300.fc27.x86_64 (x86_64)
Fri Apr 27 16:53:24 EST 2018
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/4.15.17-300.fc27.x86_64/build M=/var/lib/dkms/rtl8812AU/4.3.8/build modules
make[1]: Entering directory '/usr/src/kernels/4.15.17-300.fc27.x86_64'
CC [M] /var/lib/dkms/rtl8812AU/4.3.8/build/core/rtw_cmd.o
In file included from /var/lib/dkms/rtl8812AU/4.3.8/build/include/osdep_service.h:41:0,
from /var/lib/dkms/rtl8812AU/4.3.8/build/include/drv_types.h:32,
from /var/lib/dkms/rtl8812AU/4.3.8/build/core/rtw_cmd.c:22:
/var/lib/dkms/rtl8812AU/4.3.8/build/include/osdep_service_linux.h: In function ‘_init_timer’:
/var/lib/dkms/rtl8812AU/4.3.8/build/include/osdep_service_linux.h:277:8: error: ‘_timer {aka struct timer_list}’ has no member named ‘data’
ptimer->data = (unsigned long)cntx;
^~
/var/lib/dkms/rtl8812AU/4.3.8/build/include/osdep_service_linux.h:278:2: error: implicit declaration of function ‘init_timer’; did you mean ‘_init_timer’? [-Werror=implicit-function-declaration]
init_timer(ptimer);
^~~~~~~~~~
_init_timer
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:325: /var/lib/dkms/rtl8812AU/4.3.8/build/core/rtw_cmd.o] Error 1
make[1]: *** [Makefile:1527: module/var/lib/dkms/rtl8812AU/4.3.8/build] Error 2
make[1]: Leaving directory '/usr/src/kernels/4.15.17-300.fc27.x86_64'
make: *** [Makefile:1705: modules] Error 2

Install instructions not clear

Could you possibly write a script that automates the dkms install? I got past step 4 as I've realized I'm not using an archive but a clone but now I'm stuck on step 5.

Problem on fedora 26 kernel 4.11.9

Hi I got problem on FC26 with kernel 4.11.9 (on 4.11.9 at fc26 everything works well).
I got this message

DKMS:

add completed.

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area...
'make'...........(bad exit status: 2)
Error! Bad return status for module build on kernel: 4.11.9-300.fc26.x86_64 (x86_64)
Consult /var/lib/dkms/rtl8812AU/4.3.22-beta/build/make.log for more information.

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area...
'make'............(bad exit status: 2)
Error! Bad return status for module build on kernel: 4.11.9-300.fc26.x86_64 (x86_64)
Consult /var/lib/dkms/rtl8812AU/4.3.22-beta/build/make.log for more information.

At log I have this

DKMS make.log for rtl8812AU-4.3.22-beta for kernel 4.11.9-300.fc26.x86_64 (x86_64)
czw, 13 lip 2017, 19:28:42 CEST
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/4.11.9-300.fc26.x86_64/build M=/var/lib/dkms/rtl8812AU/4.3.22-beta/build modules
make[1]: Wejście do katalogu '/usr/src/kernels/4.11.9-300.fc26.x86_64'
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_cmd.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_security.o
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_security.c: In function ‘aes_cipher’:
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_security.c:1598:5: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]
for (j = 0; j < 8; j++)
^~~
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_security.c:1601:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’
payload_index = hdrlen + 8;
^~~~~~~~~~~~~
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_security.c: In function ‘aes_decipher’:
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_security.c:1984:5: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]
for (j = 0; j < 8; j++)
^~~
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_security.c:1987:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’
payload_index = hdrlen + 8;
^~~~~~~~~~~~~
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_debug.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_io.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_ioctl_query.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_ioctl_set.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_ieee80211.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme_ext.o
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme_ext.c: In function ‘rtw_delba_check’:
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme_ext.c:12243:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
else
^~~~
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme_ext.c:12245:8: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
psta->recvreorder_ctrl[i].enable = _FALSE;
^~~~
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme_ext.c:12246:7: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ret != _FAIL)
^~
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme_ext.c:12248:8: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
rtw_reset_continual_no_rx_packet(psta, i);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme_ext.c: In function ‘mgt_dispatcher’:
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme_ext.c:1148:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
if(check_fwstate(pmlmepriv, WIFI_AP_STATE) == _TRUE)
^
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_mlme_ext.c:1153:3: note: here
case WIFI_ASSOCREQ:
^~~~
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_wlan_util.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_vht.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_pwrctrl.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_rf.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_recv.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_sta_mgt.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_ap.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_xmit.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_p2p.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_tdls.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_br_ext.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_iol.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_sreset.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_btcoex.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_beamforming.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/rtw_odm.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/core/efuse/rtw_efuse.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/osdep_service.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/os_intfs.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/usb_intf.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/usb_ops_linux.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/ioctl_linux.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/xmit_linux.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/mlme_linux.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/recv_linux.o
CC [M] /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/ioctl_cfg80211.o
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_add_monitor_if’:
/var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/ioctl_cfg80211.c:3981:12: error: ‘struct net_device’ has no member named ‘destructor’; did you mean ‘priv_destructor’?
mon_ndev->destructor = rtw_ndev_destructor;
^~~~~~~~~~
priv_destructor
make[2]: *** [scripts/Makefile.build:295: /var/lib/dkms/rtl8812AU/4.3.22-beta/build/os_dep/linux/ioctl_cfg80211.o] Błąd 1
make[1]: *** [Makefile:1496: module/var/lib/dkms/rtl8812AU/4.3.22-beta/build] Błąd 2
make[1]: Opuszczenie katalogu '/usr/src/kernels/4.11.9-300.fc26.x86_64'
make: *** [Makefile:1705: modules] Błąd 2

I don't know what is wrong

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.