Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/6] platform/raspberrypi: Add Broadcom Videocore shared memory support
@ 2026-09-16 14:25 Jai Luthra
  2026-09-16 14:25 ` [PATCH v4 1/6] platform/raspberrypi: vchiq-mmal: Reset buffers_with_vpu on port_enable Jai Luthra
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Jai Luthra @ 2026-09-16 14:25 UTC (permalink / raw)
  To: Florian Fainelli, Raspberry Pi Kernel Maintenance,
	bcm-kernel-feedback-list, Greg Kroah-Hartman, Dave Stevenson,
	Phil Elwell, Hans Verkuil, Mauro Carvalho Chehab
  Cc: Stefan Wahren, Laurent Pinchart, Kieran Bingham, linux-arm-kernel,
	linux-kernel, linux-rpi-kernel, linux-media, Jai Luthra, stable,
	Dom Cobley, Alexander Winkowski, Juerg Haefliger

Hi,

The vc-sm-cma driver allows contiguous memory blocks to be imported into
the VideoCore VPU memory map. This series adds support for this driver
and changes to VCHIQ MMAL layer required to get it functional.

These changes have lived in the staging directory of the downstream
Raspberry Pi tree since quite some time, but are necessary for getting
the VCHIQ based peripherals like the ISP functional in mainline.

Thanks,
	Jai

Signed-off-by: Jai Luthra <jai.luthra@ideasonboard.com>
---
Changes in v4:
- Rebase on v7.3-rc1
- Use Dave's .com email in commits and comments
- Cut out all userspace import and VPU alloc code (from Dave)
- Link to v3: https://lore.kernel.org/r/20260717-b4-vc-sm-cma-v3-0-6c4e77804e5d@ideasonboard.com

Changes in v3:
- Rebase on v7.2-rc1
- Fix lkp bot errors with Kconfig dependencies
- Switch from kzalloc with sizeof to kzalloc_obj
- Link to v2: https://lore.kernel.org/r/20260105-b4-vc-sm-cma-v2-0-4daea749ced9@ideasonboard.com

Changes in v2:
- Drop patches that are not related to vc-sm-cma, or used for codec and
  not ISP, so that is v1 PATCH 1, 2, 4, 5, 6, 7, 8, 12
- Move v1 PATCH 11 to the top, adding a Fixes tag
- Don't use global singletons for storing `struct vchiq_device` in
  VCHIQ, instead converting the existing device drivers (audio) to be
  stored inside `struct vchiq_drv_mgmt`
- Update the vc-sm-cma driver to latest standards, like:
    - Replace MODULE_ALIAS call with a proper device id_table
    - Add kernel-doc comments for exported functions
    - Move exported functions to a header under include/linux for use in
      MMAL (and later V4L2 ISP and codec drivers)
    - Use xarray instead of deprecated idr to map an integer ID to
      imported/allocated buffer pointers
    - Drop unnecessary pr_debug calls
    - Replacing pr_xxx use with dev_xxx wherever possible
    - Clean up stray comments
- Link to v1: https://lore.kernel.org/r/20251031-b4-vc-sm-cma-v1-0-0dd5c0ec3f5c@ideasonboard.com

---
Dave Stevenson (5):
      platform/raspberrypi: vchiq-mmal: Reset buffers_with_vpu on port_enable
      platform/raspberrypi: Add VideoCore shared memory support
      platform/raspberrypi: vchiq-mmal: Use vc-sm-cma to support zero copy
      platform/raspberrypi: vchiq-mmal: Support sending data to MMAL ports
      platform/raspberrypi: vchiq: Register vc-sm-cma as a platform driver

Jai Luthra (1):
      platform/raspberrypi: vchiq: Store audio device in driver management struct

 MAINTAINERS                                        |   7 +
 drivers/platform/raspberrypi/Kconfig               |   2 +
 drivers/platform/raspberrypi/Makefile              |   1 +
 drivers/platform/raspberrypi/vc-sm-cma/Kconfig     |   9 +
 drivers/platform/raspberrypi/vc-sm-cma/Makefile    |   5 +
 drivers/platform/raspberrypi/vc-sm-cma/vc_sm.c     | 806 +++++++++++++++++++++
 drivers/platform/raspberrypi/vc-sm-cma/vc_sm.h     |  64 ++
 .../raspberrypi/vc-sm-cma/vc_sm_cma_vchi.c         | 510 +++++++++++++
 .../raspberrypi/vc-sm-cma/vc_sm_cma_vchi.h         |  64 ++
 .../platform/raspberrypi/vc-sm-cma/vc_sm_defs.h    | 298 ++++++++
 .../raspberrypi/vchiq-interface/vchiq_arm.c        |  13 +-
 drivers/platform/raspberrypi/vchiq-mmal/Kconfig    |   3 +-
 .../platform/raspberrypi/vchiq-mmal/mmal-common.h  |   4 +
 .../platform/raspberrypi/vchiq-mmal/mmal-vchiq.c   |  85 ++-
 .../platform/raspberrypi/vchiq-mmal/mmal-vchiq.h   |   1 +
 include/linux/raspberrypi/vc_sm_cma_ioctl.h        | 110 +++
 include/linux/raspberrypi/vc_sm_knl.h              |  76 ++
 include/linux/raspberrypi/vchiq_arm.h              |   9 +
 18 files changed, 2048 insertions(+), 19 deletions(-)
---
base-commit: e5e04726cdd043e309677071ab1b65a4b18f422b
change-id: 20251030-b4-vc-sm-cma-f6727c39cd25

Best regards,
-- 
Jai Luthra <jai.luthra@ideasonboard.com>



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2026-09-17 21:12 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-16 14:25 [PATCH v4 0/6] platform/raspberrypi: Add Broadcom Videocore shared memory support Jai Luthra
2026-09-16 14:25 ` [PATCH v4 1/6] platform/raspberrypi: vchiq-mmal: Reset buffers_with_vpu on port_enable Jai Luthra
2026-09-16 14:25 ` [PATCH v4 2/6] platform/raspberrypi: vchiq: Store audio device in driver management struct Jai Luthra
2026-09-16 14:25 ` [PATCH v4 3/6] platform/raspberrypi: Add VideoCore shared memory support Jai Luthra
2026-09-17 21:11   ` Stefan Wahren
2026-09-16 14:25 ` [PATCH v4 4/6] platform/raspberrypi: vchiq-mmal: Use vc-sm-cma to support zero copy Jai Luthra
2026-09-16 14:25 ` [PATCH v4 5/6] platform/raspberrypi: vchiq-mmal: Support sending data to MMAL ports Jai Luthra
2026-09-16 14:25 ` [PATCH v4 6/6] platform/raspberrypi: vchiq: Register vc-sm-cma as a platform driver Jai Luthra

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox