blob: 3dc54f59cafee1d72dc2f2dd852c18f70b9326e3 [file] [log] [blame]
Thomas Gleixnerd2912cb2019-06-04 10:11:33 +02001// SPDX-License-Identifier: GPL-2.0-only
Thierry Redinga2686762014-07-16 14:01:44 +02002/*
3 * Copyright (C) 2014 NVIDIA CORPORATION. All rights reserved.
Thierry Redinga2686762014-07-16 14:01:44 +02004 */
5
6#include <linux/of.h>
7
8#include <soc/tegra/common.h>
9
10static const struct of_device_id tegra_machine_match[] = {
11 { .compatible = "nvidia,tegra20", },
12 { .compatible = "nvidia,tegra30", },
13 { .compatible = "nvidia,tegra114", },
14 { .compatible = "nvidia,tegra124", },
Thierry Redingad09c8c2015-03-23 11:28:53 +010015 { .compatible = "nvidia,tegra132", },
Thierry Reding3a369982015-03-23 11:29:25 +010016 { .compatible = "nvidia,tegra210", },
Thierry Redinga2686762014-07-16 14:01:44 +020017 { }
18};
19
20bool soc_is_tegra(void)
21{
Yangtao Li9eb40fa2018-11-21 07:49:12 -050022 const struct of_device_id *match;
Thierry Redinga2686762014-07-16 14:01:44 +020023 struct device_node *root;
24
25 root = of_find_node_by_path("/");
26 if (!root)
27 return false;
28
Yangtao Li9eb40fa2018-11-21 07:49:12 -050029 match = of_match_node(tegra_machine_match, root);
30 of_node_put(root);
31
32 return match != NULL;
Thierry Redinga2686762014-07-16 14:01:44 +020033}