linux/include/dt-bindings
Thierry Reding 8918465163 memory: Add NVIDIA Tegra memory controller support
The memory controller on NVIDIA Tegra exposes various knobs that can be
used to tune the behaviour of the clients attached to it.

Currently this driver sets up the latency allowance registers to the HW
defaults. Eventually an API should be exported by this driver (via a
custom API or a generic subsystem) to allow clients to register latency
requirements.

This driver also registers an IOMMU (SMMU) that's implemented by the
memory controller. It is supported on Tegra30, Tegra114 and Tegra124
currently. Tegra20 has a GART instead.

The Tegra SMMU operates on memory clients and SWGROUPs. A memory client
is a unidirectional, special-purpose DMA master. A SWGROUP represents a
set of memory clients that form a logical functional unit corresponding
to a single device. Typically a device has two clients: one client for
read transactions and one client for write transactions, but there are
also devices that have only read clients, but many of them (such as the
display controllers).

Because there is no 1:1 relationship between memory clients and devices
the driver keeps a table of memory clients and the SWGROUPs that they
belong to per SoC. Note that this is an exception and due to the fact
that the SMMU is tightly integrated with the rest of the Tegra SoC. The
use of these tables is discouraged in drivers for generic IOMMU devices
such as the ARM SMMU because the same IOMMU could be used in any number
of SoCs and keeping such tables for each SoC would not scale.

Acked-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2014-12-04 16:11:47 +01:00
..
clk Merge branch 'for-v3.16/ti-clk-drv' of github.com:t-kristo/linux-pm into clk-next 2014-06-10 16:53:25 -07:00
clock clk: tegra: Implement memory-controller clock 2014-11-26 09:43:23 +01:00
dma dmaengine: add device tree binding documentation for the nbpfaxi driver 2014-08-04 13:27:35 +05:30
gpio ARM: tegra: add port FF to GPIO IDs 2013-12-16 14:09:16 -07:00
input Input: drv260x - add TI drv260x haptics driver 2014-08-19 22:19:28 -07:00
interrupt-controller ARM: dt: create a DT header for the GIC 2013-04-05 12:23:24 -06:00
memory memory: Add NVIDIA Tegra memory controller support 2014-12-04 16:11:47 +01:00
mfd == Changes to existing drivers == 2014-08-07 17:17:39 -07:00
phy phy: miphy365x: Add MiPHY365x header file for DT x Driver defines 2014-07-22 12:23:44 +05:30
pinctrl pinctrl: at91: add drive strength configuration 2014-09-05 10:32:06 +02:00
pwm pwm: Add PWM polarity flag macro for DT 2013-09-03 13:08:09 +02:00
reset clk: qcom: Add support for APQ8064 multimedia clocks 2014-07-15 16:39:03 -07:00
reset-controller driver: reset: sti: add keyscan for stih416 2014-05-21 14:27:05 +02:00
soc soc: qcom: Add device tree binding for GSBI 2014-05-23 11:38:53 -05:00
sound ASoC: cs35l32: Add support for CS35L32 Boosted Amplifier 2014-08-16 17:03:22 -05:00
spmi spmi: Linux driver framework for SPMI 2014-02-15 11:55:28 -08:00
thermal thermal: introduce device tree parser 2013-12-04 09:31:34 -04:00