diff options
author | 2023-04-05 22:07:22 +0200 | |
---|---|---|
committer | 2023-04-12 15:51:08 +0300 | |
commit | 65371a3f14e73979958aea0db1e3bb456a296149 (patch) | |
tree | f93b04230f45364302c3afefe0633c878d67e3d7 /include/linux/mmc | |
parent | wifi: rtw88: Clear RTW_FLAG_POWERON early in rtw_mac_power_switch() (diff) | |
download | wireguard-linux-65371a3f14e73979958aea0db1e3bb456a296149.tar.xz wireguard-linux-65371a3f14e73979958aea0db1e3bb456a296149.zip |
wifi: rtw88: sdio: Add HCI implementation for SDIO based chipsets
Add a sub-driver for SDIO based chipsets which implements the following
functionality:
- register accessors for 8, 16 and 32 bits for all states of the card
(including usage of 4x 8 bit access for one 32 bit buffer if the card
is not fully powered on yet - or if it's fully powered on then 1x 32
bit access is used)
- checking whether there's space in the TX FIFO queue to transmit data
- transfers from the host to the device for actual network traffic,
reserved pages (for firmware download) and H2C (host-to-card)
transfers
- receiving data from the device
- deep power saving state
The transmit path is optimized so DMA-capable SDIO host controllers can
directly use the buffers provided because the buffer's physical
addresses are 8 byte aligned.
The receive path is prepared to support RX aggregation where the
chipset combines multiple MAC frames into one bigger buffer to reduce
SDIO transfer overhead.
Co-developed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20230405200729.632435-3-martin.blumenstingl@googlemail.com
Diffstat (limited to 'include/linux/mmc')
0 files changed, 0 insertions, 0 deletions