.../devicetree/bindings/media/ti,vip.yaml | 211 + MAINTAINERS | 3 +- drivers/media/platform/ti/Kconfig | 13 + drivers/media/platform/ti/vpe/Makefile | 2 + drivers/media/platform/ti/vpe/vip.c | 3824 +++++++++++++++++ drivers/media/platform/ti/vpe/vip.h | 719 ++++ drivers/media/platform/ti/vpe/vpdma.c | 32 + drivers/media/platform/ti/vpe/vpdma.h | 3 + 8 files changed, 4806 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
This patch series add support for the TI VIP video capture engine. 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. The first patch in this series updates the outdated MAINTAINERS entry for the TI VPE and CAL drivers. The subsequent three patches introduce support for the TI VIP (Video Input Port) driver. Link for v1: https://lore.kernel.org/all/20200522225412.29440-1-bparrot@ti.com/ The v1 patch series was posted in the year 2020. This v2 series resumes the effort to upstream VIP support by addressing all previous review comments Changelog: Changes in v2: - Remove array and just use hsync: true in bindings (Patch 3/5) - Remove array and use enum for bus width in bindings (Patch 3/5) - Use pattern properties since properties across ports are same (Patch 3/5) - Remove vip_dbg, vip_info, vip_err aliases and just use v4l2_dbg, v4l2_info and v4l2_err instead (Patch 4/5) - Remove color space information from vip_formats struct (Patch 4/5) - Use g_std instead of g_std_output (Patch 4/5) - Do not touch pix.priv (Patch 4/5) - Remove all comments with just register values (Patch 4/5) - Remove support for vidioc_default ioctl (Patch 4/5) - In case of any error while streaming, push all pending buffers to vb2 (Patch 4/5) - Address some minor comments made by Hans throughout the driver (Patch 4/5) - Update copyright year at various places v4l2-compliance output: https://gist.github.com/Yemike-Abhilash-Chandra/b0791cb465fadc11d4c995197cb22f29 v4l2-compliance cropping and composing tests are failing likely due to OV10635 sensor supporting several discrete frame sizes, fail: v4l2-test-formats.cpp(1560): node->frmsizes_count[pixfmt] > 1 Test logs: https://gist.github.com/Yemike-Abhilash-Chandra/98504ab56416aef38b851036aef5eeb1 Dale Farnsworth (2): dt-bindings: media: ti: vpe: Add bindings for Video Input Port media: ti-vpe: Add the VIP driver Yemike Abhilash Chandra (2): MAINTAINERS: Update maintainers of TI VPE and CAL Revert "media: platform: ti: Remove unused vpdma_update_dma_addr" .../devicetree/bindings/media/ti,vip.yaml | 211 + MAINTAINERS | 3 +- drivers/media/platform/ti/Kconfig | 13 + drivers/media/platform/ti/vpe/Makefile | 2 + drivers/media/platform/ti/vpe/vip.c | 3824 +++++++++++++++++ drivers/media/platform/ti/vpe/vip.h | 719 ++++ drivers/media/platform/ti/vpe/vpdma.c | 32 + drivers/media/platform/ti/vpe/vpdma.h | 3 + 8 files changed, 4806 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
Hi Yemike, On 16/07/2025 13:19, Yemike Abhilash Chandra wrote: > This patch series add support for the TI VIP video capture engine. > 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. > > The first patch in this series updates the outdated MAINTAINERS entry > for the TI VPE and CAL drivers. The subsequent three patches introduce > support for the TI VIP (Video Input Port) driver. I'll pick up the MAINTAINERS patch, but the others need more work, so v3 is needed for that. > > Link for v1: https://lore.kernel.org/all/20200522225412.29440-1-bparrot@ti.com/ > The v1 patch series was posted in the year 2020. This v2 series resumes the > effort to upstream VIP support by addressing all previous review comments > > Changelog: > Changes in v2: > - Remove array and just use hsync: true in bindings (Patch 3/5) > - Remove array and use enum for bus width in bindings (Patch 3/5) > - Use pattern properties since properties across ports are same (Patch 3/5) > - Remove vip_dbg, vip_info, vip_err aliases and just use v4l2_dbg, v4l2_info > and v4l2_err instead (Patch 4/5) > - Remove color space information from vip_formats struct (Patch 4/5) > - Use g_std instead of g_std_output (Patch 4/5) > - Do not touch pix.priv (Patch 4/5) > - Remove all comments with just register values (Patch 4/5) > - Remove support for vidioc_default ioctl (Patch 4/5) > - In case of any error while streaming, push all pending buffers to vb2 (Patch 4/5) > - Address some minor comments made by Hans throughout the driver (Patch 4/5) > - Update copyright year at various places > > v4l2-compliance output: https://gist.github.com/Yemike-Abhilash-Chandra/b0791cb465fadc11d4c995197cb22f29 Also run v4l2-compliance with the -s option to check compliance while streaming. Regards, Hans > > v4l2-compliance cropping and composing tests are failing likely > due to OV10635 sensor supporting several discrete frame sizes, > fail: v4l2-test-formats.cpp(1560): node->frmsizes_count[pixfmt] > 1 > > Test logs: https://gist.github.com/Yemike-Abhilash-Chandra/98504ab56416aef38b851036aef5eeb1 > > Dale Farnsworth (2): > dt-bindings: media: ti: vpe: Add bindings for Video Input Port > media: ti-vpe: Add the VIP driver > > Yemike Abhilash Chandra (2): > MAINTAINERS: Update maintainers of TI VPE and CAL > Revert "media: platform: ti: Remove unused vpdma_update_dma_addr" > > .../devicetree/bindings/media/ti,vip.yaml | 211 + > MAINTAINERS | 3 +- > drivers/media/platform/ti/Kconfig | 13 + > drivers/media/platform/ti/vpe/Makefile | 2 + > drivers/media/platform/ti/vpe/vip.c | 3824 +++++++++++++++++ > drivers/media/platform/ti/vpe/vip.h | 719 ++++ > drivers/media/platform/ti/vpe/vpdma.c | 32 + > drivers/media/platform/ti/vpe/vpdma.h | 3 + > 8 files changed, 4806 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 >
Hi Hans, Thanks for the review. On 25/08/25 20:04, Hans Verkuil wrote: > Hi Yemike, > > On 16/07/2025 13:19, Yemike Abhilash Chandra wrote: >> This patch series add support for the TI VIP video capture engine. >> 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. >> >> The first patch in this series updates the outdated MAINTAINERS entry >> for the TI VPE and CAL drivers. The subsequent three patches introduce >> support for the TI VIP (Video Input Port) driver. > > I'll pick up the MAINTAINERS patch, but the others need more work, so > v3 is needed for that. > Thanks, I am working on v3. I plan to incorporate the additional feedback you provided on the driver before submitting the v3. >> >> Link for v1: https://lore.kernel.org/all/20200522225412.29440-1-bparrot@ti.com/ >> The v1 patch series was posted in the year 2020. This v2 series resumes the >> effort to upstream VIP support by addressing all previous review comments >> >> Changelog: >> Changes in v2: >> - Remove array and just use hsync: true in bindings (Patch 3/5) >> - Remove array and use enum for bus width in bindings (Patch 3/5) >> - Use pattern properties since properties across ports are same (Patch 3/5) >> - Remove vip_dbg, vip_info, vip_err aliases and just use v4l2_dbg, v4l2_info >> and v4l2_err instead (Patch 4/5) >> - Remove color space information from vip_formats struct (Patch 4/5) >> - Use g_std instead of g_std_output (Patch 4/5) >> - Do not touch pix.priv (Patch 4/5) >> - Remove all comments with just register values (Patch 4/5) >> - Remove support for vidioc_default ioctl (Patch 4/5) >> - In case of any error while streaming, push all pending buffers to vb2 (Patch 4/5) >> - Address some minor comments made by Hans throughout the driver (Patch 4/5) >> - Update copyright year at various places >> >> v4l2-compliance output: https://gist.github.com/Yemike-Abhilash-Chandra/b0791cb465fadc11d4c995197cb22f29 > > Also run v4l2-compliance with the -s option to check compliance while streaming. > Thanks for pointing this out. Will run as part of v3. Thanks and Regards, Yemike Abhilash Chandra > Regards, > > Hans > >> >> v4l2-compliance cropping and composing tests are failing likely >> due to OV10635 sensor supporting several discrete frame sizes, >> fail: v4l2-test-formats.cpp(1560): node->frmsizes_count[pixfmt] > 1 >> >> Test logs: https://gist.github.com/Yemike-Abhilash-Chandra/98504ab56416aef38b851036aef5eeb1 >> >> Dale Farnsworth (2): >> dt-bindings: media: ti: vpe: Add bindings for Video Input Port >> media: ti-vpe: Add the VIP driver >> >> Yemike Abhilash Chandra (2): >> MAINTAINERS: Update maintainers of TI VPE and CAL >> Revert "media: platform: ti: Remove unused vpdma_update_dma_addr" >> >> .../devicetree/bindings/media/ti,vip.yaml | 211 + >> MAINTAINERS | 3 +- >> drivers/media/platform/ti/Kconfig | 13 + >> drivers/media/platform/ti/vpe/Makefile | 2 + >> drivers/media/platform/ti/vpe/vip.c | 3824 +++++++++++++++++ >> drivers/media/platform/ti/vpe/vip.h | 719 ++++ >> drivers/media/platform/ti/vpe/vpdma.c | 32 + >> drivers/media/platform/ti/vpe/vpdma.h | 3 + >> 8 files changed, 4806 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 >> >
© 2016 - 2025 Red Hat, Inc.