.. | .. |
---|
1 | 1 | NVIDIA Tegra20 MC(Memory Controller) |
---|
2 | 2 | |
---|
3 | 3 | Required properties: |
---|
4 | | -- compatible : "nvidia,tegra20-mc" |
---|
5 | | -- reg : Should contain 2 register ranges(address and length); see the |
---|
6 | | - example below. Note that the MC registers are interleaved with the |
---|
7 | | - GART registers, and hence must be represented as multiple ranges. |
---|
| 4 | +- compatible : "nvidia,tegra20-mc-gart" |
---|
| 5 | +- reg : Should contain 2 register ranges: physical base address and length of |
---|
| 6 | + the controller's registers and the GART aperture respectively. |
---|
| 7 | +- clocks: Must contain an entry for each entry in clock-names. |
---|
| 8 | + See ../clocks/clock-bindings.txt for details. |
---|
| 9 | +- clock-names: Must include the following entries: |
---|
| 10 | + - mc: the module's clock input |
---|
8 | 11 | - interrupts : Should contain MC General interrupt. |
---|
9 | 12 | - #reset-cells : Should be 1. This cell represents memory client module ID. |
---|
10 | 13 | The assignments may be found in header file <dt-bindings/memory/tegra20-mc.h> |
---|
11 | 14 | or in the TRM documentation. |
---|
| 15 | +- #iommu-cells: Should be 0. This cell represents the number of cells in an |
---|
| 16 | + IOMMU specifier needed to encode an address. GART supports only a single |
---|
| 17 | + address space that is shared by all devices, therefore no additional |
---|
| 18 | + information needed for the address encoding. |
---|
12 | 19 | |
---|
13 | 20 | Example: |
---|
14 | 21 | mc: memory-controller@7000f000 { |
---|
15 | | - compatible = "nvidia,tegra20-mc"; |
---|
16 | | - reg = <0x7000f000 0x024 |
---|
17 | | - 0x7000f03c 0x3c4>; |
---|
18 | | - interrupts = <0 77 0x04>; |
---|
| 22 | + compatible = "nvidia,tegra20-mc-gart"; |
---|
| 23 | + reg = <0x7000f000 0x400 /* controller registers */ |
---|
| 24 | + 0x58000000 0x02000000>; /* GART aperture */ |
---|
| 25 | + clocks = <&tegra_car TEGRA20_CLK_MC>; |
---|
| 26 | + clock-names = "mc"; |
---|
| 27 | + interrupts = <GIC_SPI 77 0x04>; |
---|
19 | 28 | #reset-cells = <1>; |
---|
| 29 | + #iommu-cells = <0>; |
---|
20 | 30 | }; |
---|
21 | 31 | |
---|
22 | 32 | video-codec@6001a000 { |
---|
23 | 33 | compatible = "nvidia,tegra20-vde"; |
---|
24 | 34 | ... |
---|
25 | 35 | resets = <&mc TEGRA20_MC_RESET_VDE>; |
---|
| 36 | + iommus = <&mc>; |
---|
26 | 37 | }; |
---|