Commit Graph

7 Commits

Author SHA1 Message Date
morris
83c8ce73cf fix(bitscrambler): reject malformed program headers
Validate BitScrambler program headers against the supported format and
hardware limits before using header-derived instruction and LUT sizes.
Also add regression coverage for malformed headers and document that the
program blob must come from a trusted assembler output.
2026-07-28 16:26:49 +08:00
morris
c3a707d996 fix(bitscrambler): validate and safely load LUT data
Reject LUT loads that exceed the hardware address space and assemble
each 32-bit LUT word via memcpy so unaligned and partial inputs do not
read past the caller buffer. Add regression tests for oversized and
partial unaligned LUT loads.
2026-07-28 16:26:49 +08:00
morris
bc064a353a refactor(hal_dma): move bitscrambler from hal component
because bitscrambler can't live without DMA, it's highly binded with the
GDMA peripheral.
2025-11-21 16:10:16 +08:00
morris
d46019bf43 refactor(bitscrambler): don't use Reset Clock Control lock of RC version 2025-05-20 16:52:32 +08:00
Chen Jichang
39f6aeb536 feat(bitscrambler): add enable and disable function 2025-05-12 10:27:14 +08:00
morris
dc3f31adac refactor(bitscrambler): to use GDMA link API 2025-01-13 22:58:27 +08:00
Jeroen Domburg
a88e719e33 feat(driver): BitScrambler support
This adds an assembler for the BitScrambler assembly language,
plus unit tests for it. It also adds the loopback driver,
which can do BitScrambler operations on memory-to-memory
transfers. Documentation is also included.
2024-12-30 09:39:23 +08:00