This patch series adds support for the TI VIP. VIP stands for Video
Input Port, it can be found on devices such as DRA7xx and provides
a parallel interface to a video source such as a sensor or TV decoder.
Each VIP can support two inputs (slices) and a SoC can be configured
with a variable number of VIP's. Each slice can support two ports
each connected to its own sub-device.
Note: The main intention behind updating this series is to address
the warnings reported by Media CI at [1].
[1]: https://linux-media.pages.freedesktop.org/-/users/patchwork/-/jobs/88224108/artifacts/report.htm
Changelog:
Changes in v7:
- Fix overflow warning by casting to u32 while doing reg_write in enable_irqs(). (Media CI)
- In function add_out_dtd(), initialize max_width and max_height by replacing else if
with else to avoid possible use of uninitialized variables warning. (Media CI)
- Add missing error code when video_device_alloc() fails in alloc_stream(). (Media CI)
- Fix inconsistent indentation in switch-case block in vip_probe_complete(). (Media CI)
- Correct pm_runtime_get_sync() handling in vip_probe() by checking ret < 0 instead of ret. (Media CI)
- Add missing goto path when we fail to ioremap in vip_probe() for proper error handling. (Media CI)
- Avoid passing zero to PTR_ERR() in vip_probe_slice() by using PTR_ERR_OR_ZERO(). (Media CI)
- Prevent possible NULL dereference in vip_process_buffer_complete() by using list_first_entry_or_null(). (Media CI)
v4l2-compliance output: https://gist.github.com/Yemike-Abhilash-Chandra/37fe86055f5f754d825dd18f739ee4c4
v4l2-compliance output with -s: https://gist.github.com/Yemike-Abhilash-Chandra/f53334765660eaa2fcb3b880596d4878
Test logs: https://gist.github.com/Yemike-Abhilash-Chandra/c95bd8aab9d8a43aa91286aab885f87c
Link for v6: https://lore.kernel.org/all/20251120091030.2081594-1-y-abhilashchandra@ti.com/
Note: The original author of the VIP is Dale. Benoit and Sukruth have also contributed to this
driver in various capacities in our downstream tree. Before starting the upstreaming effort,
I reached out to Dale, Benoit, and Sukruth and obtained their consent to retain their respective
Signed-off-by tags.
Dale Farnsworth (2):
dt-bindings: media: ti: vpe: Add support for Video Input Port
media: ti: vpe: Add the VIP driver
Yemike Abhilash Chandra (2):
media: ti: vpe: Re-introduce multi-instance and multi-client support
media: ti: vpe: Export vpdma_load_firmware() function
.../devicetree/bindings/media/ti,vip.yaml | 152 +
MAINTAINERS | 1 +
drivers/media/platform/ti/Kconfig | 13 +
drivers/media/platform/ti/vpe/Makefile | 2 +
drivers/media/platform/ti/vpe/vip.c | 3673 +++++++++++++++++
drivers/media/platform/ti/vpe/vip.h | 717 ++++
drivers/media/platform/ti/vpe/vpdma.c | 51 +-
drivers/media/platform/ti/vpe/vpdma.h | 6 +
8 files changed, 4614 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/media/ti,vip.yaml
create mode 100644 drivers/media/platform/ti/vpe/vip.c
create mode 100644 drivers/media/platform/ti/vpe/vip.h
--
2.34.1