Commit 00ec12b8 authored by Rupesh Gujare's avatar Rupesh Gujare Committed by Greg Kroah-Hartman

staging: ozwpan: set last_pkt_nb

In case of trigeered ISOC mode set last_pkt_nb only when
we are ready to send data.
Signed-off-by: default avatarRupesh Gujare <rgujare@ozmodevices.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent fec9f24b
...@@ -419,6 +419,14 @@ void oz_set_more_bit(struct sk_buff *skb) ...@@ -419,6 +419,14 @@ void oz_set_more_bit(struct sk_buff *skb)
struct oz_hdr *oz_hdr = (struct oz_hdr *)skb_network_header(skb); struct oz_hdr *oz_hdr = (struct oz_hdr *)skb_network_header(skb);
oz_hdr->control |= OZ_F_MORE_DATA; oz_hdr->control |= OZ_F_MORE_DATA;
} }
/*------------------------------------------------------------------------------
* Context: softirq-serialized
*/
void oz_set_last_pkt_nb(struct oz_pd *pd, struct sk_buff *skb)
{
struct oz_hdr *oz_hdr = (struct oz_hdr *)skb_network_header(skb);
oz_hdr->last_pkt_num = pd->trigger_pkt_num & OZ_LAST_PN_MASK;
}
/*------------------------------------------------------------------------------ /*------------------------------------------------------------------------------
* Context: softirq * Context: softirq
*/ */
...@@ -537,6 +545,7 @@ static int oz_send_next_queued_frame(struct oz_pd *pd, int more_data) ...@@ -537,6 +545,7 @@ static int oz_send_next_queued_frame(struct oz_pd *pd, int more_data)
spin_unlock(&pd->tx_frame_lock); spin_unlock(&pd->tx_frame_lock);
if (more_data) if (more_data)
oz_set_more_bit(skb); oz_set_more_bit(skb);
oz_set_last_pkt_nb(pd, skb);
if ((int)atomic_read(&g_submitted_isoc) < if ((int)atomic_read(&g_submitted_isoc) <
OZ_MAX_SUBMITTED_ISOC) { OZ_MAX_SUBMITTED_ISOC) {
if (dev_queue_xmit(skb) < 0) { if (dev_queue_xmit(skb) < 0) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment