b39d23153d
Ports Mesa rkt_task.c (fill_task + single-tile rkt_split_tasks branch) into rkt_matmul.c so the declared public API is now real: a plain (M,N,K) GEMM is mapped to a 1x1 conv and every low-level CNA/CORE/DPU field (banks, atomic count, line/surface strides, data entries, kernel/channel alignment) is derived from the NVDLA CBUF geometry (CBUF_BANKS=12, ENTRY=128, ATOMIC=16), then handed to the two emit stages. Single-tile only: shapes needing CBUF task-splitting return -1 rather than mis-emit. selftest now drives the unified builder as the primary path; it produces a buffer structurally identical to the hand-filled stage path (148 words, same PC/CNA/CORE/DPU histogram) and refuses an oversized split-required shape. Clean -Wall -Wextra, ALL PASS. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>