mirror of
https://github.com/torvalds/linux.git
synced 2024-11-12 07:01:57 +00:00
rt2x00: Avoid unnecessary uncached
Reading the TX desciptor words from coherent memory is always uncached and potentially slow. Hence, don't read the TX descriptor prior to writing it since we update all fields anyway. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com> Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
5dada06cf1
commit
3de3d96600
@ -619,11 +619,11 @@ static void rt2800pci_write_tx_desc(struct queue_entry *entry,
|
||||
/*
|
||||
* Initialize TX descriptor
|
||||
*/
|
||||
rt2x00_desc_read(txd, 0, &word);
|
||||
word = 0;
|
||||
rt2x00_set_field32(&word, TXD_W0_SD_PTR0, skbdesc->skb_dma);
|
||||
rt2x00_desc_write(txd, 0, word);
|
||||
|
||||
rt2x00_desc_read(txd, 1, &word);
|
||||
word = 0;
|
||||
rt2x00_set_field32(&word, TXD_W1_SD_LEN1, entry->skb->len);
|
||||
rt2x00_set_field32(&word, TXD_W1_LAST_SEC1,
|
||||
!test_bit(ENTRY_TXD_MORE_FRAG, &txdesc->flags));
|
||||
@ -634,12 +634,12 @@ static void rt2800pci_write_tx_desc(struct queue_entry *entry,
|
||||
rt2x00_set_field32(&word, TXD_W1_DMA_DONE, 0);
|
||||
rt2x00_desc_write(txd, 1, word);
|
||||
|
||||
rt2x00_desc_read(txd, 2, &word);
|
||||
word = 0;
|
||||
rt2x00_set_field32(&word, TXD_W2_SD_PTR1,
|
||||
skbdesc->skb_dma + TXWI_DESC_SIZE);
|
||||
rt2x00_desc_write(txd, 2, word);
|
||||
|
||||
rt2x00_desc_read(txd, 3, &word);
|
||||
word = 0;
|
||||
rt2x00_set_field32(&word, TXD_W3_WIV,
|
||||
!test_bit(ENTRY_TXD_ENCRYPT_IV, &txdesc->flags));
|
||||
rt2x00_set_field32(&word, TXD_W3_QSEL, 2);
|
||||
|
Loading…
Reference in New Issue
Block a user