193c9d23a0
Align compatible strings for several IP blocks present on Tegra chips with the latest doctrine from the DT maintainers: http://marc.info/?l=devicetree&m=142255654213019&w=2 The primary objective here is to avoid checkpatch warnings, per: http://marc.info/?l=linux-tegra&m=142201349727836&w=2 DT binding text files have been updated for the following IP blocks: - PCIe - SOR - SoC timers - AHB "gizmo" - APB_MISC - pinmux control - UART - PWM - I2C - SPI - RTC - PMC - eFuse - AHCI - HDA - XUSB_PADCTRL - SDHCI - SOC_THERM - AHUB - I2S - EHCI - USB PHY N.B. The nvidia,tegra20-timer compatible string is removed from the nvidia,tegra30-timer.txt documentation file because it's already mentioned in the nvidia,tegra20-timer.txt documentation file. This second version takes into account the following requests from Rob Herring <robherring2@gmail.com>: - Per-IP block patches have been combined into a single patch - Explicit documentation about which compatible strings are actually matched by the driver has been removed. In its place is implicit documentation that loosely follows Rob's prescribed format: "Must contain '"nvidia,<chip>-pcie", "nvidia,tegra20-pcie"' where <chip> is tegra30, tegra132, ..." [...] "You should attempt to document known values of <chip> if you use it" Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: Alexandre Courbot <gnurou@gmail.com> Cc: Dylan Reid <dgreid@chromium.org> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Ian Campbell <ijc+devicetree@hellion.org.uk> Cc: Jingchang Lu <jingchang.lu@freescale.com> Cc: John Crispin <blogic@openwrt.org> Cc: Kumar Gala <galak@codeaurora.org> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Mikko Perttunen <mperttunen@nvidia.com> Cc: Murali Karicheri <m-karicheri2@ti.com> Cc: Paul Walmsley <pwalmsley@nvidia.com> Cc: Pawel Moll <pawel.moll@arm.com> Cc: Peter De Schrijver <pdeschrijver@nvidia.com> Cc: Peter Hurley <peter@hurleysoftware.com> Cc: Sean Paul <seanpaul@chromium.org> Cc: Stephen Warren <swarren@wwwdotorg.org> Cc: Takashi Iwai <tiwai@suse.de> Cc: Tejun Heo <tj@kernel.org> Cc: "Terje Bergström" <tbergstrom@nvidia.com> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: Tuomas Tynkkynen <ttynkkynen@nvidia.com> Cc: Wolfram Sang <wsa@the-dreams.de> Cc: Zhang Rui <rui.zhang@intel.com> Cc: dri-devel@lists.freedesktop.org Cc: linux-i2c@vger.kernel.org Cc: linux-kernel@vger.kernel.org Cc: linux-pci@vger.kernel.org Cc: linux-pm@vger.kernel.org Cc: linux-pwm@vger.kernel.org Cc: linux-tegra@vger.kernel.org Acked-by: Eduardo Valentin <edubezval@gmail.com> Signed-off-by: Rob Herring <robh@kernel.org>
89 lines
2.9 KiB
Plaintext
89 lines
2.9 KiB
Plaintext
NVIDIA Tegra30 AHUB (Audio Hub)
|
|
|
|
Required properties:
|
|
- compatible : For Tegra30, must contain "nvidia,tegra30-ahub". For Tegra114,
|
|
must contain "nvidia,tegra114-ahub". For Tegra124, must contain
|
|
"nvidia,tegra124-ahub". Otherwise, must contain "nvidia,<chip>-ahub",
|
|
plus at least one of the above, where <chip> is tegra132.
|
|
- reg : Should contain the register physical address and length for each of
|
|
the AHUB's register blocks.
|
|
- Tegra30 requires 2 entries, for the APBIF and AHUB/AUDIO register blocks.
|
|
- Tegra114 requires an additional entry, for the APBIF2 register block.
|
|
- interrupts : Should contain AHUB interrupt
|
|
- clocks : Must contain an entry for each entry in clock-names.
|
|
See ../clocks/clock-bindings.txt for details.
|
|
- clock-names : Must include the following entries:
|
|
- d_audio
|
|
- apbif
|
|
- resets : Must contain an entry for each entry in reset-names.
|
|
See ../reset/reset.txt for details.
|
|
- reset-names : Must include the following entries:
|
|
Tegra30 and later:
|
|
- d_audio
|
|
- apbif
|
|
- i2s0
|
|
- i2s1
|
|
- i2s2
|
|
- i2s3
|
|
- i2s4
|
|
- dam0
|
|
- dam1
|
|
- dam2
|
|
- spdif
|
|
Tegra114 and later additionally require:
|
|
- amx
|
|
- adx
|
|
Tegra124 and later additionally require:
|
|
- amx1
|
|
- adx1
|
|
- afc0
|
|
- afc1
|
|
- afc2
|
|
- afc3
|
|
- afc4
|
|
- afc5
|
|
- ranges : The bus address mapping for the configlink register bus.
|
|
Can be empty since the mapping is 1:1.
|
|
- dmas : Must contain an entry for each entry in clock-names.
|
|
See ../dma/dma.txt for details.
|
|
- dma-names : Must include the following entries:
|
|
- rx0 .. rx<n>
|
|
- tx0 .. tx<n>
|
|
... where n is:
|
|
Tegra30: 3
|
|
Tegra114, Tegra124: 9
|
|
- #address-cells : For the configlink bus. Should be <1>;
|
|
- #size-cells : For the configlink bus. Should be <1>.
|
|
|
|
AHUB client modules need to specify the IDs of their CIFs (Client InterFaces).
|
|
For RX CIFs, the numbers indicate the register number within AHUB routing
|
|
register space (APBIF 0..3 RX, I2S 0..5 RX, DAM 0..2 RX 0..1, SPDIF RX 0..1).
|
|
For TX CIFs, the numbers indicate the bit position within the AHUB routing
|
|
registers (APBIF 0..3 TX, I2S 0..5 TX, DAM 0..2 TX, SPDIF TX 0..1).
|
|
|
|
Example:
|
|
|
|
ahub@70080000 {
|
|
compatible = "nvidia,tegra30-ahub";
|
|
reg = <0x70080000 0x200 0x70080200 0x100>;
|
|
interrupts = < 0 103 0x04 >;
|
|
nvidia,dma-request-selector = <&apbdma 1>;
|
|
clocks = <&tegra_car 106>, <&tegra_car 107>;
|
|
clock-names = "d_audio", "apbif";
|
|
resets = <&tegra_car 106>, <&tegra_car 107>, <&tegra_car 30>,
|
|
<&tegra_car 11>, <&tegra_car 18>, <&tegra_car 101>,
|
|
<&tegra_car 102>, <&tegra_car 108>, <&tegra_car 109>,
|
|
<&tegra_car 110>, <&tegra_car 10>;
|
|
reset-names = "d_audio", "apbif", "i2s0", "i2s1", "i2s2",
|
|
"i2s3", "i2s4", "dam0", "dam1", "dam2",
|
|
"spdif";
|
|
dmas = <&apbdma 1>, <&apbdma 1>;
|
|
<&apbdma 2>, <&apbdma 2>;
|
|
<&apbdma 3>, <&apbdma 3>;
|
|
<&apbdma 4>, <&apbdma 4>;
|
|
dma-names = "rx0", "tx0", "rx1", "tx1", "rx2", "tx2", "rx3", "tx3";
|
|
ranges;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
};
|