Janet AMEND-cycle re-review of v2 returned 2 surgical corrections:
A. OFFSET_POC_HIGHBIT_REGS is HEVC/H.264 only — POC isn't a VP9
concept. rkvdec-vdpu381-vp9.c writes 4 segments (COMMON,
CODEC_PARAMS, COMMON_ADDR, CODEC_ADDR), not 5. Confirmed via BSP
hal_vp9d_vdpu382.c — no poc_highbit reference anywhere in VP9
path.
B. Common-file split narrowed: only spec-computation functions
(probability init, segmap state, entropy update) move into a
rkvdec-vp9-common.h header as static-inline helpers. The
register-writing functions (config_seg_registers,
config_ref_registers, config_registers) STAY in legacy
rkvdec-vp9.c — they touch the legacy flat struct rkvdec_regs
and can't share with the new vdpu381 struct without abstracting
the register backend (over-engineering). The new backend
rewrites these against the vdpu381 struct.
Bonus implementation hint: VDPU381_MODE_VP9=2 is already defined in
rkvdec-vdpu381-regs.h:22 — Casanova's v7.0 series had VP9 in mind
from the start, just didn't ship a backend.
RCB sizing tuning deferred to Phase 6 (vp9d_refine_rcb_size formula
from BSP).
With both amendments applied, Janet's verdict carry-forward is
PROCEED. Phase 2 implementation begins next session.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>