[PATCH 8/8] staging: r8188eu: limit rf register writes to path a

From: Martin Kaiser
Date: Sat Feb 05 2022 - 06:38:22 EST


The r8188eu driver uses only RF_PATH_A.

At the moment, the only exception are private ioctls. It does not make
sense if these ioctls set registers that are not used anywhere else in
the driver.

This patch limits the private ioctl 0x0C, i.e. the rtw_wx_write_rf
function, to RF_PATH_A. For any other setting, we return an error
saying the parameter is invalid.

Signed-off-by: Martin Kaiser <martin@xxxxxxxxx>
---
drivers/staging/r8188eu/os_dep/ioctl_linux.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/staging/r8188eu/os_dep/ioctl_linux.c b/drivers/staging/r8188eu/os_dep/ioctl_linux.c
index c54ec5602ddf..c41d75666568 100644
--- a/drivers/staging/r8188eu/os_dep/ioctl_linux.c
+++ b/drivers/staging/r8188eu/os_dep/ioctl_linux.c
@@ -2083,6 +2083,9 @@ static int rtw_wx_write_rf(struct net_device *dev,
u32 path, addr, data32;

path = *(u32 *)extra;
+ if (path != RF_PATH_A)
+ return -EINVAL;
+
addr = *((u32 *)extra + 1);
data32 = *((u32 *)extra + 2);
rtl8188e_PHY_SetRFReg(padapter, path, addr, 0xFFFFF, data32);
--
2.30.2