Home
last modified time | relevance | path

Searched full:ahub (Results 1 – 25 of 42) sorted by relevance

12

/Linux-v5.15/sound/soc/tegra/
Dtegra30_ahub.c3 * tegra30_ahub.c - Tegra30 AHUB driver
21 #define DRV_NAME "tegra30-ahub"
23 static struct tegra30_ahub *ahub; variable
27 regmap_write(ahub->regmap_apbif, reg, val); in tegra30_apbif_write()
34 regmap_read(ahub->regmap_apbif, reg, &val); in tegra30_apbif_read()
40 regmap_write(ahub->regmap_ahub, reg, val); in tegra30_audio_write()
45 regcache_cache_only(ahub->regmap_apbif, true); in tegra30_ahub_runtime_suspend()
46 regcache_cache_only(ahub->regmap_ahub, true); in tegra30_ahub_runtime_suspend()
48 clk_bulk_disable_unprepare(ahub->nclocks, ahub->clocks); in tegra30_ahub_runtime_suspend()
68 ret = reset_control_bulk_assert(ahub->nresets, ahub->resets); in tegra30_ahub_runtime_resume()
[all …]
Dtegra210_ahub.c3 // tegra210_ahub.c - Tegra210 AHUB driver
21 struct tegra_ahub *ahub = snd_soc_component_get_drvdata(cmpnt); in tegra_ahub_get_value_enum() local
29 for (i = 0; i < ahub->soc_data->reg_count; i++) { in tegra_ahub_get_value_enum()
34 reg_val &= ahub->soc_data->mask[i]; in tegra_ahub_get_value_enum()
58 struct tegra_ahub *ahub = snd_soc_component_get_drvdata(cmpnt); in tegra_ahub_put_value_enum() local
81 for (i = 0; i < ahub->soc_data->reg_count; i++) { in tegra_ahub_put_value_enum()
84 update[i].mask = ahub->soc_data->mask[i]; in tegra_ahub_put_value_enum()
561 { .compatible = "nvidia,tegra210-ahub", .data = &soc_data_tegra210 },
562 { .compatible = "nvidia,tegra186-ahub", .data = &soc_data_tegra186 },
569 struct tegra_ahub *ahub = dev_get_drvdata(dev); in tegra_ahub_runtime_suspend() local
[all …]
DKconfig46 tristate "Tegra30 AHUB module"
48 Say Y or M if you want to add support for the Tegra30 AHUB module.
61 tristate "Tegra210 AHUB module"
63 Config to enable Audio Hub (AHUB) module, which comprises of a
66 AHUB.
67 Say Y or M if you want to add support for Tegra210 AHUB module.
104 Audio Hub (AHUB). Each ADMA channel that sends/receives data to/
105 from AHUB must interface through an ADMAIF channel. ADMA channel
106 sending data to AHUB pairs with an ADMAIF Tx channel, where as
107 ADMA channel receiving data from AHUB pairs with an ADMAIF Rx
DMakefile9 snd-soc-tegra30-ahub-objs := tegra30_ahub.o
11 snd-soc-tegra210-ahub-objs := tegra210_ahub.o
22 obj-$(CONFIG_SND_SOC_TEGRA30_AHUB) += snd-soc-tegra30-ahub.o
25 obj-$(CONFIG_SND_SOC_TEGRA210_AHUB) += snd-soc-tegra210-ahub.o
Dtegra30_ahub.h3 * tegra30_ahub.h - Definitions for Tegra30 AHUB driver
11 /* Fields in *_CIF_RX/TX_CTRL; used by AHUB FIFOs, and all other audio modules */
403 * AHUB: Audio Hub; a cross-bar switch between the audio devices: DMA FIFOs,
405 * XBAR: The core cross-bar component of the AHUB.
503 * - More units connected to the AHUB, so that tegra30_ahub_[rt]xcif
505 * the AHUB routing registers.
Dtegra210_ahub.h3 * tegra210_ahub.h - TEGRA210 AHUB
Dtegra30_i2s.c433 "nvidia,ahub-cif-ids", cif_ids, in tegra30_i2s_platform_probe()
/Linux-v5.15/Documentation/devicetree/bindings/sound/
Dnvidia,tegra210-ahub.yaml4 $id: http://devicetree.org/schemas/sound/nvidia,tegra210-ahub.yaml#
7 title: Tegra210 AHUB Device Tree Bindings
10 The Audio Hub (AHUB) comprises a collection of hardware accelerators
22 pattern: "^ahub@[0-9a-f]*$"
27 - nvidia,tegra210-ahub
28 - nvidia,tegra186-ahub
30 - const: nvidia,tegra194-ahub
31 - const: nvidia,tegra186-ahub
40 const: ahub
62 Contains list of ACIF (Audio CIF) port nodes for AHUB (Audio Hub).
[all …]
Dnvidia,tegra30-ahub.txt1 NVIDIA Tegra30 AHUB (Audio Hub)
4 - compatible : For Tegra30, must contain "nvidia,tegra30-ahub". For Tegra114,
5 must contain "nvidia,tegra114-ahub". For Tegra124, must contain
6 "nvidia,tegra124-ahub". Otherwise, must contain "nvidia,<chip>-ahub",
9 the AHUB's register blocks.
10 - Tegra30 requires 2 entries, for the APBIF and AHUB/AUDIO register blocks.
12 - interrupts : Should contain AHUB interrupt
58 AHUB client modules need to specify the IDs of their CIFs (Client InterFaces).
59 For RX CIFs, the numbers indicate the register number within AHUB routing
61 For TX CIFs, the numbers indicate the bit position within the AHUB routing
[all …]
Dnvidia,tegra30-i2s.txt15 - nvidia,ahub-cif-ids : The list of AHUB CIF IDs for this port, rx (playback)
16 first, tx (capture) second. See nvidia,tegra30-ahub.txt for values.
23 nvidia,ahub-cif-ids = <4 4>;
Dnvidia,tegra210-admaif.yaml10 ADMAIF is the interface between ADMA and AHUB. Each ADMA channel
11 that sends/receives data to/from AHUB must interface through an
12 ADMAIF channel. ADMA channel sending data to AHUB pairs with ADMAIF
13 Tx channel and ADMA channel receiving data from AHUB pairs with
46 in AHUB (Audio Hub). Each port is capable of data transfers in
Dnvidia,tegra-audio-graph-card.yaml85 // The ports are defined for AHUB and its child devices.
86 ahub@702d0800 {
87 compatible = "nvidia,tegra210-ahub";
90 clock-names = "ahub";
Dnvidia,tegra210-i2s.yaml41 modules in AHUB. The Tegra I2S driver sets this clock rate as
83 corresponding AHUB (Audio Hub) ACIF port.
Dnvidia,tegra186-dspk.yaml66 corresponding AHUB (Audio Hub) ACIF port.
Dnvidia,tegra210-dmic.yaml67 corresponding AHUB (Audio Hub) ACIF port.
/Linux-v5.15/arch/arm/boot/dts/
Dtegra114.dtsi548 ahub@70080000 {
549 compatible = "nvidia,tegra114-ahub";
594 nvidia,ahub-cif-ids = <4 4>;
604 nvidia,ahub-cif-ids = <5 5>;
614 nvidia,ahub-cif-ids = <6 6>;
624 nvidia,ahub-cif-ids = <7 7>;
634 nvidia,ahub-cif-ids = <8 8>;
Dtegra30.dtsi833 ahub@70080000 {
834 compatible = "nvidia,tegra30-ahub";
868 nvidia,ahub-cif-ids = <4 4>;
878 nvidia,ahub-cif-ids = <5 5>;
888 nvidia,ahub-cif-ids = <6 6>;
898 nvidia,ahub-cif-ids = <7 7>;
908 nvidia,ahub-cif-ids = <8 8>;
Dtegra124.dtsi978 ahub@70300000 {
979 compatible = "nvidia,tegra124-ahub";
1033 nvidia,ahub-cif-ids = <4 4>;
1043 nvidia,ahub-cif-ids = <5 5>;
1053 nvidia,ahub-cif-ids = <6 6>;
1063 nvidia,ahub-cif-ids = <7 7>;
1073 nvidia,ahub-cif-ids = <8 8>;
/Linux-v5.15/arch/arm64/boot/dts/nvidia/
Dtegra132.dtsi1001 ahub@70300000 {
1002 compatible = "nvidia,tegra124-ahub";
1056 nvidia,ahub-cif-ids = <4 4>;
1067 nvidia,ahub-cif-ids = <5 5>;
1078 nvidia,ahub-cif-ids = <6 6>;
1089 nvidia,ahub-cif-ids = <7 7>;
1100 nvidia,ahub-cif-ids = <8 8>;
Dtegra210-p2371-2180.dts130 ahub@702d0800 {
Dtegra194.dtsi145 tegra_ahub: ahub@2900800 {
146 compatible = "nvidia,tegra194-ahub",
147 "nvidia,tegra186-ahub";
150 clock-names = "ahub";
Dtegra186.dtsi144 tegra_ahub: ahub@2900800 {
145 compatible = "nvidia,tegra186-ahub";
148 clock-names = "ahub";
Dtegra210.dtsi1420 tegra_ahub: ahub@702d0800 {
1421 compatible = "nvidia,tegra210-ahub";
1424 clock-names = "ahub";
Dtegra194-p3509-0000.dtsi19 ahub@2900800 {
/Linux-v5.15/drivers/dma/
Dtegra210-adma.c78 * @ch_req_tx_shift: Register offset for AHUB transmit channel select.
79 * @ch_req_rx_shift: Register offset for AHUB receive channel select.
752 dev_err(dev, "ahub clk_enable failed: %d\n", ret); in tegra_adma_runtime_resume()
846 dev_err(&pdev->dev, "Error: Missing ahub controller clock\n"); in tegra_adma_probe()

12