Search Linux Wireless

Re: wifi: rtw88: questions about adding support for RTL8723DS/RTL8723BS

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 5/18/23 12:13, Jernej Škrabec wrote:
Dne četrtek, 18. maj 2023 ob 19:00:14 CEST je Martin Blumenstingl napisal(a):
Hi Ping-Ke,

On Wed, May 17, 2023 at 4:06 AM Ping-Ke Shih <pkshih@xxxxxxxxxxx> wrote:

Hi Martin,

-----Original Message-----
From: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>
Sent: Wednesday, May 17, 2023 12:40 AM
To: Ping-Ke Shih <pkshih@xxxxxxxxxxx>; linux-wireless@xxxxxxxxxxxxxxx
Cc: Larry Finger <Larry.Finger@xxxxxxxxxxxx>; tony0620emma@xxxxxxxxx; jernej.skrabec@xxxxxxxxx
Subject: wifi: rtw88: questions about adding support for RTL8723DS/RTL8723BS

Hello Ping-Ke,

as a next step I want to add support for RTW_WCPU_11N SDIO cards to
the rtw88 driver.
Currently only one RTW_WCPU_11N chip is supported: RTL8723D by the
rtw88 (PCIe and USB HCIs).

Originally, we intended to add 8723D to rtlwifi, because it is a 802.11n chip
and very similar to 8723BE. However, its PCIe HCI is changed to use circular
ring instead of own bit, like other chips implemented in rtw88.
As far as I can tell such differences are not present in the SDIO HCI


My first question is very hopefully a simple one:
It seems that RTL8723DS has two SDIO IDs: 0xd723 and 0xd724.
Do these have the same name or is there some kind of "revision" (like
rev 2, revision B, ...) internally?

0xd723 is dual antenna, and 0xd724 is single antenna. Since 8723D is a
1x1 WiFi BT combo chip, 0xd723 can have a dedicated antenna for BT.
The main difference will be BT-coex code.
Awesome, thanks for the explanation. I sent patches to add RTL8723DS
support to the rtw88 driver.


My second question is more abstract:
Based on my understanding of the vendor drivers for RTL8723BS and
RTL8723DS both seem very close in terms of registers. initialization
sequence, ...
So I am hoping that it's possible to add RTL8723BS support to the rtw88 driver.
There's two main differences that I found so far:
- rtw_dump_hw_feature() doesn't work because REG_C2HEVT has an
incorrect value (C2H_HW_FEATURE_REPORT is expected but it still
contains C2H_HW_FEATURE_DUMP). It seems that this is a firmware issue.

Not an issue. At that moment of developing 8723B, applications are simple, so
we don't read feature from firmware, so just ignore this for 8723B.
Jernej also suggested this as a first step. So I guess it's the way to go.

[...]
Have you considered adding RTW8723B support to the rtw88 driver?
Do you have some initial suggestions on what would be needed to do so
(is my list from above complete, what do do about these points, ...)?

As my comment above, 8723BE use different PCIe design, and rtlwifi
has been supported it, so I don't have plan to support 8723BE in rtw88.
But, to add 8723BS to rtw88 seems workable.

To add 8723B, you can make a copy from 8723D and change settings along
with vendor driver. The main things you need to review are:
1. PCI probe when plugging wifi card
2. hardware initialization when interface up
3. RF calibration when starting connection (you may put this work later)
4. connection setting after connected
5. BT-coex you have mentioned


To make rtlwifi support SDIO is another way. It seems like add a HCI is
easier than an new chip, and we can have a simple support list of rtlwifi
and rtw88 eventually, like

         rtlwifi       rtw88
8723BE    o
8723BS    o?
8723DE                  o
8723DS                  o
Per chip support matrix is:
8723BE: rtlwifi
8723BU: rtl8xxxu
8723BS: staging driver which I'd like to replace
8723DE/U/S: rtw88

HCI support matrix:
rtlwifi: PCIe, USB
rtl8xxxu: USB
rtw88: PCIe, USB and SDIO

So it seems you are right: I should consider whether adding RTL8723BS
support to rtw88 is the right choice.

While rtw88 might not be best choice by above matrix, it seems to be most
featureful, stable and at least from what I saw, easiest to add new variants.

I'll do a bit of experiment with rtw88 to see how hard it would be...

Best regards,
Jernej

Now that RTL8192CU is being handled, the USB part of rtlwifi is being considered for deletion. If you decide in terms of adding RTL8723BS to rtlwifi, please let me know.

Larry





[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux