Commit Graph

740 Commits

Author SHA1 Message Date
Alex Forencich
c37d967de9 cndm: Add consumer pointer and arm bit to completion queue
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-09 14:50:07 -07:00
Alex Forencich
e514869d70 cndm: Clean up resource handling in datapath manager
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-09 00:56:27 -07:00
Alex Forencich
50ba1d4c89 cndm: Make IRQ assignments configurable, add IRQ rate limiter
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 21:21:09 -07:00
Alex Forencich
8773672f26 cndm: Board-level parameter cleanup
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 21:20:41 -07:00
Alex Forencich
9af793edc6 cndm: Parameter cleanup
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 17:39:28 -07:00
Alex Forencich
2bb2710bbd pcie: Add IRQ rate limit module and testbench
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 17:38:04 -07:00
Alex Forencich
86b9947794 stats: Clean up array init
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 14:43:31 -07:00
Alex Forencich
9ec5bd0190 ptp: Clean up array init
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 14:43:14 -07:00
Alex Forencich
3ac7484e16 pcie: Clean up array init
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 14:42:31 -07:00
Alex Forencich
bb278958b2 eth: Clean up array init
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 14:42:08 -07:00
Alex Forencich
4b7ca2a569 dma: Clean up array init
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 14:41:24 -07:00
Alex Forencich
9d701c9186 axi: Clean up array init
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 14:40:38 -07:00
Alex Forencich
f9a5d08365 apb: Clean up array init
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 14:40:11 -07:00
Alex Forencich
a59a4dfd84 cndm: Remove port count registers
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 01:22:52 -08:00
Alex Forencich
438c082f73 cndm: Read config in driver
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 01:22:36 -08:00
Alex Forencich
283ef97cec cndm: Initialize ID ROM differently to make Vivado happy
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 01:01:44 -08:00
Alex Forencich
e2823a65ef cndm: Read config in driver model
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-08 00:08:05 -08:00
Alex Forencich
dde401e095 cndm: Add config command to read config data from HW
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-07 23:12:40 -08:00
Alex Forencich
09f1b278e8 cndm: Make scratch registers more generic in datapath manager
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-07 23:12:02 -08:00
Alex Forencich
2e8f9f8731 cndm: Copy cndm-micro core logic as cndm-lite
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-06 21:07:25 -08:00
Alex Forencich
4a2b9dd10c dma: Fix incorrect width cast
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-06 20:39:10 -08:00
Alex Forencich
798756ac89 dma: Fix incorrect width cast
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-06 19:38:59 -08:00
Alex Forencich
41b87dc65c cndm: Set MAC clock frequency and rate in core testbench, remove commented out code
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-06 19:20:03 -08:00
Alex Forencich
f464a21e1d cndm: Parametrize core tests over PCIe interface width
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-06 19:19:53 -08:00
Alex Forencich
96630b8f61 cndm: Remove extraneous files from testbench file lists
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-06 18:04:14 -08:00
Alex Forencich
ce8da1bc59 cndm: Fully share SQ/RQ HW resources
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-06 15:23:20 -08:00
Alex Forencich
d0c9ae0637 cndm: Avoid using parameters from interfaces defined in the same module
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-06 15:06:12 -08:00
Alex Forencich
a46b012c91 cndm: Widen internal datapath to prevent CDC-related bottlenecks
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-06 15:04:12 -08:00
Alex Forencich
595d744aa4 cndm: Add qtype field to queue state to enable sharing
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-05 22:12:39 -08:00
Alex Forencich
8263ebab24 cndm: Move SQ/RQ state into distributed RAM
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-05 20:49:35 -08:00
Alex Forencich
7dbe6df56a cndm: Peel off queue management logic, store queue state in distributed RAM
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-05 18:04:43 -08:00
Alex Forencich
8f1c082174 cndm: Rework driver model to support multiple queues
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-05 16:50:33 -08:00
Alex Forencich
39c9dce0fa cndm: Check for queue allocation failures in the driver
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-05 15:47:03 -08:00
Alex Forencich
f8764d581d cndm: Check for queue allocation failures in the driver model
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-05 15:46:30 -08:00
Alex Forencich
cce4c4525e cndm: Move queue setup/teardown into netdev open/close
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-04 16:47:30 -08:00
Alex Forencich
f8f73ea570 cndm: Reorganize driver
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-04 01:19:37 -08:00
Alex Forencich
9f56b9febd cndm: Reorganize driver model
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-03 20:43:09 -08:00
Alex Forencich
6bf7240686 cndm: Rework desc/cpl mux/demux logic, add support for CQNs, implement queue allocation
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-03 18:09:38 -08:00
Alex Forencich
8494e734a8 axis: Add TID_ROUTE parameter to taxi_axis_demux to faciliate routing replies by TID
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-03 16:14:32 -08:00
Alex Forencich
4d8f0cfece cndm: Move control registers out of port module
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-03 13:31:16 -08:00
Alex Forencich
191f7940b3 cndm_proto: Use SV enums for state machines
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-03 12:05:35 -08:00
Alex Forencich
0ab7538e24 cndm: Use SV enums for state machines
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-03 12:05:14 -08:00
Alex Forencich
902996e3bd cndm: Add wmb to ensure command is fully written in mailbox before executing it
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-03 00:46:15 -08:00
Alex Forencich
0d4a030e3f cndm: Add PTP command
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-02 18:27:33 -08:00
Alex Forencich
14d35dd75f cndm: Add mutex for the command mailbox
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-02 15:30:43 -08:00
Alex Forencich
0f09b8bdaa cndm: Add register access command
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-02 00:33:31 -08:00
Alex Forencich
a3ef71ae87 cndm: Fix testbench command structs
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-01 23:33:51 -08:00
Alex Forencich
499a70982f prim: Fix single-clock TDP RAM inference
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-01 20:43:13 -08:00
Alex Forencich
32b073ade9 cndm: Fix widths
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-01 14:02:39 -08:00
Alex Forencich
e27b5c0b94 cndm: Initial implementation of command interface
Signed-off-by: Alex Forencich <alex@alexforencich.com>
2026-03-01 13:16:24 -08:00