drm/msm: rework binding of Imageon GPUs
authorDmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Sat, 5 Jul 2025 10:02:34 +0000 (13:02 +0300)
committerRob Clark <robin.clark@oss.qualcomm.com>
Sat, 5 Jul 2025 14:13:35 +0000 (07:13 -0700)
commit643515a9cd091b2a3eff18fdd5caa30c5d816889
tree5d57514d7f3e39995e515e095c685a52389bb038
parent27c3547323ebfdcc11e36deedbc78237e7dff352
drm/msm: rework binding of Imageon GPUs

Currently the msm driver creates an extra interim platform device for
Imageon GPUs. This is not ideal, as the device doesn't have
corresponding OF node. If the headless mode is used for newer GPUs, then
the msm_use_mmu() function can not detect corresponding IOMMU devices.
Also the DRM device (although it's headless) is created with modesetting
flags being set.

To solve all these issues, rework the way the Imageon devices are bound.
Remove the interim device, don't register a component and instead use a
cut-down version of the normal functions to probe or remove the driver.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Patchwork: https://patchwork.freedesktop.org/patch/662584/
Signed-off-by: Rob Clark <robin.clark@oss.qualcomm.com>
drivers/gpu/drm/msm/adreno/adreno_device.c
drivers/gpu/drm/msm/msm_drv.c
drivers/gpu/drm/msm/msm_drv.h