[PATCH v3 9/9] platform/raspberrypi: vchiq: Load bcm2835_isp driver from vchiq
From: Jai Luthra
Date: Fri Jul 17 2026 - 07:19:03 EST
From: Naushir Patuck <naush@xxxxxxxxxxxxxxx>
Broadcom BCM2835 ISP driver is managed through the VCHIQ interface, so
register it to the VCHIQ driver, similar to the audio and shared memory
drivers.
Signed-off-by: Naushir Patuck <naush@xxxxxxxxxxxxxxx>
Signed-off-by: Jai Luthra <jai.luthra@xxxxxxxxxxxxxxxx>
---
drivers/platform/raspberrypi/vchiq-interface/vchiq_arm.c | 2 ++
include/linux/raspberrypi/vchiq_arm.h | 1 +
2 files changed, 3 insertions(+)
diff --git a/drivers/platform/raspberrypi/vchiq-interface/vchiq_arm.c b/drivers/platform/raspberrypi/vchiq-interface/vchiq_arm.c
index ec951ab19d67..f35b40bdd963 100644
--- a/drivers/platform/raspberrypi/vchiq-interface/vchiq_arm.c
+++ b/drivers/platform/raspberrypi/vchiq-interface/vchiq_arm.c
@@ -1415,6 +1415,7 @@ static int vchiq_probe(struct platform_device *pdev)
mgmt->audio_dev = vchiq_device_register(&pdev->dev, "bcm2835-audio");
mgmt->vcsm_cma_dev = vchiq_device_register(&pdev->dev, "vcsm-cma");
+ mgmt->isp_dev = vchiq_device_register(&pdev->dev, "bcm2835-isp");
return 0;
}
@@ -1423,6 +1424,7 @@ static void vchiq_remove(struct platform_device *pdev)
{
struct vchiq_drv_mgmt *mgmt = dev_get_drvdata(&pdev->dev);
+ vchiq_device_unregister(mgmt->isp_dev);
vchiq_device_unregister(mgmt->vcsm_cma_dev);
vchiq_device_unregister(mgmt->audio_dev);
vchiq_debugfs_deinit();
diff --git a/include/linux/raspberrypi/vchiq_arm.h b/include/linux/raspberrypi/vchiq_arm.h
index d59837eaaa8c..ea1bd419e471 100644
--- a/include/linux/raspberrypi/vchiq_arm.h
+++ b/include/linux/raspberrypi/vchiq_arm.h
@@ -63,6 +63,7 @@ struct vchiq_drv_mgmt {
*/
struct vchiq_device *audio_dev;
struct vchiq_device *vcsm_cma_dev;
+ struct vchiq_device *isp_dev;
};
struct user_service {
--
2.54.0