Thread (7 messages) 7 messages, 3 authors, 1d ago

Re: [PATCH net-next 2/2] net: macb: configure ENST registers for all queues

From: Théo Lebrun <theo.lebrun@bootlin.com>
Date: 2026-07-24 18:06:38
Also in: lkml

Hello Vineeth,

On Fri Jul 24, 2026 at 6:32 AM CEST, Vineeth Karumanchi wrote:
The initial "tc" command was not overwriting the reset value of ENST
registers if only a subset of queues were configured, leading to an
invalid setup. To fix this, configure all queues unconditionally.
Unconfigured queues are zero-initialized via kcalloc(), ensuring a
complete and consistent configuration.
But if a subset of queues are configured, the remaining queues don't
have their ENST support enabled thanks to ENST_CONTROL and their ENST
per-queue register values aren't read? Or HW is broken and reads ENST
registers anyway? Or something else I misunderstood?

What reset value of ENST regs you observed that caused you trouble?
That info could make it into the commit message.
The queue_id field in struct macb_queue_enst_config becomes redundant
once the array is indexed by queue id, so drop it.

Key changes:
- Drop queue_id from struct macb_queue_enst_config
- Allocate enst_queue[] based on bp->num_queues instead of
  conf->num_entries
- Index enst_queue[] directly with the queue number
- Program ENST registers for all queues

Fixes: 89934dbf169e ("net: macb: Add TAPRIO traffic scheduling support")
Signed-off-by: Vineeth Karumanchi <redacted>
Thanks,

--
Théo Lebrun, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help