Lines Matching defs:ahub

21 #define DRV_NAME "tegra30-ahub"
23 static struct tegra30_ahub *ahub;
27 regmap_write(ahub->regmap_apbif, reg, val);
34 regmap_read(ahub->regmap_apbif, reg, &val);
40 regmap_write(ahub->regmap_ahub, reg, val);
45 regcache_cache_only(ahub->regmap_apbif, true);
46 regcache_cache_only(ahub->regmap_ahub, true);
48 clk_disable_unprepare(ahub->clk_apbif);
49 clk_disable_unprepare(ahub->clk_d_audio);
69 ret = clk_prepare_enable(ahub->clk_d_audio);
74 ret = clk_prepare_enable(ahub->clk_apbif);
77 clk_disable(ahub->clk_d_audio);
81 regcache_cache_only(ahub->regmap_apbif, false);
82 regcache_cache_only(ahub->regmap_ahub, false);
95 channel = find_first_zero_bit(ahub->rx_usage,
100 __set_bit(channel, ahub->rx_usage);
104 *fiforeg = ahub->apbif_addr + TEGRA30_AHUB_CHANNEL_RXFIFO +
107 pm_runtime_get_sync(ahub->dev);
133 ahub->soc_data->set_audio_cif(ahub->regmap_apbif, reg, &cif_conf);
135 pm_runtime_put(ahub->dev);
146 pm_runtime_get_sync(ahub->dev);
154 pm_runtime_put(ahub->dev);
165 pm_runtime_get_sync(ahub->dev);
173 pm_runtime_put(ahub->dev);
183 __clear_bit(channel, ahub->rx_usage);
197 channel = find_first_zero_bit(ahub->tx_usage,
202 __set_bit(channel, ahub->tx_usage);
206 *fiforeg = ahub->apbif_addr + TEGRA30_AHUB_CHANNEL_TXFIFO +
209 pm_runtime_get_sync(ahub->dev);
235 ahub->soc_data->set_audio_cif(ahub->regmap_apbif, reg, &cif_conf);
237 pm_runtime_put(ahub->dev);
248 pm_runtime_get_sync(ahub->dev);
256 pm_runtime_put(ahub->dev);
267 pm_runtime_get_sync(ahub->dev);
275 pm_runtime_put(ahub->dev);
285 __clear_bit(channel, ahub->tx_usage);
297 pm_runtime_get_sync(ahub->dev);
303 pm_runtime_put(ahub->dev);
314 pm_runtime_get_sync(ahub->dev);
320 pm_runtime_put(ahub->dev);
476 .name = "ahub",
502 { .compatible = "nvidia,tegra124-ahub", .data = &soc_data_tegra124 },
503 { .compatible = "nvidia,tegra114-ahub", .data = &soc_data_tegra114 },
504 { .compatible = "nvidia,tegra30-ahub", .data = &soc_data_tegra30 },
518 if (ahub)
551 ahub = devm_kzalloc(&pdev->dev, sizeof(struct tegra30_ahub),
553 if (!ahub)
555 dev_set_drvdata(&pdev->dev, ahub);
557 ahub->soc_data = soc_data;
558 ahub->dev = &pdev->dev;
560 ahub->clk_d_audio = devm_clk_get(&pdev->dev, "d_audio");
561 if (IS_ERR(ahub->clk_d_audio)) {
562 dev_err(&pdev->dev, "Can't retrieve ahub d_audio clock\n");
563 ret = PTR_ERR(ahub->clk_d_audio);
567 ahub->clk_apbif = devm_clk_get(&pdev->dev, "apbif");
568 if (IS_ERR(ahub->clk_apbif)) {
569 dev_err(&pdev->dev, "Can't retrieve ahub apbif clock\n");
570 ret = PTR_ERR(ahub->clk_apbif);
579 ahub->apbif_addr = res0->start;
581 ahub->regmap_apbif = devm_regmap_init_mmio(&pdev->dev, regs_apbif,
583 if (IS_ERR(ahub->regmap_apbif)) {
585 ret = PTR_ERR(ahub->regmap_apbif);
588 regcache_cache_only(ahub->regmap_apbif, true);
594 ahub->regmap_ahub = devm_regmap_init_mmio(&pdev->dev, regs_ahub,
596 if (IS_ERR(ahub->regmap_ahub)) {
597 dev_err(&pdev->dev, "ahub regmap init failed\n");
598 ret = PTR_ERR(ahub->regmap_ahub);
601 regcache_cache_only(ahub->regmap_ahub, true);
622 if (!ahub)
635 regcache_mark_dirty(ahub->regmap_ahub);
636 regcache_mark_dirty(ahub->regmap_apbif);
650 ret = regcache_sync(ahub->regmap_ahub);
651 ret |= regcache_sync(ahub->regmap_apbif);