18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Copyright (C) 2014 NVIDIA CORPORATION. All rights reserved. 48c2ecf20Sopenharmony_ci */ 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci#include <linux/of.h> 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci#include <soc/tegra/common.h> 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_cistatic const struct of_device_id tegra_machine_match[] = { 118c2ecf20Sopenharmony_ci { .compatible = "nvidia,tegra20", }, 128c2ecf20Sopenharmony_ci { .compatible = "nvidia,tegra30", }, 138c2ecf20Sopenharmony_ci { .compatible = "nvidia,tegra114", }, 148c2ecf20Sopenharmony_ci { .compatible = "nvidia,tegra124", }, 158c2ecf20Sopenharmony_ci { .compatible = "nvidia,tegra132", }, 168c2ecf20Sopenharmony_ci { .compatible = "nvidia,tegra210", }, 178c2ecf20Sopenharmony_ci { } 188c2ecf20Sopenharmony_ci}; 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_cibool soc_is_tegra(void) 218c2ecf20Sopenharmony_ci{ 228c2ecf20Sopenharmony_ci const struct of_device_id *match; 238c2ecf20Sopenharmony_ci struct device_node *root; 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci root = of_find_node_by_path("/"); 268c2ecf20Sopenharmony_ci if (!root) 278c2ecf20Sopenharmony_ci return false; 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci match = of_match_node(tegra_machine_match, root); 308c2ecf20Sopenharmony_ci of_node_put(root); 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci return match != NULL; 338c2ecf20Sopenharmony_ci} 34