Thierry Reding 425061b0f5 iommu/rockchip: Play nice in multi-platform builds
The Rockchip IOMMU driver unconditionally executes code and registers a
struct iommu_ops with the platform bus irrespective of whether it runs
on a Rockchip SoC or not. This causes problems in multi-platform kernels
where drivers for other SoCs will no longer be able to register their
own struct iommu_ops or even try to use a struct iommu_ops for an IOMMU
that obviously isn't there.

The smallest fix I could think of is to check for the existence of any
Rockchip IOMMU devices in the device tree and skip initialization
otherwise.

This fixes a problem on Tegra20 where the DRM driver will try to use the
obviously non-existent Rockchip IOMMU.

Reported-by: Nicolas Chauvet <kwizart@gmail.com>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Daniel Kurtz <djkurtz@chromium.org>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
2015-02-25 13:42:25 +01:00
..
2015-02-15 11:11:47 -08:00
2015-02-17 09:27:54 -08:00
2015-02-19 20:58:42 -06:00
2015-02-17 09:27:54 -08:00
2015-02-15 10:48:44 -08:00
2015-02-03 15:48:51 -08:00
2015-02-03 15:58:39 -08:00
2015-02-18 09:05:48 -08:00
2015-02-15 10:48:44 -08:00
2015-02-18 08:01:44 -08:00
2015-02-04 09:15:18 +01:00
2015-02-18 09:43:46 -08:00
2015-02-17 09:38:59 -08:00
2015-02-15 10:24:55 -08:00
2015-02-18 08:40:29 +01:00
2015-02-18 09:05:48 -08:00
2015-02-21 19:16:42 -08:00
2015-02-17 09:38:59 -08:00
2015-02-15 10:24:55 -08:00
2015-02-11 10:28:45 -08:00
2015-02-03 15:58:39 -08:00