Commit Graph

36 Commits

Author SHA1 Message Date
Carlos Garces
9d13b33a29 Remove code related to PLATFORM_WINDOWS 2021-10-14 19:32:27 +02:00
Martin Kaiser
507d1c07e0 ctrl vendor req index is not used
The index for r8188eu's vendor-specific control requests is not used.
Remove the index parameter from usbctrl_vendorreq and pass index 0 to
usb_control_msg.

This patch is an adaptation of commit 3d0be94f62fd ("staging: rtl8188eu:
ctrl vendor req index is not used") for the new r8188eu driver.

Link: https://lore.kernel.org/r/20210818200041.10870-2-martin@kaiser.cx
2021-10-14 16:30:39 +02:00
Carlos Garces
4ddd7165fb use actual request type as parameter
At the moment, usbctrl_vendorreq's requesttype parameter must be set to
1 for reading and 0 for writing. It's then converted to the actual
bmRequestType for the USB control request. We can simplify the code and
avoid this conversion if the caller passes the actual bmRequestType.

This patch is an adaptation of commit 788fde031027 ("staging: rtl8188eu:
use actual request type as parameter") for the new r8188eu driver.

Link: https://lore.kernel.org/r/20210821164859.4351-3-martin@kaiser.cx
2021-10-14 16:30:39 +02:00
Michael Straube
60aa279428 Use is_multicast_ether_addr instead of custom macro IS_MCAST, the
buffer is properly aligned.

Link: https://lore.kernel.org/r/20210823120106.9633-3-straube.linux@gmail.com
Link: https://lore.kernel.org/r/20210823120106.9633-4-straube.linux@gmail.com
Link: https://lore.kernel.org/r/20210823120106.9633-5-straube.linux@gmail.com
Link: https://lore.kernel.org/r/20210823120106.9633-6-straube.linux@gmail.com
Link: https://lore.kernel.org/r/20210823120106.9633-7-straube.linux@gmail.com
Link: https://lore.kernel.org/r/20210823120106.9633-8-straube.linux@gmail.com
Link: https://lore.kernel.org/r/20210823120106.9633-9-straube.linux@gmail.com
2021-10-14 16:30:30 +02:00
Carlos Garces
bb3dc5ca12 Replace _rtw_memmove with memmove 2021-10-12 17:09:01 +02:00
Carlos Garces
71d5c54af2 Replace _rtw_memcpy with memcpy 2021-10-12 17:03:53 +02:00
Carlos Garces
1c50f4c603 Removed unused and empty functions 2021-10-12 16:02:19 +02:00
Martin Kaiser
d4dcb38048 clean up the usb_writeN
Remove unnecessary variables, check the length.

Link: https://lore.kernel.org/r/20210821164859.4351-8-martin@kaiser.cx
2021-10-11 16:56:09 +02:00
Martin Kaiser
fe504c75a2 clean up the usb_writeXY functions
Remove unnecessary variables, summarize declarations and assignments.

Link: https://lore.kernel.org/r/20210821164859.4351-7-martin@kaiser.cx
2021-10-11 16:51:54 +02:00
Martin Kaiser
ba036a3e14 clean up the usb_readXY functions
Remove unnecessary variables, summarize declarations and assignments.

Link: https://lore.kernel.org/r/20210821164859.4351-6-martin@kaiser.cx
2021-10-11 16:44:22 +02:00
Martin Kaiser
28e0bba794 ctrl vendor req value is always 0x05
The bRequest value for the vendor specific control requests sent by this
driver is always 0x05. Replace the function parameter with the define from
usb_ops.h.

This patch is an adaptation of commit eeb4661560ff ("staging: rtl8188eu:
ctrl vendor req value is always 0x05") for the new r8188eu driver.

Link: https://lore.kernel.org/r/20210818200041.10870-1-martin@kaiser.cx
2021-10-11 16:36:03 +02:00
Martin Kaiser
64831e6777 staging: r8188eu: remove unused define
_HCI_OPS_OS_C_ is not used in the r8188eu driver. Remove it.

Link: https://lore.kernel.org/r/20210821164859.4351-2-martin@kaiser.cx
2021-10-11 16:19:10 +02:00
Phillip Potter
2a467a7923 convert all rtw_zvmalloc calls to vzalloc calls
Convert all rtw_zvmalloc calls within the driver to use the existing
kernel vzalloc function, which has the same semantics. Also rewrite the
two places where it is mentioned in comments to say vzalloc, and remove
the redundant cast to struct adapter * in ./os_dep/usb_intf.c as vzalloc
returns void *.

The reason for the conversion is that rtw_zvmalloc is just a
preprocessor definition for _rtw_zvmalloc which itself is just an inline
wrapper around vmalloc which then zeroes the memory out. As vzalloc does
the same thing via usage of __GFP_ZERO, this code is redundant and can
subsequently be removed.

Link: https://lore.kernel.org/r/20210818234853.208448-5-phil@philpotter.co.uk
2021-10-11 15:59:59 +02:00
Michael Straube
03af80bee9 replace custom macros with is_broadcast_ether_addr
Replace usage of custom macros with is_broadcast_ether_addr. All buffers
are properly aligned. Remove the now unsued macros MacAddr_isBcst and
IS_MAC_ADDRESS_BROADCAST.

Link: https://lore.kernel.org/r/20210805205010.31192-1-straube.linux@gmail.com
2021-10-11 13:29:13 +02:00
Martin Kaiser
2965c273c9 remove the RT_TRACE macro
We've deleted all RT_TRACE calls. The macro itself can now be removed
as well.

Link: https://lore.kernel.org/r/20210807153636.11712-13-martin@kaiser.cx
2021-10-11 13:18:29 +02:00
Larry Finger
a5adfa895b Remove wrapper rtw_udelay_os()
This wrapper is a simple call to udelay(). Remove it.

Link: https://lore.kernel.org/r/20210805192644.15978-4-Larry.Finger@lwfinger.net
2021-10-11 13:00:27 +02:00
Larry Finger
7f8451a86e Remove wrapper rtw_mdelay_os()
This wrapper just calls mdelay(). Remove it.

Link: https://lore.kernel.org/r/20210805192644.15978-3-Larry.Finger@lwfinger.net
2021-10-11 12:57:06 +02:00
Carlos Garcés
cf246719f1 Remove wrapper for memset()
Link: 545d963a9e (diff-16d649c4743131c1aae5f812af5596dae6423bb63eaaf2990b8c89c9a681a913)
2021-10-11 12:09:34 +02:00
Larry Finger
fdbea81f08 Remove wrapper routine rtw_msleep_os()
The effect of this macro is to call msleep(). Remove the wrapper.

Link: https://lore.kernel.org/r/20210805192644.15978-2-Larry.Finger@lwfinger.net
2021-10-11 10:44:02 +02:00
Larry Finger
1fcfef2e07 Remove rtw_yield_os()
This wrapper is just a call to yield().

Link: https://lore.kernel.org/r/20210805192644.15978-1-Larry.Finger@lwfinger.net
2021-10-11 10:44:02 +02:00
Larry Finger
51e1f13a91 Remove all calls to _rtw_spinlock_free()
This routine is empty, thus all calls to it can be removed.

Link: https://lore.kernel.org/r/20210805183717.23007-4-Larry.Finger@lwfinger.net
2021-10-11 10:44:02 +02:00
Larry Finger
34ec238387 Remove wrapper around vfree
This call is so simple that there is no need, or use, for a wrapper.

Link: https://lore.kernel.org/r/20210805183717.23007-3-Larry.Finger@lwfinger.net
2021-10-11 10:44:02 +02:00
Larry Finger
4d3d23dd24 Remove wrapper around do_div
Wrapper routine rtw_modular64() contains only a call to do_div() and
is used once in the code. Remove the wrapper.

Link: https://lore.kernel.org/r/20210803135223.12543-9-Larry.Finger@lwfinger.net
2021-10-11 10:44:02 +02:00
Larry Finger
d7c3737cd5 Remove wrappers for atomic operations
These wrappers were useful when this driver had the hooks for Windows,
but are no longer needed.

Link: https://lore.kernel.org/r/20210802192721.23110-4-Larry.Finger@lwfinger.net
2021-10-11 10:44:02 +02:00
Greg Kroah-Hartman
ac1790da7c remove rtw_mfree2d() function
It is just a wrapper around kfree(), so remove it and just call kfree()
instead.

Adaptation of: https://lore.kernel.org/r/20210730092417.1014392-7-gregkh@linuxfoundation.org
2021-10-11 10:44:01 +02:00
Carlos Garcés
59fd03940c Fix for kernel 5.15
Fixed compilation warnings with GCC 11
Fix libc6 dependency 2.34
2021-10-09 13:33:01 +02:00
Carlos Garces
326965ada9 Fix fallthrough errors 2020-10-31 18:39:03 +01:00
yagoplx
e527c271c9 Fix typo in MTPC 2020-06-19 15:16:02 -03:00
yagoplx/y
666bfeb0f0 Add AP info, Add Compile-Time Transmit Power Fixing & Boost
Turns out these devices can serve as really decent access points.
Adding txpower control info as well. See my other PR.

This is in a separate PR because the readme instructed to do so.

Update README.md

Move my lines more to the bottom

 Implement simple transmit power boost and fixed setting

Source: 80b9bc47b3

Turns out the "higher levels" of this driver are not actually able to affect the device's physical power output, like via cfg80211, yet.
After some extensive testing I finally found the code responsible for setting the device's power and added some compile-time
tunables to influence it. For example here we give the transmit power index a tiny boost of two, which can be changed by the user via the source.

This is as far as my skills go so if you want to try and make this accessible to iw and iwconfig please give it a go.
Note that this will take an index between 1 (min power the device can put out) and 63 (max power the device can put out). I have no idea what these values actually translate to in dBm, but setting the override to max, 63, on my rtl card really gave range a boost.

Add AP and TXPOWER CONTROL info

Turns out these devices can serve as really decent access points.
Adding txpower control info as well. See my other PR.

This is in a separate PR because the readme instructed to do so.

Update README.md

Move my lines more to the bottom

 Implement simple transmit power boost and fixed setting

Source: 80b9bc47b3

Turns out the "higher levels" of this driver are not actually able to affect the device's physical power output, like via cfg80211, yet.
After some extensive testing I finally found the code responsible for setting the device's power and added some compile-time
tunables to influence it. For example here we give the transmit power index a tiny boost of two, which can be changed by the user via the source.

This is as far as my skills go so if you want to try and make this accessible to iw and iwconfig please give it a go.
Note that this will take an index between 1 (min power the device can put out) and 63 (max power the device can put out). I have no idea what these values actually translate to in dBm, but setting the override to max, 63, on my rtl card really gave range a boost.

Add AP and TXPOWER CONTROL info

Turns out these devices can serve as really decent access points.
Adding txpower control info as well. See my other PR.

This is in a separate PR because the readme instructed to do so.

Update README.md

Move my lines more to the bottom

 Implement simple transmit power boost and fixed setting

Source: 80b9bc47b3

Turns out the "higher levels" of this driver are not actually able to affect the device's physical power output, like via cfg80211, yet.
After some extensive testing I finally found the code responsible for setting the device's power and added some compile-time
tunables to influence it. For example here we give the transmit power index a tiny boost of two, which can be changed by the user via the source.

This is as far as my skills go so if you want to try and make this accessible to iw and iwconfig please give it a go.
Note that this will take an index between 1 (min power the device can put out) and 63 (max power the device can put out). I have no idea what these values actually translate to in dBm, but setting the override to max, 63, on my rtl card really gave range a boost.
2020-06-18 18:04:01 -03:00
Carlos Garces
1d807f14d8 Add version v5.6.4 2019-11-13 22:12:20 +01:00
Maxim Buzdalov
30ba4de6ef Enable power management (hopefully).
I mean, it does not crash, but I have no hardware to tell
whether the output power actually changes.
2019-08-22 02:02:40 +03:00
Carlos Garces
80a0cb2c1a Update for kernel 4.15
This commit adds support for kernel 4.15, which changed the timer interface.

Fetch from 8c3acf9275
2018-01-04 00:49:20 +01:00
masterzorag
8162bfd881 silence two RT_TRACE
they are flooding logs, keep them commented for now
2017-05-27 15:03:28 +02:00
CGarces
3d6c7de21a Updated to 4.4.1 2017-05-11 20:49:39 +02:00
CGarces
9dde4572b4 Updated to v4.3.8_12406.20140929 2017-05-11 20:38:48 +02:00
Magnus Bergmark
1387cf623d
The official RTL8192EU linux driver from D-Link Australia
Version information: 20140812_rtl8192EU_linux_v4.3.1.1_11320
  2014-08-12
  version 4.3.1.1_11320
Source:
  ftp://files.dlink.com.au/products/DWA-131/REV_E/Drivers/DWA-131_Linux_driver_v4.3.1.1.zip

This version does not currently work on newer kernels, but it does
contain USB ID 2001:3319, which a lot of other repos in GitHub does not.
2015-08-18 21:03:11 +02:00