diff options
author | Thierry Reding <thierry.reding@avionic-design.de> | 2013-02-28 08:08:01 +0100 |
---|---|---|
committer | Thierry Reding <treding@nvidia.com> | 2013-10-31 09:55:45 +0100 |
commit | 5f60ed0d840d53e9d65aa54e1a5365af8ce2769e (patch) | |
tree | 7c41cdd661bb768d54ad3c0c22c1c894b05df09c /drivers/gpu/drm/tegra/drm.c | |
parent | c40f0f1afcb1dcce7f9fd978fbbc8d8d68cf5e84 (diff) | |
download | blackbird-op-linux-5f60ed0d840d53e9d65aa54e1a5365af8ce2769e.tar.gz blackbird-op-linux-5f60ed0d840d53e9d65aa54e1a5365af8ce2769e.zip |
drm/tegra: Add 3D support
Initialize and power the 3D unit on Tegra20, Tegra30 and Tegra114 and
register a channel with the Tegra DRM driver so that the unit can be
used from userspace.
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'drivers/gpu/drm/tegra/drm.c')
-rw-r--r-- | drivers/gpu/drm/tegra/drm.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/gpu/drm/tegra/drm.c b/drivers/gpu/drm/tegra/drm.c index 6f42f1692f29..26a2903879d8 100644 --- a/drivers/gpu/drm/tegra/drm.c +++ b/drivers/gpu/drm/tegra/drm.c @@ -615,10 +615,13 @@ static const struct of_device_id host1x_drm_subdevs[] = { { .compatible = "nvidia,tegra20-dc", }, { .compatible = "nvidia,tegra20-hdmi", }, { .compatible = "nvidia,tegra20-gr2d", }, + { .compatible = "nvidia,tegra20-gr3d", }, { .compatible = "nvidia,tegra30-dc", }, { .compatible = "nvidia,tegra30-hdmi", }, { .compatible = "nvidia,tegra30-gr2d", }, + { .compatible = "nvidia,tegra30-gr3d", }, { .compatible = "nvidia,tegra114-hdmi", }, + { .compatible = "nvidia,tegra114-gr3d", }, { /* sentinel */ } }; @@ -649,8 +652,14 @@ static int __init host1x_drm_init(void) if (err < 0) goto unregister_hdmi; + err = platform_driver_register(&tegra_gr3d_driver); + if (err < 0) + goto unregister_gr2d; + return 0; +unregister_gr2d: + platform_driver_unregister(&tegra_gr2d_driver); unregister_hdmi: platform_driver_unregister(&tegra_hdmi_driver); unregister_dc: @@ -663,6 +672,7 @@ module_init(host1x_drm_init); static void __exit host1x_drm_exit(void) { + platform_driver_unregister(&tegra_gr3d_driver); platform_driver_unregister(&tegra_gr2d_driver); platform_driver_unregister(&tegra_hdmi_driver); platform_driver_unregister(&tegra_dc_driver); |