Mange / rtl8192eu-linux-driver

Drivers for the rtl8192eu chipset for wireless adapters (D-Link DWA-131 rev E1 included!)
1.32k stars 435 forks source link

Can't Build on Linux Kernel 4.12.4!!! #45

Closed Syntist closed 7 years ago

Syntist commented 7 years ago

I am using Antergos, can't get it work!!

Output Log: https://pastebin.com/E150sV5Z

scdas141 commented 7 years ago

Same issue here, was working real fine upto kernel 4.11 but as soon as I upgraded to 4.12 -- received error!!

`# make && make install -j2
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/4.12.4-towo.2-siduction-amd64/build M=/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x  modules
make[1]: Entering directory '/usr/src/linux-headers-4.12.4-towo.2-siduction-amd64'
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_cmd.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_security.o
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_security.c: In function ‘aes_cipher’:
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_security.c:1598:5: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]
     for (j = 0; j < 8; j++)
     ^~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/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;
  ^~~~~~~~~~~~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_security.c: In function ‘aes_decipher’:
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_security.c:1984:5: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]
     for (j = 0; j < 8; j++)
     ^~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/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]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_debug.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_io.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_ioctl_query.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_ioctl_set.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_ieee80211.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_mlme.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_mlme_ext.o
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_mlme_ext.c: In function ‘rtw_delba_check’:
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_mlme_ext.c:12427:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
       else
       ^~~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_mlme_ext.c:12429:8: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
        psta->recvreorder_ctrl[i].enable = _FALSE;
        ^~~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_mlme_ext.c:12430:7: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
       if (ret != _FAIL)
       ^~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_mlme_ext.c:12432: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);
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_wlan_util.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_vht.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_pwrctrl.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_rf.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_recv.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_sta_mgt.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_ap.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_xmit.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_p2p.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_tdls.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_br_ext.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_iol.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_sreset.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_btcoex.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_beamforming.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/rtw_odm.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/core/efuse/rtw_efuse.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/osdep_service.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/os_intfs.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/usb_intf.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/usb_ops_linux.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_linux.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/xmit_linux.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/mlme_linux.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/recv_linux.o
  CC [M]  /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.o
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_spt_band_free’:
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:288:20: warning: comparison between ‘enum nl80211_band’ and ‘enum ieee80211_band’ [-Wenum-compare]
  if(spt_band->band == IEEE80211_BAND_2GHZ)
                    ^~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:294:25: warning: comparison between ‘enum nl80211_band’ and ‘enum ieee80211_band’ [-Wenum-compare]
  else if(spt_band->band == IEEE80211_BAND_5GHZ)
                         ^~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_indicate_connect’:
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:815:6: error: passing argument 2 of ‘cfg80211_roamed’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    , notify_channel
      ^~~~~~~~~~~~~~
In file included from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/include/osdep_service_linux.h:87:0,
                 from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/include/osdep_service.h:45,
                 from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/include/drv_types.h:32,
                 from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:22:
./include/net/cfg80211.h:5435:6: note: expected ‘struct cfg80211_roam_info *’ but argument is of type ‘struct ieee80211_channel *’
 void cfg80211_roamed(struct net_device *dev, struct cfg80211_roam_info *info,
      ^~~~~~~~~~~~~~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:817:6: warning: passing argument 3 of ‘cfg80211_roamed’ makes integer from pointer without a cast [-Wint-conversion]
    , cur_network->network.MacAddress
      ^~~~~~~~~~~
In file included from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/include/osdep_service_linux.h:87:0,
                 from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/include/osdep_service.h:45,
                 from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/include/drv_types.h:32,
                 from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:22:
./include/net/cfg80211.h:5435:6: note: expected ‘gfp_t {aka unsigned int}’ but argument is of type ‘unsigned char *’
 void cfg80211_roamed(struct net_device *dev, struct cfg80211_roam_info *info,
      ^~~~~~~~~~~~~~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:813:3: error: too many arguments to function ‘cfg80211_roamed’
   cfg80211_roamed(padapter->pnetdev
   ^~~~~~~~~~~~~~~
In file included from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/include/osdep_service_linux.h:87:0,
                 from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/include/osdep_service.h:45,
                 from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/include/drv_types.h:32,
                 from /home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:22:
./include/net/cfg80211.h:5435:6: note: declared here
 void cfg80211_roamed(struct net_device *dev, struct cfg80211_roam_info *info,
      ^~~~~~~~~~~~~~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_preinit_wiphy’:
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:6540:18: error: ‘WIPHY_FLAG_SUPPORTS_SCHED_SCAN’ undeclared (first use in this function); did you mean ‘WIPHY_FLAG_SUPPORTS_TDLS’?
  wiphy->flags |= WIPHY_FLAG_SUPPORTS_SCHED_SCAN;
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  WIPHY_FLAG_SUPPORTS_TDLS
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:6540:18: note: each undeclared identifier is reported only once for each function it appears in
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c: At top level:
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:6573:25: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
  .change_virtual_intf = cfg80211_rtw_change_iface,
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:6573:25: note: (near initialization for ‘rtw_cfg80211_ops.change_virtual_intf’)
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:6596:22: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
  .add_virtual_intf = cfg80211_rtw_add_virtual_intf,
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.c:6596:22: note: (near initialization for ‘rtw_cfg80211_ops.add_virtual_intf’)
cc1: some warnings being treated as errors
scripts/Makefile.build:302: recipe for target '/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.o' failed
make[2]: *** [/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x/os_dep/linux/ioctl_cfg80211.o] Error 1
Makefile:1516: recipe for target '_module_/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x' failed
make[1]: *** [_module_/home/ik/Downloads/rtl8192eu-linux-driver-realtek-4.4.x] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.12.4-towo.2-siduction-amd64'
Makefile:1699: recipe for target 'modules' failed
make: *** [modules] Error 2
`

Hope it is resolved!!

masterzorag commented 7 years ago

Yes, known issues; I can confirm linux-4.12.y needs some patching. Actually driver is working with 4.11.12 [EOL]

scdas141 commented 7 years ago

Maybe someone can get this working on kernel 4.12.x ??

masterzorag commented 7 years ago

tracking first build error

ioctl_cfg80211.c:816:6: error: passing argument 2 of ‘cfg80211_roamed’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    , notify_channel
note: expected ‘struct cfg80211_roam_info *’ but argument is of type ‘struct ieee80211_channel *’
 void cfg80211_roamed(struct net_device *dev, struct cfg80211_roam_info *info,
...
then obviously:
error: too many arguments to function ‘cfg80211_roamed’

lands me here

scdas141 commented 7 years ago

@masterzorag Thanks buddy.. I'm sure a solution will crop up..

I think New Kernels, especially like, 4.12 with major changes -- 15,000 source code changes & More Than One Million New Lines might take a while to complete debugging.. :-))

masterzorag commented 7 years ago

just managed to build fine on linux-4.12.2, I will push patches on my branch

scdas141 commented 7 years ago

wow.. good news after all.. Successfully installed on 4.12.6 from masterzorag's branch

Mange should be a li'l more pro-active in maintaining his branch..

CGarces commented 7 years ago

@scdas141 we try to do our best, but we have a private life outside Github. Fell free to be pro-active and send a PR.