Add V4L2 M2M Driver for E5010 JPEG Encoder
Subsystems (2)
v7 cover Add V4L2 M2M Driver for E5010 JPEG Encoder
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.
While adding support for it, following additional framework changes were made:
- Moved reference quantization and huffman tables provided in ITU-T-REC-T.81 to v4l2-jpeg.c as suggested in mailing list [1].
- Add macros to round to closest integer (either higher or lower) while rounding in order of 2.
v4l2-compliance test :
E5010 JPEG Encoder Manual tests :
Performance:
Functionality:
Compression Quality:
Multi Instance:
Crop support:
Runtime PM:
[1]:
https://lore.kernel.org/all/[email protected]/
Changelog:V6->V7:
- Fix cropping support
- Move reference huffman and quantization tables to v4l2-jpeg.c
- Fix suspend/resume use-case
Patch-Diff between the series :
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
V6->V7 Range diff :
https://gist.github.com/devarsht/1db185b1e187eaf397e9e4c37066777e
Previous patch series:
V2: https://lore.kernel.org/all/[email protected]/
V3: https://lore.kernel.org/all/[email protected]/
V4: https://lore.kernel.org/all/[email protected]/
V5: https://lore.kernel.org/all/[email protected]/
V6: https://lore.kernel.org/all/[email protected]/
Devarsh Thakkar (8):
media: dt-bindings: Add Imagination E5010 JPEG Encoder
media: imagination: Add E5010 JPEG Encoder driver
media: v4l2-jpeg: Export reference quantization and huffman tables
media: imagination: Use exported tables from v4l2-jpeg core
media: verisilcon : Use exported tables from v4l2-jpeg for hantro
codec
math.h Add macros to round to closest specified power of 2
media: imagination: Round to closest multiple for cropping region
gpu: ipu-v3: Use generic macro for rounding to nearest multiple
.../bindings/media/img,e5010-jpeg-enc.yaml | 75 + MAINTAINERS | 7 + drivers/gpu/ipu-v3/ipu-image-convert.c | 4 +- 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 | 1646 +++++++++++++++++ .../platform/imagination/e5010-jpeg-enc.h | 168 ++ .../platform/imagination/e5010-mmu-regs.h | 311 ++++ .../media/platform/verisilicon/hantro_jpeg.c | 128 +- drivers/media/v4l2-core/v4l2-jpeg.c | 162 +- include/linux/math.h | 36 + include/media/v4l2-jpeg.h | 11 + 17 files changed, 3341 insertions(+), 118 deletions(-) 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
Signature · 7 lines
2.39.1 _______________________________________________ Linux-rockchip mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-rockchip
Quoted 10 lines · Devarsh Thakkar
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.
While adding support for it, following additional framework changes were made:
- Moved reference quantization and huffman tables provided in ITU-T-REC-T.81 tov4l2-jpeg.cas suggested in mailing list [1].
- Add macros to round to closest integer (either higher or lower) while rounding in order of 2.
You have a problem with your emails. Either you missed --thread when preparing the series, or something wrong with your email setup / email servers you are using.
Signature · 2 lines
With Best Regards, Andy Shevchenko