Commit fab823d8 authored by Vamsee Vardhan Thummala's avatar Vamsee Vardhan Thummala Committed by Thierry Reding
Browse files

gpu: host1x: Allow loading tegra-drm without enabled engines



Add support to register host1x devices without requiring subdevices.
This ensures syncpoint functionality remains available even when engine
subdevices are not present.

Add softdep for tegra-drm to make userspace interface available
without module autoloading through device tree entries.

Signed-off-by: default avatarVamsee Vardhan Thummala <vthummala@nvidia.com>
[mperttunen@nvidia.com: some rewording]
Signed-off-by: default avatarMikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20250708-host1x-allow-no-subdevs-v1-1-93c66c251f03@nvidia.com
parent 63d47cc6
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -471,6 +471,18 @@ static int host1x_device_add(struct host1x *host1x,

	mutex_unlock(&clients_lock);

	/*
	 * Add device even if there are no subdevs to ensure syncpoint functionality
	 * is available regardless of whether any engine subdevices are present
	 */
	if (list_empty(&device->subdevs)) {
		err = device_add(&device->dev);
		if (err < 0)
			dev_err(&device->dev, "failed to add device: %d\n", err);
		else
			device->registered = true;
	}

	return 0;
}

+1 −0
Original line number Diff line number Diff line
@@ -821,6 +821,7 @@ u64 host1x_get_dma_mask(struct host1x *host1x)
}
EXPORT_SYMBOL(host1x_get_dma_mask);

MODULE_SOFTDEP("post: tegra-drm");
MODULE_AUTHOR("Thierry Reding <thierry.reding@avionic-design.de>");
MODULE_AUTHOR("Terje Bergstrom <tbergstrom@nvidia.com>");
MODULE_DESCRIPTION("Host1x driver for Tegra products");