On 2019-02-16 18:47, lorenzo@xxxxxxxxxx wrote: > From: Lorenzo Bianconi <lorenzo@xxxxxxxxxx> > > Move queue id dependency in driver specific tx queue initialization code > since new chipsets rely on a different tx queue enumeration scheme. > Add the possibility to specify qid in mt76_tx routine I've thought about this patch set some more, and I think we should take a different approach. If we simply map everything to the BE queue for MT7615, this breaks per-AC scheduling of intermediate tx queues. Because outstanding packet batches are currently tracked as part of the hardware queue, we can't track them separately per AC in that case. I would suggest the following approach instead. - add a pointer to struct mt76_queue to make it possible to set a parent queue - add a queue identifier to struct mt76_queue_entry - initialize only QID_AC_BE as a full hardware queue - point all other data queues to QID_AC_BE - use swq and swq_queued from the skb queue, all other fields (including the lock) from the parent queue Does that make sense? - Felix