mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 05:48:40 +00:00
iommu/ipmmu-vmsa: Don't register as BUS IOMMU if machine doesn't have IPMMU-VMSA
This fixes kernel crashing on NVIDIA Tegra if kernel is compiled in a multiplatform configuration and IPMMU-VMSA driver is enabled. Cc: <stable@vger.kernel.org> # v3.20+ Signed-off-by: Dmitry Osipenko <digetx@gmail.com> Signed-off-by: Joerg Roedel <jroedel@suse.de>
This commit is contained in:
parent
15021d364d
commit
5c5c874114
1 changed files with 7 additions and 0 deletions
|
@ -1108,12 +1108,19 @@ static struct platform_driver ipmmu_driver = {
|
||||||
|
|
||||||
static int __init ipmmu_init(void)
|
static int __init ipmmu_init(void)
|
||||||
{
|
{
|
||||||
|
struct device_node *np;
|
||||||
static bool setup_done;
|
static bool setup_done;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
if (setup_done)
|
if (setup_done)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
np = of_find_matching_node(NULL, ipmmu_of_ids);
|
||||||
|
if (!np)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
of_node_put(np);
|
||||||
|
|
||||||
ret = platform_driver_register(&ipmmu_driver);
|
ret = platform_driver_register(&ipmmu_driver);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
Loading…
Reference in a new issue