Skip to content

Commit

Permalink
wifi: rtw88: usb: Simplify rtw_usb_write_data
Browse files Browse the repository at this point in the history
The skb created in this function always has the same headroom,
the chip's TX descriptor size. (pkt_info->offset is set by
rtw_usb_write_data_rsvd_page() to chip->tx_pkt_desc_sz.) Use
chip->tx_pkt_desc_sz directly.

Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com>
Tested-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://msgid.link/2479507e-3946-492f-857e-83e54969aad2@gmail.com
  • Loading branch information
Bitterblue Smith authored and Ping-Ke Shih committed May 9, 2024
1 parent d0bcb10 commit a892f6f
Showing 1 changed file with 5 additions and 7 deletions.
12 changes: 5 additions & 7 deletions drivers/net/wireless/realtek/rtw88/usb.c
Original file line number Diff line number Diff line change
Expand Up @@ -433,23 +433,21 @@ static int rtw_usb_write_data(struct rtw_dev *rtwdev,
{
const struct rtw_chip_info *chip = rtwdev->chip;
struct sk_buff *skb;
unsigned int desclen, headsize, size;
unsigned int size;
u8 qsel;
int ret = 0;

size = pkt_info->tx_pkt_size;
qsel = pkt_info->qsel;
desclen = chip->tx_pkt_desc_sz;
headsize = pkt_info->offset ? pkt_info->offset : desclen;

skb = dev_alloc_skb(headsize + size);
skb = dev_alloc_skb(chip->tx_pkt_desc_sz + size);
if (unlikely(!skb))
return -ENOMEM;

skb_reserve(skb, headsize);
skb_reserve(skb, chip->tx_pkt_desc_sz);
skb_put_data(skb, buf, size);
skb_push(skb, headsize);
memset(skb->data, 0, headsize);
skb_push(skb, chip->tx_pkt_desc_sz);
memset(skb->data, 0, chip->tx_pkt_desc_sz);
rtw_tx_fill_tx_desc(pkt_info, skb);
rtw_tx_fill_txdesc_checksum(rtwdev, pkt_info, skb->data);

Expand Down

0 comments on commit a892f6f

Please sign in to comment.