This adds support for V4L2 M2M based driver for E5010 JPEG Encoder which is a stateful JPEG encoder from Imagination technologies and is present in TI AM62A SoC. v4l2-compliance test : Link: https://gist.github.com/devarsht/39c1197742cc858c38860e8cab61666d E5010 JPEG Encoder Manual tests : Performance: Link: https://gist.github.com/devarsht/2f9b30f28768d9f6e338fc5b7c1d1758 Functionality: Link: https://gist.github.com/devarsht/f12743405b285f47a0ce9b0f9681acd3 Compression Quality: Link: https://gist.github.com/devarsht/8fd9edbdbfda7b2f2fe464b17484ceaf Multi Instance: Link: https://gist.github.com/devarsht/dfcc17e85569bc05c62b069af82a289d Devarsh Thakkar (3): media: dt-bindings: Add Imagination E5010 JPEG Encoder media: jpeg: Add reference quantization and huffman tables media: imagination: Add E5010 JPEG Encoder driver --- Link to previous version of this series: V2: https://lore.kernel.org/all/20230727112546.2201995-1-devarsht@xxxxxx/ V3: https://lore.kernel.org/all/20230816152210.4080779-1-devarsht@xxxxxx/ V4: https://lore.kernel.org/all/20240205114239.924697-1-devarsht@xxxxxx/ V3->V4 Range diff : https://gist.github.com/devarsht/22a744d999080de6e813bcfb5a596272 V4->V5 Range diff : https://gist.github.com/devarsht/298790af819f299a0a05fec89371097b V5->V6 Range diff : https://gist.github.com/devarsht/c89180ac2b0d2814614f2b59d0705c19 .../bindings/media/img,e5010-jpeg-enc.yaml | 75 + MAINTAINERS | 7 + drivers/media/platform/Kconfig | 1 + drivers/media/platform/Makefile | 1 + drivers/media/platform/imagination/Kconfig | 12 + drivers/media/platform/imagination/Makefile | 3 + .../platform/imagination/e5010-core-regs.h | 585 +++++++ .../platform/imagination/e5010-jpeg-enc-hw.c | 267 +++ .../platform/imagination/e5010-jpeg-enc-hw.h | 42 + .../platform/imagination/e5010-jpeg-enc.c | 1553 +++++++++++++++++ .../platform/imagination/e5010-jpeg-enc.h | 169 ++ .../platform/imagination/e5010-mmu-regs.h | 311 ++++ include/media/jpeg-enc-reftables.h | 112 ++ include/media/jpeg.h | 4 + 14 files changed, 3142 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/img,e5010-jpeg-enc.yaml create mode 100644 drivers/media/platform/imagination/Kconfig create mode 100644 drivers/media/platform/imagination/Makefile create mode 100644 drivers/media/platform/imagination/e5010-core-regs.h create mode 100644 drivers/media/platform/imagination/e5010-jpeg-enc-hw.c create mode 100644 drivers/media/platform/imagination/e5010-jpeg-enc-hw.h create mode 100644 drivers/media/platform/imagination/e5010-jpeg-enc.c create mode 100644 drivers/media/platform/imagination/e5010-jpeg-enc.h create mode 100644 drivers/media/platform/imagination/e5010-mmu-regs.h create mode 100644 include/media/jpeg-enc-reftables.h -- 2.39.1