On 12/29/23 14:51, Bitterblue Smith wrote:
Currently rtl_usb performs register writes using the async
usb_submit_urb() function. This appears to work fine for the RTL8192CU,
but the RTL8192DU (soon to be supported by rtlwifi) has a problem:
it transmits everything at the 1M rate in the 2.4 GHz band. (The 5 GHZ
band is still untested.)
With this patch, rtl_usb performs the register writes using the
synchronous usb_control_msg() function, and the RTL8192DU works
normally. The RTL8192CU still works.
The vendor drivers use the async writes in only one function,
rtl8192du_trigger_gpio_0 / rtl8192cu_trigger_gpio_0, which probably
doesn't even run in real life. They use sync writes everywhere else.
Signed-off-by: Bitterblue Smith <rtl8821cerfe2@xxxxxxxxx>
---
Larry, do you remember why, back in 2011, you chose to implement the
async writes?
Bitterblue,
That was code provided by Realtek from their USB group. I think they were in
China, not Taiwan. At least the PCI and USB groups were in different countries.
They provided the code, and I just cleaned it up. tested it, and submitted it.
If the sync function works for the cu and du chips, go for it.
Larry