mirror of
https://github.com/torvalds/linux.git
synced 2024-11-23 12:42:02 +00:00
soc/tegra: Implement runtime check for Tegra SoCs
Subsequent patches will move some of the initialization code from SoC setup code to regular initcalls. To prevent breakage on other SoCs in multi-platform builds, these initcalls need to check that they indeed run on Tegra. Signed-off-by: Thierry Reding <treding@nvidia.com>
This commit is contained in:
parent
dd849e581d
commit
a2686766c8
@ -1 +1,3 @@
|
||||
obj-$(CONFIG_ARCH_TEGRA) += fuse/
|
||||
|
||||
obj-$(CONFIG_ARCH_TEGRA) += common.o
|
||||
|
30
drivers/soc/tegra/common.c
Normal file
30
drivers/soc/tegra/common.c
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* Copyright (C) 2014 NVIDIA CORPORATION. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <linux/of.h>
|
||||
|
||||
#include <soc/tegra/common.h>
|
||||
|
||||
static const struct of_device_id tegra_machine_match[] = {
|
||||
{ .compatible = "nvidia,tegra20", },
|
||||
{ .compatible = "nvidia,tegra30", },
|
||||
{ .compatible = "nvidia,tegra114", },
|
||||
{ .compatible = "nvidia,tegra124", },
|
||||
{ }
|
||||
};
|
||||
|
||||
bool soc_is_tegra(void)
|
||||
{
|
||||
struct device_node *root;
|
||||
|
||||
root = of_find_node_by_path("/");
|
||||
if (!root)
|
||||
return false;
|
||||
|
||||
return of_match_node(tegra_machine_match, root) != NULL;
|
||||
}
|
14
include/soc/tegra/common.h
Normal file
14
include/soc/tegra/common.h
Normal file
@ -0,0 +1,14 @@
|
||||
/*
|
||||
* Copyright (C) 2014 NVIDIA Corporation
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __SOC_TEGRA_COMMON_H__
|
||||
#define __SOC_TEGRA_COMMON_H__
|
||||
|
||||
bool soc_is_tegra(void);
|
||||
|
||||
#endif /* __SOC_TEGRA_COMMON_H__ */
|
Loading…
Reference in New Issue
Block a user