Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 73a7f0a9 authored by Mikko Perttunen's avatar Mikko Perttunen Committed by Thierry Reding
Browse files

memory: tegra: Add EMC (external memory controller) driver



Implements functionality needed to change the rate of the memory bus
clock.

Signed-off-by: default avatarMikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: default avatarTomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
parent 3d9dd6fd
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -5,3 +5,13 @@ config TEGRA_MC
	help
	  This driver supports the Memory Controller (MC) hardware found on
	  NVIDIA Tegra SoCs.

config TEGRA124_EMC
	bool "NVIDIA Tegra124 External Memory Controller driver"
	default y
	depends on TEGRA_MC && ARCH_TEGRA_124_SOC
	help
	  This driver is for the External Memory Controller (EMC) found on
	  Tegra124 chips. The EMC controls the external DRAM on the board.
	  This driver is required to change memory timings / clock rate for
	  external memory.
+2 −0
Original line number Diff line number Diff line
@@ -5,3 +5,5 @@ tegra-mc-$(CONFIG_ARCH_TEGRA_114_SOC) += tegra114.o
tegra-mc-$(CONFIG_ARCH_TEGRA_124_SOC) += tegra124.o

obj-$(CONFIG_TEGRA_MC) += tegra-mc.o

obj-$(CONFIG_TEGRA124_EMC) += tegra124-emc.o
+1092 −0

File added.

Preview size limit exceeded, changes collapsed.

+19 −0
Original line number Diff line number Diff line
/*
 * 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.
 */

#ifndef __SOC_TEGRA_EMC_H__
#define __SOC_TEGRA_EMC_H__

struct tegra_emc;

int tegra_emc_prepare_timing_change(struct tegra_emc *emc,
				    unsigned long rate);
void tegra_emc_complete_timing_change(struct tegra_emc *emc,
				      unsigned long rate);

#endif /* __SOC_TEGRA_EMC_H__ */