Nam Cao [Tue, 25 Oct 2022 09:12:25 +0000 (11:12 +0200)]
staging: rtl8712: check for return value of _r8712_init_xmit_priv()
The return value of _r8712_init_xmit_priv() is never checked and the driver
always continue execution as if all is well. This will cause problems
if, for example, buffers cannot be allocated and the driver continue and
use those buffers.
Check for return value of _r8712_init_xmit_priv() and return error (if any)
during probing.
Nam Cao [Tue, 25 Oct 2022 09:12:24 +0000 (11:12 +0200)]
staging: rtl8712: check for alloc fail in _r8712_init_recv_priv()
The function _r8712_init_recv_priv() and also r8712_init_recv_priv()
just returns silently if they fail to allocate memory. Change their
return type to int and add necessary checks and handling if they return
-ENOMEM
This commit annotated false positive for kmemleak. The reasoning is that
the buffers are freed when the driver is unloaded. However, there is
actually potential memory leak when probe fails.
Aaron Lawrence [Wed, 26 Oct 2022 12:43:51 +0000 (19:43 +0700)]
staging: rtl8192e: rtllib_crypt_tkip: rewritten comparison to NULL
Rewritten a comparison to NULL with a negation operator in
accordance with the Linux kernel coding-style regulations. The fix
was directly recommended by the checkpatch script.
Split a multiple assignments statement to individual assignments
on different lines in accordance with the Linux kernel coding-style
regulations. Also repositioned comments on it and the statement
before for increased legibility. The multiple assignments issue
was found by the checkpatch script, with the comments legibility
issue were through direct observation.
Aaron Lawrence [Wed, 26 Oct 2022 12:41:56 +0000 (19:41 +0700)]
staging: rtl8192e: rtllib_crypt_tkip: fixes on unbalanced braces
Added braces around needed arms of statements which needs them
in accordance with the Linux kernel coding-style regulations.
The issues were found with the help of the checkpatch script.
Aaron Lawrence [Wed, 26 Oct 2022 12:41:08 +0000 (19:41 +0700)]
staging: rtl8192e: rtllib_crypt_tkip: fixed alignment matching open parentheses
Aligned multiple lines to be at the same indentation of open
parentheses before it in accordance with the Linux kernel
coding-style regulations. The issues were found by running the
checkpatch script on the file.
Aaron Lawrence [Wed, 26 Oct 2022 12:40:15 +0000 (19:40 +0700)]
staging: rtl8192e: rtllib_crypt_tkip: blank line before close brace removal
Removed multiple blank lines that are not necessary before a closing
brace. The issues were found with the checkpatch script and were
dealt with in accordance with the Linux kernel coding-style guidelines.
Removed multiple unnecessary blank lines in accordance with the
Linux kernel coding-style regulations. The issues were reported by
the checkpatch script.
This patch is intended to remove unnecessary parentheses in the
rtllib_module.c file following the Linux kernel coding-style
regulations. The modification is recommended by the checkpatch script.
Emily Peri [Fri, 28 Oct 2022 18:39:19 +0000 (11:39 -0700)]
staging: rtl8723bs: replace ternary statement with min_t macro
Ternary statements that pick the min of two values can be replaced by
the macro min_t(). This improves readability, since its quicker to
understand min_t(type, x, y) than x < y ? x : y. Issue found by
coccicheck.
Removal of multiple unnecessary blank lines in accordance with the
Linux kernel coding-style regulations. Said issues ware detected on
this file by the checkpatch script.
Aaron Lawrence [Mon, 24 Oct 2022 12:30:28 +0000 (19:30 +0700)]
Staging: rtl8192e: rtllib_tx: removed unnecessary blank line before a close brace
Removed a blank line before a closing brace as it is not necessary
as per the Linux coding-style regulations. The issue was flagged by
the checkpatch script.
Aaron Lawrence [Mon, 24 Oct 2022 12:29:14 +0000 (19:29 +0700)]
Staging: rtl8192e: rtllib_tx: fixed lines ending with an open parenthesis
Fixed several lines that end with an open parenthesis to not end
with it anymore, as per the Linux kernel coding-style regulations.
The issues were flagged by the checkpatch script.
Aaron Lawrence [Mon, 24 Oct 2022 12:27:59 +0000 (19:27 +0700)]
Staging: rtl8192e: rtllib_tx: added spaces around operators
Added multiple spaces around operators which needs it as per the
Linux kernel coding-style regulations. The issues were flagged by
the checkpatch script.
Aaron Lawrence [Mon, 24 Oct 2022 12:26:59 +0000 (19:26 +0700)]
Staging: rtl8192e: rtllib_tx: fixed alignment matching open parenthesis
Aligned multiple statements to match the open parenthesis on the
line before it as per the Linux kernel coding-style regulations.
The issues were flagged by the checkpatch script.
Multiple blank lines are condensed into a single blank line as per
the Linux kernel coding-style regulations. The issues were flagged
by the checkpatch script.
Martin Kaiser [Mon, 24 Oct 2022 08:14:12 +0000 (10:14 +0200)]
staging: r8188eu: change mlme handlers to void
The mlme handlers that are called from mgt_dispatcher return an error
code. mgt_dispatcher doesn't check this error code, we can remove it and
change the handler functions to void.
For now, make only the minimum changes to the handlers for removing the
error codes. If handlers can be simplified, that'll be done it separate
patches.
Move some code around in rtw_mlme_ext.c to make it simpler.
mlme_sta_tbl is used only by mgt_dispatcher. Move the table inside the
function. Move mgt_dispatcher behind the handler functions. We can then
make the handler functions static.
printk messages are added for program flow tracing and are left
commented. These commented log messages should be removed as they
are no more useful for program execution.
Deepak R Varma [Thu, 20 Oct 2022 21:32:35 +0000 (03:02 +0530)]
staging: r8188eu: Remove unused macros
Simple variants of macros PlatformEFIOWrite and PlatformEFIORead are
defined but never used. As they do not appear to be designed for anything
significant, we can remove them to avoid unexpected usage.
Deepak R Varma [Thu, 20 Oct 2022 21:32:12 +0000 (03:02 +0530)]
staging: r8188eu: Correct missing or extra space in the statements
Properly spacing out code statements/instructions improves code
readability. Add missing or remove extra space as necessary according
to the Linux Kernel coding-style guidelines. Following errors reported
by checkpatch script for inconsistent code spacing:
ERROR: space prohibited before that close parenthesis ')'
ERROR: space prohibited before that ',' (ctx:WxW)
CHECK: spaces preferred around that '&' (ctx:VxV)
Deepak R Varma [Thu, 20 Oct 2022 21:31:37 +0000 (03:01 +0530)]
staging: r8188eu: Put '{" on the symbol declaration line
Open braces '{" should be placed on the line of symbol declaration as
per the coding-style guidelines. Improves readability and matches with
style used in rest of the code. Issue reported by checkpatch script.
Deepak R Varma [Thu, 20 Oct 2022 21:31:05 +0000 (03:01 +0530)]
staging: r8188eu: replace leading spaces by tabs
Spaces are prohibited as per the Linux coding style guidelines. Replace
those by tabs wherever possible to improve code alignment. Error
reported by checkpatch script.
Deepak R Varma [Thu, 20 Oct 2022 21:30:35 +0000 (03:00 +0530)]
staging: r8188eu: Associate pointer symbol with parameter name
The pointer symbol '*' should be associated with the function parameter
name and not its type. This improves code readability and adheres to the
coding-style guidelines. Address following checkpatch reported error:
ERROR: "foo * bar" should be "foo *bar"
While in there, update parameter name at one place to match other function
declarations.
Deepak R Varma [Thu, 20 Oct 2022 21:30:13 +0000 (03:00 +0530)]
staging: r8188eu: Add space between function & macro parameters
Space required between function and macro parameters to improve code
readability. This Linux kernel coding style guideline resolves following
error reported by checkpatch script:
ERROR: space required after that ',' (ctx:VxV)
Deepak R Varma [Thu, 20 Oct 2022 21:28:39 +0000 (02:58 +0530)]
staging: r8188eu: use htons macro instead of __constant_htons
Macro "htons" is more efficient and clearer. It should be used for
constants instead of the __constant_htons macro. Resolves following
checkpatch script complaint:
WARNING: __constant_htons should be htons
Deepak R Varma [Thu, 20 Oct 2022 21:26:47 +0000 (02:56 +0530)]
staging: r8188eu: use Linux kernel variable naming convention
Follow the Linux Kernel coding style variable naming convention instead
of using camelCase style. Issue reported by checkpatch script for
these variables:
tagLen, tagType, networkAddr, ipAddr, macAddr
Peter Robinson [Sun, 16 Oct 2022 11:07:43 +0000 (12:07 +0100)]
staging: wlan-ng: Provide a TODO file for this driver
Provide a TODO file that lists the tasks that should be carried out in
order to move this driver off drivers/staging. It's missing from original
addition of this driver.
Peter Robinson [Sun, 16 Oct 2022 11:07:40 +0000 (12:07 +0100)]
staging: rtl8192u: Provide a TODO file for this driver
Provide a TODO file that lists the tasks that should be carried out in
order to move this driver off drivers/staging. It's missing from original
addition of this driver.
The variable total_freed is accumulating skb_to_free however it is not
being used after this. The use of total_freed is redundant and hence
the variable can be removed.
Martin Kaiser [Sat, 15 Oct 2022 15:11:14 +0000 (17:11 +0200)]
staging: r8188eu: set two more state variables
Set two more state variables in the blink worker when scan blinking and
tx/rx blinking are finished.
bLedBlinkInProgress is true during tx/rx blinking, bLedScanBlinkInProgress
is true during scan blinking. If we doing neither of the two, we may
safely set both variables to false.
This change makes the scan and tx/rx cases almost identical, we are now
ready to summarize the two cases.
Martin Kaiser [Sat, 15 Oct 2022 15:11:13 +0000 (17:11 +0200)]
staging: r8188eu: remove padapter from struct led_priv
The only struct led_priv that's used in the r8188eu driver in embedded in
the driver's global struct adapter. We can use container_of to access the
"outer" structure, there's no need to store a pointer to it.
Martin Kaiser [Sat, 15 Oct 2022 15:11:12 +0000 (17:11 +0200)]
staging: r8188eu: don't include rtw_led.h from rtw_cmd.h
The rtw_cmd.h does not need any definitions from the led layer, there's
no reason to include rtw_led.h.
When I tried to remove this component
struct led_priv {
struct adapter *padapter;
...
I saw compiler errors because of this chain of include files:
drv_types.h -> rtw_cmd.h -> rtw_led.h
rtw_led.h uses struct adapter before it sees the definiton near the end
of drv_types.h. (It seems that a simple struct adapter * prevents this
problem.)
The best option for fixing this issue is to not include rtw_led.h in
rtw_cmd.h.
Martin Kaiser [Sat, 15 Oct 2022 15:11:06 +0000 (17:11 +0200)]
staging: r8188eu: fix led register settings
Using an InterTech DMG-02 dongle, the led remains on when the system goes
into standby mode. After wakeup, it's no longer possible to control the
led.
It turned out that the register settings to enable or disable the led were
not correct. They worked for some dongles like the Edimax V2 but not for
others like the InterTech DMG-02.
This patch fixes the register settings. Bit 3 in the led_cfg2 register
controls the led status, bit 5 must always be set to be able to control
the led, bit 6 has no influence on the led. Setting the mac_pinmux_cfg
register is not necessary.
These settings were tested with Edimax V2 and InterTech DMG-02.
Cc: stable@vger.kernel.org Fixes: 8cd574e6af54 ("staging: r8188eu: introduce new hal dir for RTL8188eu driver") Suggested-by: Michael Straube <straube.linux@gmail.com> Signed-off-by: Martin Kaiser <martin@kaiser.cx> Tested-by: Michael Straube <straube.linux@gmail.com> # InterTech DMG-02, Tested-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> # Edimax N150 Link: https://lore.kernel.org/r/20221015151115.232095-2-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Anjandev Momi [Fri, 14 Oct 2022 08:18:39 +0000 (01:18 -0700)]
Staging: rtl8192e: make alignment match open parenthesis
This patch removes the following checks generated by checkpatch.pl:
./drivers/staging/rtl8192e/rtl819x_BAProc.c:261: CHECK:
Alignment should match open parenthesis
./drivers/staging/rtl8192e/rtl819x_BAProc.c:284: CHECK:
Alignment should match open parenthesis
./drivers/staging/rtl8192e/rtl819x_BAProc.c:421: CHECK:
Alignment should match open parenthesis
./drivers/staging/rtl8192e/rtl819x_BAProc.c:441: CHECK:
Alignment should match open parenthesis
Martin Kaiser [Sat, 15 Oct 2022 15:24:37 +0000 (17:24 +0200)]
staging: r8188eu: exit for deauth from unknown station
If we receive a deauth message from an unknown station, we can drop this
message and exit immediately. Reorder the code to make this clearer, don't
wrap everything in an if statement.
Signed-off-by: Martin Kaiser <martin@kaiser.cx> Tested-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> # Edimax N150 Acked-by: Pavel Skripkin <paskripkin@gmail.com> Link: https://lore.kernel.org/r/20221015152440.232281-7-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Martin Kaiser [Sat, 15 Oct 2022 15:24:34 +0000 (17:24 +0200)]
staging: r8188eu: clarify the bBusyTraffic assignment
bBusyTraffic is set only if we're not in WIFI_AP_STATE, i.e. in the else
branch. If we were not in WIFI_AP_STATE, we'd go into the if branch and
return _SUCCESS before making it to the bBusyTraffic assignment.
Move the assignment into the else branch to make this clearer.
Signed-off-by: Martin Kaiser <martin@kaiser.cx> Tested-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> # Edimax N150 Acked-by: Pavel Skripkin <paskripkin@gmail.com> Link: https://lore.kernel.org/r/20221015152440.232281-4-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>