2021-10-25 12:06:16

by Johan Hovold

[permalink] [raw]
Subject: [PATCH 3/4] rtl8187: fix control-message timeouts

USB control-message timeouts are specified in milliseconds and should
specifically not vary with CONFIG_HZ.

Fixes: 605bebe23bf6 ("[PATCH] Add rtl8187 wireless driver")
Cc: [email protected] # 2.6.23
Signed-off-by: Johan Hovold <[email protected]>
---
.../net/wireless/realtek/rtl818x/rtl8187/rtl8225.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8225.c b/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8225.c
index 585784258c66..4efab907a3ac 100644
--- a/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8225.c
+++ b/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8225.c
@@ -28,7 +28,7 @@ u8 rtl818x_ioread8_idx(struct rtl8187_priv *priv,
usb_control_msg(priv->udev, usb_rcvctrlpipe(priv->udev, 0),
RTL8187_REQ_GET_REG, RTL8187_REQT_READ,
(unsigned long)addr, idx & 0x03,
- &priv->io_dmabuf->bits8, sizeof(val), HZ / 2);
+ &priv->io_dmabuf->bits8, sizeof(val), 500);

val = priv->io_dmabuf->bits8;
mutex_unlock(&priv->io_mutex);
@@ -45,7 +45,7 @@ u16 rtl818x_ioread16_idx(struct rtl8187_priv *priv,
usb_control_msg(priv->udev, usb_rcvctrlpipe(priv->udev, 0),
RTL8187_REQ_GET_REG, RTL8187_REQT_READ,
(unsigned long)addr, idx & 0x03,
- &priv->io_dmabuf->bits16, sizeof(val), HZ / 2);
+ &priv->io_dmabuf->bits16, sizeof(val), 500);

val = priv->io_dmabuf->bits16;
mutex_unlock(&priv->io_mutex);
@@ -62,7 +62,7 @@ u32 rtl818x_ioread32_idx(struct rtl8187_priv *priv,
usb_control_msg(priv->udev, usb_rcvctrlpipe(priv->udev, 0),
RTL8187_REQ_GET_REG, RTL8187_REQT_READ,
(unsigned long)addr, idx & 0x03,
- &priv->io_dmabuf->bits32, sizeof(val), HZ / 2);
+ &priv->io_dmabuf->bits32, sizeof(val), 500);

val = priv->io_dmabuf->bits32;
mutex_unlock(&priv->io_mutex);
@@ -79,7 +79,7 @@ void rtl818x_iowrite8_idx(struct rtl8187_priv *priv,
usb_control_msg(priv->udev, usb_sndctrlpipe(priv->udev, 0),
RTL8187_REQ_SET_REG, RTL8187_REQT_WRITE,
(unsigned long)addr, idx & 0x03,
- &priv->io_dmabuf->bits8, sizeof(val), HZ / 2);
+ &priv->io_dmabuf->bits8, sizeof(val), 500);

mutex_unlock(&priv->io_mutex);
}
@@ -93,7 +93,7 @@ void rtl818x_iowrite16_idx(struct rtl8187_priv *priv,
usb_control_msg(priv->udev, usb_sndctrlpipe(priv->udev, 0),
RTL8187_REQ_SET_REG, RTL8187_REQT_WRITE,
(unsigned long)addr, idx & 0x03,
- &priv->io_dmabuf->bits16, sizeof(val), HZ / 2);
+ &priv->io_dmabuf->bits16, sizeof(val), 500);

mutex_unlock(&priv->io_mutex);
}
@@ -107,7 +107,7 @@ void rtl818x_iowrite32_idx(struct rtl8187_priv *priv,
usb_control_msg(priv->udev, usb_sndctrlpipe(priv->udev, 0),
RTL8187_REQ_SET_REG, RTL8187_REQT_WRITE,
(unsigned long)addr, idx & 0x03,
- &priv->io_dmabuf->bits32, sizeof(val), HZ / 2);
+ &priv->io_dmabuf->bits32, sizeof(val), 500);

mutex_unlock(&priv->io_mutex);
}
@@ -183,7 +183,7 @@ static void rtl8225_write_8051(struct ieee80211_hw *dev, u8 addr, __le16 data)
usb_control_msg(priv->udev, usb_sndctrlpipe(priv->udev, 0),
RTL8187_REQ_SET_REG, RTL8187_REQT_WRITE,
addr, 0x8225, &priv->io_dmabuf->bits16, sizeof(data),
- HZ / 2);
+ 500);

mutex_unlock(&priv->io_mutex);

--
2.32.0


2021-10-25 19:20:15

by Hin-Tak Leung

[permalink] [raw]
Subject: Re: [PATCH 3/4] rtl8187: fix control-message timeouts

> USB control-message timeouts are specified in milliseconds and should
> specifically not vary with CONFIG_HZ.

> Fixes: 605bebe23bf6 ("[PATCH] Add rtl8187 wireless driver")
> Cc: [email protected] # 2.6.23
> Signed-off-by: Johan Hovold <[email protected]>

Acked-by: Hin-Tak Leung <[email protected]>

> ---
> .../net/wireless/realtek/rtl818x/rtl8187/rtl8225.c | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)

> diff --git a/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8225.c b/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8225.c
> index 585784258c66..4efab907a3ac 100644
> --- a/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8225.c
> +++ b/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8225.c
> @@ -28,7 +28,7 @@ u8 rtl818x_ioread8_idx(struct rtl8187_priv *priv,
> usb_control_msg(priv->udev, usb_rcvctrlpipe(priv->udev, 0),
> RTL8187_REQ_GET_REG, RTL8187_REQT_READ,
> (unsigned long)addr, idx & 0x03,
> - &priv->io_dmabuf->bits8, sizeof(val), HZ / 2);
> + &priv->io_dmabuf->bits8, sizeof(val), 500);

Looks reasonable, although I would have preferred a common defined value taken from a common header, instead of a hard-coded 1/2 second.

2021-10-28 13:27:43

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH 3/4] rtl8187: fix control-message timeouts

Johan Hovold <[email protected]> wrote:

> USB control-message timeouts are specified in milliseconds and should
> specifically not vary with CONFIG_HZ.
>
> Fixes: 605bebe23bf6 ("[PATCH] Add rtl8187 wireless driver")
> Cc: [email protected] # 2.6.23
> Signed-off-by: Johan Hovold <[email protected]>

2 patches applied to wireless-drivers-next.git, thanks.

2e9be536a213 rtl8187: fix control-message timeouts
541fd20c3ce5 rsi: fix control-message timeout

--
https://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches