aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/export-to-postgresql.py (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2021-12-28staging: r8188eu: remove the private ioctl "wps_prob_req_ie"Martin Kaiser1-12/+1
Remove the private ioctl "wps_prob_req_ie", it is mapped to an empty function. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226212535.197989-5-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: remove the private drvext_hdl ioctlMartin Kaiser1-11/+1
Remove the private drvext_hdl ioctl, it is mapped to an empty function. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226212535.197989-4-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: remove the private ioctl "get sensitivity"Martin Kaiser1-12/+1
Remove the private ioctl "get sensitivity", it is mapped to an empty function. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226212535.197989-3-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: remove unused rtw_private_args entriesMartin Kaiser1-7/+0
Remove the entries of the rtw_private_args array that refer to non-existing private ioctls. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226212535.197989-2-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: rfoff_reason is never initialisedMartin Kaiser3-15/+0
rfoff_reason in struct pwrctrl_priv is never set, its value remains 0. Remove rfoff_reason, related defines and a check in rtw_led_control that is always false. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-22-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: merge rtw_led_control and SwLedControlMode1Martin Kaiser1-155/+148
rtw_led_control is the only caller of SwLedControlMode1. Pull SwLedControlMode1 into rtw_led_control. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-21-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: merge blink_work and SwLedBlink1Martin Kaiser1-103/+96
blink_work is the only caller of SwLedBlink1. Merge the two functions. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-20-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: summarize some BlinkingLedStateMartin Kaiser1-24/+8
Move BlinkingLedState updates out of if clauses where the same update is done for all possible paths. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-19-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: remove bStopBlinkingMartin Kaiser1-13/+3
Remove the temporary variable bStopBlinking and check the conditions directly in the if clauses. There's no need to save the result of these checks. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-18-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: LED_CTL_START_WPS_BOTTON is not usedMartin Kaiser2-2/+0
None of the callers sets LED_CTL_START_WPS_BOTTON. Remove the define and related dead code. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-17-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: LED_CTL_POWER_ON is not usedMartin Kaiser2-4/+1
The LED_CTL_POWER_ON mode is not used by this driver. Remove the define and related dead code. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-16-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: remove LedControlHandlerMartin Kaiser2-13/+3
Export the function that other layers use for setting the led. Remove the function pointer and the macro to make the led control function configurable. This driver supports only a single configuration. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-15-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: remove obsolete commentsMartin Kaiser1-6/+3
Remove some comments that don't make sense any more. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-14-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: use bool for boolean valuesMartin Kaiser1-7/+7
Change some boolean variables from u8 to bool. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-13-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: make blink interval defines internalMartin Kaiser2-6/+6
The defines for led blink intervals are used only by the led layer. Move them into rtw_led.c. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-12-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: bLedStartToLinkBlinkInProgress is set but not usedMartin Kaiser2-2/+0
Remove bLedStartToLinkBlinkInProgress from struct LED_871x. It's set but not used. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-11-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: remove unused blink mode definesMartin Kaiser1-6/+0
Remove defines for led blink modes which are not used by this driver. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-10-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: clean up blinking macrosMartin Kaiser2-9/+5
Clean up the macros that check the blinking mode of a LED. The macro IS_LED_BLINKING is not used and can be removed. The IS_LED_WPS_BLINKING macro is used only by rtw_led.c. Move the macro into this file. The macro parameter is always a struct LED_871x *, there's no need for a cast. Rename the parameter to l and put it in parentheses, which is good practice for macro parameters. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-9-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: clean up the blink worker codeMartin Kaiser2-13/+4
Merge the BlinkWorkItemCallback and BlinkHandler functions. Rename the resulting function to blink_work and make it internal to the led layer. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-8-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: make ResetLedStatus staticMartin Kaiser2-3/+1
The ResetLedStatus function is used only by the led layer. Make it static. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-7-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: merge DeInitLed871x and rtl8188eu_DeInitSwLedsMartin Kaiser2-10/+4
Merge DeInitLed871x and rtl8188eu_DeInitSwLeds, both of which are small and simple. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-6-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: merge InitLed871x and rtl8188eu_InitSwLedsMartin Kaiser2-11/+4
Copy InitLed871x into rtl8188eu_InitSwLeds. There's no need for two separate functions. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-5-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: move (de)init functions from hal to rtw_ledMartin Kaiser8-50/+21
Move the led init and deinit functions from the hal layer to rtw_led.c. rtl8188eu_led.c and rtl8188e_led.h can now be removed. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-4-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: move SwLedOn and SwLedOff into rtw_led.cMartin Kaiser3-35/+31
Move the low-level functions SwLedOn and SwLedOff from the hal layer into rtw_led.c. This is the only place where they're used. There's no need to go through the hal layer for a simple register access if the driver supports only a single chipset. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-3-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: switch the led off during deinitMartin Kaiser1-0/+1
When the driver is unloaded or when the system goes into standby mode, DeInitLed871x is called to stop the led layer. In this case, we stop the blinking worker but we do not switch the led off explicitly. On my system, I can go into standby mode with the LED enabled. Add a call to SwLedOff to fix this. Fixes: 15865124feed ("staging: r8188eu: introduce new core dir for RTL8188eu driver") Cc: stable@vger.kernel.org Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211226195556.159471-2-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: vt6655: drop off byRxMode var in device.hTommaso Merciai1-2/+0
Drop off unused variable byRxMode in device.h Signed-off-by: Tommaso Merciai <tomm.merciai@gmail.com> Link: https://lore.kernel.org/r/20211225173500.5459-1-tomm.merciai@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: most: dim2: use consistent routine namingNikita Yushchenko1-13/+13
Rename init routines and enum values to reflect that those are for Renesas R-Car Gen2 and R-Car Gen3 SoCs. Signed-off-by: Nikita Yushchenko <nikita.yoush@cogentembedded.com> Link: https://lore.kernel.org/r/20211226082530.2245198-3-nikita.yoush@cogentembedded.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: most: dim2: update renesas compatible stringNikita Yushchenko1-1/+1
Use "renesas,rcar-gen3-mlp" instead of "rcar,medialb-dim2" - the documented vendor prefix for Renesas is "renesas," - existing r-car devices use "rcar-genN-XXX" pattern. There are currently no in-tree users to update. Signed-off-by: Nikita Yushchenko <nikita.yoush@cogentembedded.com> Link: https://lore.kernel.org/r/20211226082530.2245198-2-nikita.yoush@cogentembedded.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: r8188eu: include variable declarations from Hal8188EPwrSeq.hAbdun Nihaal1-1/+1
Variable declarations of rtl8188E_power_on_flow, rtl8188E_card_disable_flow and rtl8188E_enter_lps_flow are present in Hal8188EPwrSeq.h. A previous commit changed Hal8188EPwrSeq.c to include HalPwrSeqCmd.h directly instead of Hal8188EPwrSeq.h, causing these sparse warnings: - symbol 'rtl8188E_power_on_flow' was not declared. Should it be static? - symbol 'rtl8188E_card_disable_flow' was not declared.Should it be static? - symbol 'rtl8188E_enter_lps_flow' was not declared. Should it be static? This patch reverts the include line to include the declarations. Fixes: 4f458ec5f497 ("staging: r8188: move the steps into Hal8188EPwrSeq.c") Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Abdun Nihaal <abdun.nihaal@gmail.com> Link: https://lore.kernel.org/r/20211224121043.175650-1-abdun.nihaal@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: rtl8723bs: removed unused if blocksIsmayil Mirzali1-5/+0
Deleted the commented if blocks that weren't being used as suggested by the maintainers. Signed-off-by: Ismayil Mirzali <ismayilmirzeli@gmail.com> Link: https://lore.kernel.org/r/b4652b7490f3574445d567ef662270605533bfa4.1640197297.git.ismayilmirzeli@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: pi433: remove unnecessary parentheses pointed out by checkpatch.plPaulo Miguel Almeida1-3/+3
Checkpatch reports 'Unnecessary parentheses around <lines>'. Fix this by removing extraneous parentheses where applicable. Signed-off-by: Paulo Miguel Almeida <paulo.miguel.almeida.rodenas@gmail.com> Link: https://lore.kernel.org/r/20211222070256.GA7644@localhost.localdomain Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-28staging: vc04_services: Remove repeated word in vchiq log warningGautam Menghani1-1/+1
In a log warning in vhciq code, the word 'count' is repeated twice. Remove repeated word 'count' from vhciq log warning. This change has been suggested by checkpatch.pl Signed-off-by: Gautam Menghani <gautammenghani14@gmail.com> Link: https://lore.kernel.org/r/20211228101615.5073-1-gautammenghani14@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: greybus: fix stack size warning with UBSANArnd Bergmann1-47/+45
clang warns about excessive stack usage in this driver when UBSAN is enabled: drivers/staging/greybus/audio_topology.c:977:12: error: stack frame size of 1836 bytes in function 'gbaudio_tplg_create_widget' [-Werror,-Wframe-larger-than=] Rework this code to no longer use compound literals for initializing the structure in each case, but instead keep the common bits in a preallocated constant array and copy them as needed. Link: https://github.com/ClangBuiltLinux/linux/issues/1535 Link: https://lore.kernel.org/r/20210103223541.2790855-1-arnd@kernel.org/ Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Reviewed-by: Alex Elder <elder@linaro.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de> [nathan: Address review comments from v1] Signed-off-by: Nathan Chancellor <nathan@kernel.org> Link: https://lore.kernel.org/r/20211209195141.1165233-1-nathan@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: move the steps into Hal8188EPwrSeq.cMartin Kaiser2-58/+33
Move the power transition steps into Hal8188EPwrSeq.c where the arrays are defined. There's no point in having defines for sequences of steps in the include file. All of these sequences are used only once (apart from the end sequence). Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211219183926.4746-10-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: reformat the power transition stepsMartin Kaiser1-46/+38
Clean up the definitions of the power transition steps and address some checkpatch warnings. Reduce the line lengths where possible. Add spaces between elements. Rewrite comments that are in contradiction with the definition they describe. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211219183926.4746-9-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: remove unused power commandMartin Kaiser1-5/+0
None of the remaining power transition steps used PWR_CMD_READ. It can be removed. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211219183926.4746-8-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: remove base address from power transitionsMartin Kaiser2-44/+33
Remove the base entry from the power transition steps. This field is not used. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211219183926.4746-7-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: remove interface mask from power transitionsMartin Kaiser4-92/+76
For the r8188 driver, we always have a usb interface. We can remove the power transition steps that are not applicable for a usb interface. We can then remove the interface mask itself. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211219183926.4746-6-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: remove fab mask from power transitionsMartin Kaiser4-55/+43
Remove the fab mask from the steps of the power transitions. The fab mask is not used, all values are allowed for all steps. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211219183926.4746-5-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: remove cut mask from power transitionsMartin Kaiser4-58/+42
Remove the power cut mask from the steps of the power transitions. The power cut mask is not used, all values are allowed for all steps. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211219183926.4746-4-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: remove sizes from power transition arraysMartin Kaiser2-12/+6
There's no need to set the array size explicitly if an array is initialized with a constant value. Remove the array sizes and related definitions for the power transition arrays. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211219183926.4746-3-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: remove unused power transitionsMartin Kaiser2-128/+4
The r8188 driver defines a number of transitions between different power states. Remove the transitions which are not used by the rest of the code. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211219183926.4746-2-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: ODM_BB_RA_MASK is always setMartin Kaiser3-6/+1
Remove the ODM_BB_RA_MASK capability. It is always set for this driver. Like for ODM_BB_DIG before, we can be sure that ODM_BB_RA_MASK was never checked before it was set. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211218120423.29906-10-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: ODM_BB_DIG is always setMartin Kaiser3-5/+2
Remove the ODM_BB_DIG capability. It is always set for this driver. (ODM_BB_DIG was set in Update_ODM_ComInfo_88E and checked in odm_DIG, which was always called after the capability was set.) Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211218120423.29906-9-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: remove unused odm capabilitiesMartin Kaiser2-10/+1
Remove odm capabilities which are either unused or set but never checked. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211218120423.29906-8-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: Bssid in struct fast_ant_train is set but not usedMartin Kaiser2-5/+1
Bssid in struct fast_ant_train is set but not used. Remove it. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211218120423.29906-7-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: antSumRSSI is set but not usedMartin Kaiser3-5/+2
antSumRSSI in struct fast_ant_train is set but not used. Remove it. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211218120423.29906-6-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: antRSSIcnt is set but not usedMartin Kaiser3-3/+0
antRSSIcnt in struct fast_ant_train is set but not used. Remove it. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211218120423.29906-5-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: antAveRSSI is set but not usedMartin Kaiser2-2/+0
antAveRSSI in struct fast_ant_train is set but not used. Remove it. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211218120423.29906-4-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-20staging: r8188: remove the dummy ioctl handlerMartin Kaiser1-17/+0
The r8188 driver installs a dummy handler for some unused ioctls. All that the dummy handler does is return -1. Remove the dummy handler and let the wext core handle unused ioctls. This way, user space gets a consistent errno for an unused wext ioctl, regardless of which driver is used for the interface. Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20211218120423.29906-3-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>