[RFC/RFT 3/7] ath10k: replace send_head() with tx_sg()
Kalle Valo
kvalo at qca.qualcomm.com
Wed Feb 19 09:18:38 EST 2014
Michal Kazior <michal.kazior at tieto.com> writes:
> On 19 February 2014 13:48, Kalle Valo <kvalo at qca.qualcomm.com> wrote:
>> Michal Kazior <michal.kazior at tieto.com> writes:
>>
>>> +struct ath10k_hif_sg_item {
>>> + u16 transfer_id;
>>> + void *transfer_context;
>>> + void *vaddr; /* for debugging mostly */
>>> + u32 paddr;
>>> + u16 len;
>>> +};
>>
>> This is the part I don't like. Instead of adding our own structs we
>> instead should have everything in skb->cb and pass the skbs around. The
>> sad part was that last fall I was working on cleaning up that but never
>> found the time to finish it :(
>
> There's simply not enough room to keep it all in ath10k_skb_cb
> directly.
After my cleanups transfer_context was not used and when using sk_buffs
properly vaddr and len would be useless. So we would have only transfer
id and paddr left. And when I was working on this they did fit to cb.
> It doesn't really make any sense to keep it there anyway because
> sg_item is used as means to pass a complex function argument to
> sg_tx().
If we used skbs we would just give a list/queue of them and no need to
have any extra structs.
> The sg_item list is never used again.
Ok, that's better. At least then it's later easier to convert to proper
skbs.
--
Kalle Valo
More information about the ath10k
mailing list