1/* 2 * Copyright (C) 2014 NVIDIA CORPORATION. All rights reserved. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License version 2 as 6 * published by the Free Software Foundation. 7 */ 8 9#ifndef MEMORY_TEGRA_MC_H 10#define MEMORY_TEGRA_MC_H 11 12#include <linux/io.h> 13#include <linux/types.h> 14 15#include <soc/tegra/mc.h> 16 17static inline u32 mc_readl(struct tegra_mc *mc, unsigned long offset) 18{ 19 return readl(mc->regs + offset); 20} 21 22static inline void mc_writel(struct tegra_mc *mc, u32 value, 23 unsigned long offset) 24{ 25 writel(value, mc->regs + offset); 26} 27 28#ifdef CONFIG_ARCH_TEGRA_3x_SOC 29extern const struct tegra_mc_soc tegra30_mc_soc; 30#endif 31 32#ifdef CONFIG_ARCH_TEGRA_114_SOC 33extern const struct tegra_mc_soc tegra114_mc_soc; 34#endif 35 36#ifdef CONFIG_ARCH_TEGRA_124_SOC 37extern const struct tegra_mc_soc tegra124_mc_soc; 38#endif 39 40#ifdef CONFIG_ARCH_TEGRA_132_SOC 41extern const struct tegra_mc_soc tegra132_mc_soc; 42#endif 43 44#ifdef CONFIG_ARCH_TEGRA_210_SOC 45extern const struct tegra_mc_soc tegra210_mc_soc; 46#endif 47 48#endif /* MEMORY_TEGRA_MC_H */ 49