All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 00/11] platform/raspberrypi: Support vc-sm-cma and prepare for bcm2835-isp driver
@ 2026-11-12 11:17 Jai Luthra
  2026-11-12 11:17 ` [PATCH v5 01/11] platform/raspberrypi: vchiq-mmal: Reset buffers_with_vpu on port_enable Jai Luthra
                   ` (10 more replies)
  0 siblings, 11 replies; 23+ messages in thread
From: Jai Luthra @ 2026-11-12 11:17 UTC (permalink / raw)
  To: Stefan Wahren, Florian Fainelli, Dave Stevenson, Phil Elwell,
	Raspberry Pi Kernel Maintenance, bcm-kernel-feedback-list
  Cc: Martin Wetterwald, Greg Kroah-Hartman, Laurent Pinchart,
	Kieran Bingham, linux-arm-kernel, linux-kernel, linux-rpi-kernel,
	linux-media, Jai Luthra, stable, Dom Cobley, Alexander Winkowski,
	Juerg Haefliger, Paul Elder, Umang Jain

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.

To ease application of the patches by separate maintainers of the
platform tree and media tree, I've moved the VCHIQ dependencies for the
ISP driver from the v5 of the ISP series (linked in changelog) to this
series as [PATCH 7-11/11].

Stefan, Florian,

Would one of you be able to pick this series once it looks good to you?

Earlier VCHIQ lived in staging so Greg picked it up, but now that it is
destaged, I am not sure which tree is the correct one for this to land
in mainline.

Also, please let me know if you would like to be marked as a Maintainer
or Reviewer for the vc-sm-cma driver in the MAINTAINERS file?

Thanks,
    Jai

Signed-off-by: Jai Luthra <jai.luthra@ideasonboard.com>
---
Changes in v5:
- Rebase on v7.4-rc1
- Fix comments from Stefan
- Moved [PATCH 7-11/11] from the v5 of bcm2835-isp series
- Link to bcm2835-isp v5: https://lore.kernel.org/all/20260917-b4-vchiq-isp-v5-0-2d8870add2c0@ideasonboard.com/
- Link to v4: https://lore.kernel.org/r/20260916-b4-vc-sm-cma-v4-0-476d1142b5df@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 (6):
      platform/raspberrypi: vchiq: Store audio device in driver management struct
      platform/raspberrypi: vchiq-mmal: Include missing headers
      platform/raspberrypi: vchiq-mmal: Move headers to include/linux
      platform/raspberrypi: vchiq-mmal: Support ISP parameters and stats
      platform/raspberrypi: vchiq-mmal: Support bayer and gray formats
      platform/raspberrypi: vchiq: Add helpers for vchiq driver data

 MAINTAINERS                                        |   8 +
 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     | 810 +++++++++++++++++++++
 drivers/platform/raspberrypi/vc-sm-cma/vc_sm.h     |  64 ++
 .../raspberrypi/vc-sm-cma/vc_sm_cma_vchi.c         | 513 +++++++++++++
 .../raspberrypi/vc-sm-cma/vc_sm_cma_vchi.h         |  64 ++
 .../platform/raspberrypi/vc-sm-cma/vc_sm_defs.h    | 304 ++++++++
 .../raspberrypi/vchiq-interface/vchiq_arm.c        |  13 +-
 drivers/platform/raspberrypi/vchiq-mmal/Kconfig    |   3 +-
 .../platform/raspberrypi/vchiq-mmal/mmal-vchiq.c   |  92 ++-
 .../linux/raspberrypi}/mmal-common.h               |   8 +
 .../linux/raspberrypi}/mmal-encodings.h            |  67 ++
 .../linux/raspberrypi}/mmal-msg-common.h           |   0
 .../linux/raspberrypi}/mmal-msg-format.h           |   0
 .../linux/raspberrypi}/mmal-msg-port.h             |   0
 .../linux/raspberrypi}/mmal-msg.h                  |   0
 .../linux/raspberrypi}/mmal-parameters.h           |  86 +++
 .../linux/raspberrypi}/mmal-vchiq.h                |   1 +
 include/linux/raspberrypi/vc_sm_cma_ioctl.h        | 105 +++
 include/linux/raspberrypi/vc_sm_knl.h              |  76 ++
 include/linux/raspberrypi/vchiq_arm.h              |   9 +
 include/linux/raspberrypi/vchiq_bus.h              |  10 +
 25 files changed, 2227 insertions(+), 23 deletions(-)
---
base-commit: bc71431221f5ba8bb33918399552636e059c2c45
change-id: 20251030-b4-vc-sm-cma-f6727c39cd25

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



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

end of thread, other threads:[~2026-11-14  3:30 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-12 11:17 [PATCH v5 00/11] platform/raspberrypi: Support vc-sm-cma and prepare for bcm2835-isp driver Jai Luthra
2026-11-12 11:17 ` [PATCH v5 01/11] platform/raspberrypi: vchiq-mmal: Reset buffers_with_vpu on port_enable Jai Luthra
2026-11-14  3:28   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 02/11] platform/raspberrypi: vchiq: Store audio device in driver management struct Jai Luthra
2026-11-14  3:28   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 03/11] platform/raspberrypi: Add VideoCore shared memory support Jai Luthra
2026-11-14  3:28   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 04/11] platform/raspberrypi: vchiq-mmal: Use vc-sm-cma to support zero copy Jai Luthra
2026-11-14  3:29   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 05/11] platform/raspberrypi: vchiq-mmal: Support sending data to MMAL ports Jai Luthra
2026-11-14  3:29   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 06/11] platform/raspberrypi: vchiq: Register vc-sm-cma as a platform driver Jai Luthra
2026-11-14  3:25   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 07/11] platform/raspberrypi: vchiq-mmal: Include missing headers Jai Luthra
2026-11-14  3:26   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 08/11] platform/raspberrypi: vchiq-mmal: Move headers to include/linux Jai Luthra
2026-11-14  3:26   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 09/11] platform/raspberrypi: vchiq-mmal: Support ISP parameters and stats Jai Luthra
2026-11-14  3:26   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 10/11] platform/raspberrypi: vchiq-mmal: Support bayer and gray formats Jai Luthra
2026-11-14  3:26   ` Florian Fainelli
2026-11-12 11:18 ` [PATCH v5 11/11] platform/raspberrypi: vchiq: Add helpers for vchiq driver data Jai Luthra
2026-11-14  3:26   ` Florian Fainelli

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.